SlideShare a Scribd company logo
1 of 27
Download to read offline
Building Open Source
with Open Source
Susan Wu
Director of Technical Marketing
Midokura
About Me
§  Took the scenic drive to Open Source from proprietary software like Oracle, Citrix, Sun
§  Product marketing for container technologies like Solaris Zones, Docker
§  Plugins/Connectors for enterprise manager
§  Open Source community experience: Ubuntu, Docker, OpenStack, CloudStack, MidoNet
About Midokura
§  Global startup with about 50+ employees
§  Founders built distributed systems at Amazon and Google
§  Engineering in Barcelona, Tokyo, Tel Aviv
§  Sales and Marketing in San Francisco
§  Network Virtualization for OpenStack and Docker
§  Customers in web scale, enterprise, higher ed and service provider segments
Why Open Source
§  It’s actually a two-fold question…for Midokura
-  Why build virtualization software for networking with open source technologies
-  Why did the company open source the software
§  Today, we’re covering the first topic
-  Why we build with open source
-  And how we use open source technologies like Zookeeper and Cassandra
/* Copyright (c) 2015 Midokura SARL,All Rights Reserved. */
import Ember from 'ember';
import isValidIP4 from 'midonet-manager/utils/is-valid-ip4';
import {
 copyOpt121Route,
 createOpt121Route
} from 'midonet-manager/utils/dhcp-subnets';
import DHCPSubnetCommons from 'midonet-manager/mixins/dhcp-subnet; -commons’;
const {
 get,
 set,
 setMeta,
 Logger: {
   debug
 },
 Component
} = Ember;
export default Component.extend(DHCPSubnetsCommons, {
 selectedDevice: null,
 actions: {
   update() {
     let model;
     let networkId;
     let {
      dnsServerAddrs,
      defaultGateway,
      subnetPrefix,
      subnetLength,
      interfaceMTU,
      opt121Routes
     } = this.validateDHCPSubnet();
     model = get(this, 'model');
     networkId = get(this, 'selectedDevice').get('id');
     setMeta(model, '_networkId', networkId);
     setMeta(model, '_uuidBeforeSave', model.get('id'));
   
     
Open Source Leads in Innovation
§  Used to be imitation and commoditization to an expensive, proprietary solution
§  Now open source leads in innovation
§  Leveraging open source as building blocks speed up innovation
§  OpenStack - building an advanced Infrastructure as a service (IaaS) platform with open
source
§  Same with open source MidoNet
Cloud Networking
MidoNet	
  Topology
Intelligence at the Edge
MidoNet leverages a distributed architecture where the SDN intelligence is pushed at the edge
1. VM 1 sends a packet through the virtual network
2. MN Agent fetches the virtual topology/state
3. It simulates the packet through the virtual network
4. It installs a flow rule in the kernel at the ingress host
5. Tunnel packets to egress host
Data type drives technology used
Data type drives technology used
3. Host State 4. Flow State
Host State
Active
Inactive
Flow State
Flow IP Source
IP Destination
Port Source
Port Destination
Protocol
NAT
Router ID
Type of NAT (dst or src)
NAT Binding
Connection Tracking
+ Device ID
Can only optimize 2 out of 3
Zookeeper provides consistency
§  Suited for Consistency
§  Performance (in memory, r > w)
-  In memory: limits dataset size (backed by disk)
§  Reliable delivery
-  If a node sees an update, all will eventually
§  Total & Causal Order
-  Data is delivered in the same order it is sent
-  A message m is delivered only after all messages sent before m have been delivered
§  Not suited for high write volume
Consistency Availability Partition Tolerance Solution
Virtual Network Topology X X Zookeeper
Virtual Network State X X Zookeeper
Host State X X Zookeeper
Three Zookeeper use cases
§  Watch for Data Changes
§  Service Discovery
§  Coordination
Zookeeper tracks the changes
Zookeeper notifies subscribers
Updating changes to logical network configurations
Deploy in odd numbers for decisive vote
Leader
Service Discovery
Leader
Cassandra used for backup
§  Well suited for high write volume
§  Used in storing stateful connection tracking information like flow state and metrics
§  Chosen for availability
§  Although the agent can function in the case of Cassandra failure as flow state is stored in
memory, and so Cassandra is primarily used as backup
Consistency Availability Partition Tolerance Solution
Flow State X X Cassandra
Fault Tolerance
FAIL
w(x)ok
ok
ok
Fault Tolerance
x
x
x
Trading off Consistency
read_repair
x1
x
x
Trading off Consistency
?
Must Haves: Low Latency, High Throughput
for Network Address Translation
§  Trivial Schema Changes
-  vs. schema changes in shards
§  Flexible (good on growth mode)
Putting it all together
§  Start with a packet
§  What’s the virtual
topology?
§  Go there (you and
all other similar
packets)
Ready to Try MidoNet?
https://www.midonet.org/#quickstart

More Related Content

What's hot

OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...OpenStack
 
Apache Cassandra at the Geek2Geek Berlin
Apache Cassandra at the Geek2Geek BerlinApache Cassandra at the Geek2Geek Berlin
Apache Cassandra at the Geek2Geek BerlinChristian Johannsen
 
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...DataStax
 
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...DataStax
 
Secure deduplicaton with efficient and reliable convergent
Secure deduplicaton with  efficient and reliable   convergentSecure deduplicaton with  efficient and reliable   convergent
Secure deduplicaton with efficient and reliable convergentJayakrishnan U
 
Opening the Path to Technical Excellence
Opening the Path to Technical ExcellenceOpening the Path to Technical Excellence
Opening the Path to Technical ExcellenceNETWAYS
 
Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...javier ramirez
 
Swift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex YangSwift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex YangHui Cheng
 
Apache Cassandra @Geneva JUG 2013.02.26
Apache Cassandra @Geneva JUG 2013.02.26Apache Cassandra @Geneva JUG 2013.02.26
Apache Cassandra @Geneva JUG 2013.02.26Benoit Perroud
 
Open Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpen Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpenCity Community
 
Open Source Data Deduplication
Open Source Data DeduplicationOpen Source Data Deduplication
Open Source Data DeduplicationRedWireServices
 
Storage area network
Storage area networkStorage area network
Storage area networkNeha Agarwal
 
Cassandra Tuning - above and beyond
Cassandra Tuning - above and beyondCassandra Tuning - above and beyond
Cassandra Tuning - above and beyondMatija Gobec
 
EclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache CassandraEclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache CassandraMichaël Figuière
 
CloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter Transformation
CloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter TransformationCloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter Transformation
CloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter TransformationCloudSmartz
 
How Clarifai uses NATS and Kubernetes for Machine Learning
How Clarifai uses NATS and Kubernetes for Machine LearningHow Clarifai uses NATS and Kubernetes for Machine Learning
How Clarifai uses NATS and Kubernetes for Machine LearningApcera
 
Cassandra Day London 2015: Securing Cassandra and DataStax Enterprise
Cassandra Day London 2015: Securing Cassandra and DataStax EnterpriseCassandra Day London 2015: Securing Cassandra and DataStax Enterprise
Cassandra Day London 2015: Securing Cassandra and DataStax EnterpriseDataStax Academy
 
Cassandra architecture
Cassandra architectureCassandra architecture
Cassandra architectureT Jake Luciani
 

What's hot (20)

OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
 
Apache Cassandra at the Geek2Geek Berlin
Apache Cassandra at the Geek2Geek BerlinApache Cassandra at the Geek2Geek Berlin
Apache Cassandra at the Geek2Geek Berlin
 
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
DataStax | Best Practices for Securing DataStax Enterprise (Matt Kennedy) | C...
 
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
 
Secure deduplicaton with efficient and reliable convergent
Secure deduplicaton with  efficient and reliable   convergentSecure deduplicaton with  efficient and reliable   convergent
Secure deduplicaton with efficient and reliable convergent
 
Clustering van IT-componenten
Clustering van IT-componentenClustering van IT-componenten
Clustering van IT-componenten
 
Opening the Path to Technical Excellence
Opening the Path to Technical ExcellenceOpening the Path to Technical Excellence
Opening the Path to Technical Excellence
 
Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...
 
HazelCast
HazelCastHazelCast
HazelCast
 
Swift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex YangSwift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex Yang
 
Apache Cassandra @Geneva JUG 2013.02.26
Apache Cassandra @Geneva JUG 2013.02.26Apache Cassandra @Geneva JUG 2013.02.26
Apache Cassandra @Geneva JUG 2013.02.26
 
Open Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpen Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex Yang
 
Open Source Data Deduplication
Open Source Data DeduplicationOpen Source Data Deduplication
Open Source Data Deduplication
 
Storage area network
Storage area networkStorage area network
Storage area network
 
Cassandra Tuning - above and beyond
Cassandra Tuning - above and beyondCassandra Tuning - above and beyond
Cassandra Tuning - above and beyond
 
EclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache CassandraEclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache Cassandra
 
CloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter Transformation
CloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter TransformationCloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter Transformation
CloudSmartz Layer 2 Direct Connect [Factsheet] | Smarter Transformation
 
How Clarifai uses NATS and Kubernetes for Machine Learning
How Clarifai uses NATS and Kubernetes for Machine LearningHow Clarifai uses NATS and Kubernetes for Machine Learning
How Clarifai uses NATS and Kubernetes for Machine Learning
 
Cassandra Day London 2015: Securing Cassandra and DataStax Enterprise
Cassandra Day London 2015: Securing Cassandra and DataStax EnterpriseCassandra Day London 2015: Securing Cassandra and DataStax Enterprise
Cassandra Day London 2015: Securing Cassandra and DataStax Enterprise
 
Cassandra architecture
Cassandra architectureCassandra architecture
Cassandra architecture
 

Similar to Building Open Source with Open Source Technologies

Enterprise-Grade Networking in OpenStack
Enterprise-Grade Networking in OpenStackEnterprise-Grade Networking in OpenStack
Enterprise-Grade Networking in OpenStackMarten Hauville
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SAMeh Zaghloul
 
Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos Rahul Kumar
 
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...Cloud Native Day Tel Aviv
 
Q Con New York 2015 Presentation - Conjur
Q Con New York 2015 Presentation - ConjurQ Con New York 2015 Presentation - Conjur
Q Con New York 2015 Presentation - Conjurconjur_inc
 
IoT Story: From Edge to HDP
IoT Story: From Edge to HDPIoT Story: From Edge to HDP
IoT Story: From Edge to HDPDataWorks Summit
 
Here Be Dragons: Security Maps of the Container New World
Here Be Dragons: Security Maps of the Container New WorldHere Be Dragons: Security Maps of the Container New World
Here Be Dragons: Security Maps of the Container New WorldC4Media
 
[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking
[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking
[OpenStack Days Korea 2016] An SDN Pioneer's Vision of NetworkingOpenStack Korea Community
 
Secure SDN
Secure SDNSecure SDN
Secure SDNAPNIC
 
Disaster recovery solutions and datacentre replacements
Disaster recovery solutions and datacentre replacementsDisaster recovery solutions and datacentre replacements
Disaster recovery solutions and datacentre replacementsOVHcloud
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networkingOpenSourceIndia
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networkingsuniltomar04
 
Cloud Expo East 2013: Essential Open Source Software for Building the Open Cloud
Cloud Expo East 2013: Essential Open Source Software for Building the Open CloudCloud Expo East 2013: Essential Open Source Software for Building the Open Cloud
Cloud Expo East 2013: Essential Open Source Software for Building the Open CloudMark Hinkle
 
20150704 benchmark and user experience in sahara weiting
20150704 benchmark and user experience in sahara weiting20150704 benchmark and user experience in sahara weiting
20150704 benchmark and user experience in sahara weitingWei Ting Chen
 
2015 04 bio it world
2015 04 bio it world2015 04 bio it world
2015 04 bio it worldChris Dwan
 
2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red Hat2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red HatShawn Wells
 
HPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journeyHPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journeyPeter Clapham
 

Similar to Building Open Source with Open Source Technologies (20)

Enterprise-Grade Networking in OpenStack
Enterprise-Grade Networking in OpenStackEnterprise-Grade Networking in OpenStack
Enterprise-Grade Networking in OpenStack
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
 
Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos
 
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
 
Q Con New York 2015 Presentation - Conjur
Q Con New York 2015 Presentation - ConjurQ Con New York 2015 Presentation - Conjur
Q Con New York 2015 Presentation - Conjur
 
IoT Story: From Edge to HDP
IoT Story: From Edge to HDPIoT Story: From Edge to HDP
IoT Story: From Edge to HDP
 
Brad stack - Digital Health and Well-Being Festival
Brad stack - Digital Health and Well-Being Festival Brad stack - Digital Health and Well-Being Festival
Brad stack - Digital Health and Well-Being Festival
 
Here Be Dragons: Security Maps of the Container New World
Here Be Dragons: Security Maps of the Container New WorldHere Be Dragons: Security Maps of the Container New World
Here Be Dragons: Security Maps of the Container New World
 
[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking
[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking
[OpenStack Days Korea 2016] An SDN Pioneer's Vision of Networking
 
Secure SDN
Secure SDNSecure SDN
Secure SDN
 
Disaster recovery solutions and datacentre replacements
Disaster recovery solutions and datacentre replacementsDisaster recovery solutions and datacentre replacements
Disaster recovery solutions and datacentre replacements
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networking
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networking
 
Cloud Expo East 2013: Essential Open Source Software for Building the Open Cloud
Cloud Expo East 2013: Essential Open Source Software for Building the Open CloudCloud Expo East 2013: Essential Open Source Software for Building the Open Cloud
Cloud Expo East 2013: Essential Open Source Software for Building the Open Cloud
 
Autopilot : Securing Cloud Native Storage
Autopilot : Securing Cloud Native StorageAutopilot : Securing Cloud Native Storage
Autopilot : Securing Cloud Native Storage
 
20150704 benchmark and user experience in sahara weiting
20150704 benchmark and user experience in sahara weiting20150704 benchmark and user experience in sahara weiting
20150704 benchmark and user experience in sahara weiting
 
2015 04 bio it world
2015 04 bio it world2015 04 bio it world
2015 04 bio it world
 
2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red Hat2012-03-15 What's New at Red Hat
2012-03-15 What's New at Red Hat
 
OpenStack on SmartOS
OpenStack on SmartOSOpenStack on SmartOS
OpenStack on SmartOS
 
HPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journeyHPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journey
 

More from Susan Wu

Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-CloudInterop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-CloudSusan Wu
 
Midokura for Industry 4.0
Midokura for Industry 4.0Midokura for Industry 4.0
Midokura for Industry 4.0Susan Wu
 
Diversity in open source - CloudNow, Bitergia, Intel
Diversity in open source - CloudNow, Bitergia, IntelDiversity in open source - CloudNow, Bitergia, Intel
Diversity in open source - CloudNow, Bitergia, IntelSusan Wu
 
OpenStack: The path to cloud
OpenStack: The path to cloudOpenStack: The path to cloud
OpenStack: The path to cloudSusan Wu
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a BudgetSusan Wu
 
OpenStack: A Business Perspectives
OpenStack: A Business PerspectivesOpenStack: A Business Perspectives
OpenStack: A Business PerspectivesSusan Wu
 
Taming unruly apps with open source networking
Taming unruly apps with open source networkingTaming unruly apps with open source networking
Taming unruly apps with open source networkingSusan Wu
 
dotCloud (now Docker) Paas under the_hood
dotCloud (now Docker) Paas under the_hood dotCloud (now Docker) Paas under the_hood
dotCloud (now Docker) Paas under the_hood Susan Wu
 
Enterprise Cloud Glossary from Ubuntu
Enterprise Cloud Glossary from UbuntuEnterprise Cloud Glossary from Ubuntu
Enterprise Cloud Glossary from UbuntuSusan Wu
 

More from Susan Wu (9)

Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-CloudInterop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
 
Midokura for Industry 4.0
Midokura for Industry 4.0Midokura for Industry 4.0
Midokura for Industry 4.0
 
Diversity in open source - CloudNow, Bitergia, Intel
Diversity in open source - CloudNow, Bitergia, IntelDiversity in open source - CloudNow, Bitergia, Intel
Diversity in open source - CloudNow, Bitergia, Intel
 
OpenStack: The path to cloud
OpenStack: The path to cloudOpenStack: The path to cloud
OpenStack: The path to cloud
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a Budget
 
OpenStack: A Business Perspectives
OpenStack: A Business PerspectivesOpenStack: A Business Perspectives
OpenStack: A Business Perspectives
 
Taming unruly apps with open source networking
Taming unruly apps with open source networkingTaming unruly apps with open source networking
Taming unruly apps with open source networking
 
dotCloud (now Docker) Paas under the_hood
dotCloud (now Docker) Paas under the_hood dotCloud (now Docker) Paas under the_hood
dotCloud (now Docker) Paas under the_hood
 
Enterprise Cloud Glossary from Ubuntu
Enterprise Cloud Glossary from UbuntuEnterprise Cloud Glossary from Ubuntu
Enterprise Cloud Glossary from Ubuntu
 

Recently uploaded

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Recently uploaded (20)

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

Building Open Source with Open Source Technologies

  • 1. Building Open Source with Open Source Susan Wu Director of Technical Marketing Midokura
  • 2. About Me §  Took the scenic drive to Open Source from proprietary software like Oracle, Citrix, Sun §  Product marketing for container technologies like Solaris Zones, Docker §  Plugins/Connectors for enterprise manager §  Open Source community experience: Ubuntu, Docker, OpenStack, CloudStack, MidoNet
  • 3. About Midokura §  Global startup with about 50+ employees §  Founders built distributed systems at Amazon and Google §  Engineering in Barcelona, Tokyo, Tel Aviv §  Sales and Marketing in San Francisco §  Network Virtualization for OpenStack and Docker §  Customers in web scale, enterprise, higher ed and service provider segments
  • 4. Why Open Source §  It’s actually a two-fold question…for Midokura -  Why build virtualization software for networking with open source technologies -  Why did the company open source the software §  Today, we’re covering the first topic -  Why we build with open source -  And how we use open source technologies like Zookeeper and Cassandra
  • 5. /* Copyright (c) 2015 Midokura SARL,All Rights Reserved. */ import Ember from 'ember'; import isValidIP4 from 'midonet-manager/utils/is-valid-ip4'; import {  copyOpt121Route,  createOpt121Route } from 'midonet-manager/utils/dhcp-subnets'; import DHCPSubnetCommons from 'midonet-manager/mixins/dhcp-subnet; -commons’; const {  get,  set,  setMeta,  Logger: {    debug  },  Component } = Ember; export default Component.extend(DHCPSubnetsCommons, {  selectedDevice: null,  actions: {    update() {      let model;      let networkId;      let {       dnsServerAddrs,       defaultGateway,       subnetPrefix,       subnetLength,       interfaceMTU,       opt121Routes      } = this.validateDHCPSubnet();      model = get(this, 'model');      networkId = get(this, 'selectedDevice').get('id');      setMeta(model, '_networkId', networkId);      setMeta(model, '_uuidBeforeSave', model.get('id'));          
  • 6. Open Source Leads in Innovation §  Used to be imitation and commoditization to an expensive, proprietary solution §  Now open source leads in innovation §  Leveraging open source as building blocks speed up innovation §  OpenStack - building an advanced Infrastructure as a service (IaaS) platform with open source §  Same with open source MidoNet
  • 7.
  • 10. Intelligence at the Edge MidoNet leverages a distributed architecture where the SDN intelligence is pushed at the edge 1. VM 1 sends a packet through the virtual network 2. MN Agent fetches the virtual topology/state 3. It simulates the packet through the virtual network 4. It installs a flow rule in the kernel at the ingress host 5. Tunnel packets to egress host
  • 11. Data type drives technology used
  • 12. Data type drives technology used 3. Host State 4. Flow State Host State Active Inactive Flow State Flow IP Source IP Destination Port Source Port Destination Protocol NAT Router ID Type of NAT (dst or src) NAT Binding Connection Tracking + Device ID
  • 13. Can only optimize 2 out of 3
  • 14. Zookeeper provides consistency §  Suited for Consistency §  Performance (in memory, r > w) -  In memory: limits dataset size (backed by disk) §  Reliable delivery -  If a node sees an update, all will eventually §  Total & Causal Order -  Data is delivered in the same order it is sent -  A message m is delivered only after all messages sent before m have been delivered §  Not suited for high write volume Consistency Availability Partition Tolerance Solution Virtual Network Topology X X Zookeeper Virtual Network State X X Zookeeper Host State X X Zookeeper
  • 15. Three Zookeeper use cases §  Watch for Data Changes §  Service Discovery §  Coordination
  • 17. Zookeeper notifies subscribers Updating changes to logical network configurations
  • 18. Deploy in odd numbers for decisive vote Leader
  • 20. Cassandra used for backup §  Well suited for high write volume §  Used in storing stateful connection tracking information like flow state and metrics §  Chosen for availability §  Although the agent can function in the case of Cassandra failure as flow state is stored in memory, and so Cassandra is primarily used as backup Consistency Availability Partition Tolerance Solution Flow State X X Cassandra
  • 25. Must Haves: Low Latency, High Throughput for Network Address Translation §  Trivial Schema Changes -  vs. schema changes in shards §  Flexible (good on growth mode)
  • 26. Putting it all together §  Start with a packet §  What’s the virtual topology? §  Go there (you and all other similar packets)
  • 27. Ready to Try MidoNet? https://www.midonet.org/#quickstart