SlideShare a Scribd company logo
1 of 40
Download to read offline
How to deal second interface
service discovery and load balance
in Kubernetes
李孟澤@NUTC
1
Agenda
● Why need multiple interface
● What is CNI
● Does CNI support multiple interface
○ Multus
○ Genie
● Challenge
● What to do
● How to do
● Demo
2
Why need multiple interface
● Deploying Network Functions (NFV) as pods. This requires at least two
interfaces.
○ Control Plane Interface
○ User Plane Interface
3
Why need multiple interface
4
Why need multiple interface
5
Why need multiple interface
● Openstack deployments typically use multiple networks for security and
QoS isolation (e.g. storage) purposes
6
Why need multiple interface
7
Why need multiple interface
8
● If we need a high throughput and low latency network
○ SR-IOV
○ DPDK
○ DRMA
Why need multiple interface
9
Why need multiple interface
10
Why need multiple interface
11
What is CNI
12
What is CNI
13
A lot of plugin provide many basic functions in the CNI project,We can
combine these basic functions and write new CNI
● bridge
● host-device
● ipvlan
● macvlan
● ptp
● vlan
● loopback
What is CNI
14
Does CNI supprot multiple interface
15
In traditional CNI based networking the orchestrator (Kubernetes)
allows to use a single CNI plugin to cater container networking.
● Flannel
● Calico
● Weave
● Canal
● e.t.c..
Does CNI supprot multiple interface
16
Multiple interface support for containers has become a prime
requirement in the coming versions
● Proposals to support multiple network interfaces are being
discussed currently in the community
○ Multus
○ Genie
○ damn
○ Knitter
CNI-Multus
17
● Multus is a latin word for "Multi”
● Created by Intel
● Provides multiple network interface in container
● Contact between the container runtime and other plugins
CNI-Genie
18
● Created by Intel
● Provides multiple network interface in container
● Contact between the container runtime and other plugins
CNI Genie
CNI-Multus/Genie
19
CNI-Multus/Genie
20
Challenge
21
● call service by FQDN
○ default.svc.cluster.local
Challenge
22
Challenge
23
Challenge
24
Challenge
25
Challenge
26
Challenge
27
Challenge
28
Challenge
29
Challenge
30
● However, there is no Service and Endpoint resource type for the
second network interface on Kubernetes
● Kubernetes coreDNS components cannot get related information
● Kube-proxy component has no related information and cannot
create a load balance rule.
What to do
31
● Establish a Service mechanism for the second network interface
● Establish FQDN resolution component of the second network
interface
● Establish a load balancing mechanism for the second network
interface
How to do
32
● Establish a Service mechanism for the second network interface
○ Record the IP of the Pod second network interface
● Establish FQDN resolution component of the second network
interface
○ Find a tool that can support DNS resolution
● Establish a load balancing mechanism for the second network
interface
○ Provide load balancing algorithm
■ Round Robin
■ Random
■ Resource
■ etc.
How to do-Record the IP of the Pod second network interface
33
The Linker Network provides an open source project that allows
users to create a second network interface and assign IP the Pod.
How to do-Record the IP of the Pod second network interface
34
So we may manage the IP of all the second network interfaces just
like the IPAM of CNI.
At the same time,we can manage all Pod network traffic through
OpenvSwitch (OVS)
Implement policy routing using Software Defined Networking (SDN),
such as Kubernetes Network Policy
How to do-Record the IP of the Pod second network interface
35
But there are a lot of IPs to manage, and we need to record which
Deployment has these IPs
We need a place to store this information
● etcd
● zookeeper
● mySQL
● etc.
How to do-Find a tool that can support DNS resolution
36
DNS Server can help us resolve FQDN data of the second network
interface
For example, coreDNS helps Kubernetes Service resolve FQDN
Which DNS Servers are suitable and can help us?
● bind9
● coredns
● PowerDNS
● etc.
Now we have a place to store the Deployment IP data,as well as a
DNS resolution tool.What is missing?
Of course, Kubernetes' LoadBalance method is still missing.
Then randomly throw the Deployment Pod IP that does not become
a Random mode,right?
In other words... if there is a sequence of throwing Deployment Pod
IP is not RR Mode
How to do-Provide load balancing algorithm
37
If you can assign or obtain the IP of the second network interface,
you will be able to provide service discovery of the second network
interface.
As long as you can let Kubernetes Pod find your DNS Servers, you
can do anything about FQDN.
How to do-summary
38
DEMO
39
40
Thank you for your attention

More Related Content

What's hot

The Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco CloudThe Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco Cloud
Marco Rodrigues
 

What's hot (20)

Deep dive into Kubernetes Networking
Deep dive into Kubernetes NetworkingDeep dive into Kubernetes Networking
Deep dive into Kubernetes Networking
 
Overview of kubernetes network functions
Overview of kubernetes network functionsOverview of kubernetes network functions
Overview of kubernetes network functions
 
Kubernetes Networking 101
Kubernetes Networking 101Kubernetes Networking 101
Kubernetes Networking 101
 
Karpenter
KarpenterKarpenter
Karpenter
 
OpenShift Virtualization - VM and OS Image Lifecycle
OpenShift Virtualization - VM and OS Image LifecycleOpenShift Virtualization - VM and OS Image Lifecycle
OpenShift Virtualization - VM and OS Image Lifecycle
 
삼성전자 5G Core CNF를 위한 클라우드 여정 이야기 - 최우형 AWS 솔루션즈 아키텍트 / 구동영 프로, 삼성전자 :: AWS Su...
삼성전자 5G Core CNF를 위한 클라우드 여정 이야기 - 최우형 AWS 솔루션즈 아키텍트 / 구동영 프로, 삼성전자 :: AWS Su...삼성전자 5G Core CNF를 위한 클라우드 여정 이야기 - 최우형 AWS 솔루션즈 아키텍트 / 구동영 프로, 삼성전자 :: AWS Su...
삼성전자 5G Core CNF를 위한 클라우드 여정 이야기 - 최우형 AWS 솔루션즈 아키텍트 / 구동영 프로, 삼성전자 :: AWS Su...
 
Openstack zun,virtual kubelet
Openstack zun,virtual kubeletOpenstack zun,virtual kubelet
Openstack zun,virtual kubelet
 
Spring Native and Spring AOT
Spring Native and Spring AOTSpring Native and Spring AOT
Spring Native and Spring AOT
 
Issues of OpenStack multi-region mode
Issues of OpenStack multi-region modeIssues of OpenStack multi-region mode
Issues of OpenStack multi-region mode
 
Efficient Kubernetes scaling using Karpenter
Efficient Kubernetes scaling using KarpenterEfficient Kubernetes scaling using Karpenter
Efficient Kubernetes scaling using Karpenter
 
The Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco CloudThe Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco Cloud
 
OpenShift Kubernetes Native Infrastructure for 5GC and Telco Edge Cloud
OpenShift  Kubernetes Native Infrastructure for 5GC and Telco Edge Cloud OpenShift  Kubernetes Native Infrastructure for 5GC and Telco Edge Cloud
OpenShift Kubernetes Native Infrastructure for 5GC and Telco Edge Cloud
 
Secure container: Kata container and gVisor
Secure container: Kata container and gVisorSecure container: Kata container and gVisor
Secure container: Kata container and gVisor
 
What Linux can learn from Solaris performance and vice-versa
What Linux can learn from Solaris performance and vice-versaWhat Linux can learn from Solaris performance and vice-versa
What Linux can learn from Solaris performance and vice-versa
 
OpenStack Keystone
OpenStack KeystoneOpenStack Keystone
OpenStack Keystone
 
Andes RISC-V processor solutions
Andes RISC-V processor solutionsAndes RISC-V processor solutions
Andes RISC-V processor solutions
 
Kvm virtualization platform
Kvm virtualization platformKvm virtualization platform
Kvm virtualization platform
 
Open ebs 101
Open ebs 101Open ebs 101
Open ebs 101
 
DevConf 2014 Kernel Networking Walkthrough
DevConf 2014   Kernel Networking WalkthroughDevConf 2014   Kernel Networking Walkthrough
DevConf 2014 Kernel Networking Walkthrough
 
The Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitchThe Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitch
 

Similar to How to deal second interface service discovery and load balancer in kubernetes

4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
Juraj Hantak
 

Similar to How to deal second interface service discovery and load balancer in kubernetes (20)

4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
 
Comparison of existing cni plugins for kubernetes
Comparison of existing cni plugins for kubernetesComparison of existing cni plugins for kubernetes
Comparison of existing cni plugins for kubernetes
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
 
Netflix Container Scheduling and Execution - QCon New York 2016
Netflix Container Scheduling and Execution - QCon New York 2016Netflix Container Scheduling and Execution - QCon New York 2016
Netflix Container Scheduling and Execution - QCon New York 2016
 
Scheduling a fuller house - Talk at QCon NY 2016
Scheduling a fuller house - Talk at QCon NY 2016Scheduling a fuller house - Talk at QCon NY 2016
Scheduling a fuller house - Talk at QCon NY 2016
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
 
How OpenShift SDN helps to automate
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Kubernetes @ Squarespace: Kubernetes in the Datacenter
Kubernetes @ Squarespace: Kubernetes in the DatacenterKubernetes @ Squarespace: Kubernetes in the Datacenter
Kubernetes @ Squarespace: Kubernetes in the Datacenter
 
Service Discovery In Kubernetes
Service Discovery In KubernetesService Discovery In Kubernetes
Service Discovery In Kubernetes
 
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
BPF  & Cilium - Turning Linux into a Microservices-aware Operating SystemBPF  & Cilium - Turning Linux into a Microservices-aware Operating System
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
 
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthUSENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
 
Building a Small Datacenter
Building a Small DatacenterBuilding a Small Datacenter
Building a Small Datacenter
 
Network plugins for kubernetes
Network plugins for kubernetesNetwork plugins for kubernetes
Network plugins for kubernetes
 
Building a Small DC
Building a Small DCBuilding a Small DC
Building a Small DC
 
Kubernetes from scratch at veepee sysadmins days 2019
Kubernetes from scratch at veepee   sysadmins days 2019Kubernetes from scratch at veepee   sysadmins days 2019
Kubernetes from scratch at veepee sysadmins days 2019
 
Networking in Openstack - Neutron 101
Networking in Openstack - Neutron 101Networking in Openstack - Neutron 101
Networking in Openstack - Neutron 101
 
QNIBTerminal: Understand your datacenter by overlaying multiple information l...
QNIBTerminal: Understand your datacenter by overlaying multiple information l...QNIBTerminal: Understand your datacenter by overlaying multiple information l...
QNIBTerminal: Understand your datacenter by overlaying multiple information l...
 
Using Docker Platform to Provide Services
Using Docker Platform to Provide ServicesUsing Docker Platform to Provide Services
Using Docker Platform to Provide Services
 
Building a sdn solution for the deployment of web application stacks in docker
Building a sdn solution for the deployment of web application stacks in dockerBuilding a sdn solution for the deployment of web application stacks in docker
Building a sdn solution for the deployment of web application stacks in docker
 

Recently uploaded

DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
MayuraD1
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
jaanualu31
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 

Recently uploaded (20)

Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
 
Wadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptxWadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptx
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 

How to deal second interface service discovery and load balancer in kubernetes

  • 1. How to deal second interface service discovery and load balance in Kubernetes 李孟澤@NUTC 1
  • 2. Agenda ● Why need multiple interface ● What is CNI ● Does CNI support multiple interface ○ Multus ○ Genie ● Challenge ● What to do ● How to do ● Demo 2
  • 3. Why need multiple interface ● Deploying Network Functions (NFV) as pods. This requires at least two interfaces. ○ Control Plane Interface ○ User Plane Interface 3
  • 4. Why need multiple interface 4
  • 5. Why need multiple interface 5
  • 6. Why need multiple interface ● Openstack deployments typically use multiple networks for security and QoS isolation (e.g. storage) purposes 6
  • 7. Why need multiple interface 7
  • 8. Why need multiple interface 8 ● If we need a high throughput and low latency network ○ SR-IOV ○ DPDK ○ DRMA
  • 9. Why need multiple interface 9
  • 10. Why need multiple interface 10
  • 11. Why need multiple interface 11
  • 13. What is CNI 13 A lot of plugin provide many basic functions in the CNI project,We can combine these basic functions and write new CNI ● bridge ● host-device ● ipvlan ● macvlan ● ptp ● vlan ● loopback
  • 15. Does CNI supprot multiple interface 15 In traditional CNI based networking the orchestrator (Kubernetes) allows to use a single CNI plugin to cater container networking. ● Flannel ● Calico ● Weave ● Canal ● e.t.c..
  • 16. Does CNI supprot multiple interface 16 Multiple interface support for containers has become a prime requirement in the coming versions ● Proposals to support multiple network interfaces are being discussed currently in the community ○ Multus ○ Genie ○ damn ○ Knitter
  • 17. CNI-Multus 17 ● Multus is a latin word for "Multi” ● Created by Intel ● Provides multiple network interface in container ● Contact between the container runtime and other plugins
  • 18. CNI-Genie 18 ● Created by Intel ● Provides multiple network interface in container ● Contact between the container runtime and other plugins CNI Genie
  • 22. ● call service by FQDN ○ default.svc.cluster.local Challenge 22
  • 30. Challenge 30 ● However, there is no Service and Endpoint resource type for the second network interface on Kubernetes ● Kubernetes coreDNS components cannot get related information ● Kube-proxy component has no related information and cannot create a load balance rule.
  • 31. What to do 31 ● Establish a Service mechanism for the second network interface ● Establish FQDN resolution component of the second network interface ● Establish a load balancing mechanism for the second network interface
  • 32. How to do 32 ● Establish a Service mechanism for the second network interface ○ Record the IP of the Pod second network interface ● Establish FQDN resolution component of the second network interface ○ Find a tool that can support DNS resolution ● Establish a load balancing mechanism for the second network interface ○ Provide load balancing algorithm ■ Round Robin ■ Random ■ Resource ■ etc.
  • 33. How to do-Record the IP of the Pod second network interface 33 The Linker Network provides an open source project that allows users to create a second network interface and assign IP the Pod.
  • 34. How to do-Record the IP of the Pod second network interface 34 So we may manage the IP of all the second network interfaces just like the IPAM of CNI. At the same time,we can manage all Pod network traffic through OpenvSwitch (OVS) Implement policy routing using Software Defined Networking (SDN), such as Kubernetes Network Policy
  • 35. How to do-Record the IP of the Pod second network interface 35 But there are a lot of IPs to manage, and we need to record which Deployment has these IPs We need a place to store this information ● etcd ● zookeeper ● mySQL ● etc.
  • 36. How to do-Find a tool that can support DNS resolution 36 DNS Server can help us resolve FQDN data of the second network interface For example, coreDNS helps Kubernetes Service resolve FQDN Which DNS Servers are suitable and can help us? ● bind9 ● coredns ● PowerDNS ● etc.
  • 37. Now we have a place to store the Deployment IP data,as well as a DNS resolution tool.What is missing? Of course, Kubernetes' LoadBalance method is still missing. Then randomly throw the Deployment Pod IP that does not become a Random mode,right? In other words... if there is a sequence of throwing Deployment Pod IP is not RR Mode How to do-Provide load balancing algorithm 37
  • 38. If you can assign or obtain the IP of the second network interface, you will be able to provide service discovery of the second network interface. As long as you can let Kubernetes Pod find your DNS Servers, you can do anything about FQDN. How to do-summary 38
  • 40. 40 Thank you for your attention