OpenContrail tech doc in Japanese
1.Routing architecture and implementation
2.Service chaining architecture and implementation
3.Neutron router with OpenContrail
4.HA walk
OpenContrail tech doc in Japanese
1.Routing architecture and implementation
2.Service chaining architecture and implementation
3.Neutron router with OpenContrail
4.HA walk
OpenContrail Users Event at OpenStack Summit Paris 行ってきましたTakashi Sogabe
2014年11月にOpenStack Summit Paris 会期中に行なわれた OpenContrail Users Event に参加してきました。本スライドは、OpenContrail Day Tokyo 2014 – Autumn のライトニングトークにて発表したUsers Eventのレポートになります。
Cumulus Linux 導入事例 -ネットワークをDevOpsに統合した、エンジニアが幸せになるインフラ運用手法のご紹介-Takashi Sogabe
2014年11月13日に開催された CTC Open Platform Day で発表したスライドについて投稿します。昨今Facebook社のNetworkingに関する取り組みなどでも大きく話題になっている Disaggregation の重要性について、ソフトウェアエンジニア及びインフラエンジニアの観点でまとめています。
OpenContrail Users Event at OpenStack Summit Paris 行ってきましたTakashi Sogabe
2014年11月にOpenStack Summit Paris 会期中に行なわれた OpenContrail Users Event に参加してきました。本スライドは、OpenContrail Day Tokyo 2014 – Autumn のライトニングトークにて発表したUsers Eventのレポートになります。
Cumulus Linux 導入事例 -ネットワークをDevOpsに統合した、エンジニアが幸せになるインフラ運用手法のご紹介-Takashi Sogabe
2014年11月13日に開催された CTC Open Platform Day で発表したスライドについて投稿します。昨今Facebook社のNetworkingに関する取り組みなどでも大きく話題になっている Disaggregation の重要性について、ソフトウェアエンジニア及びインフラエンジニアの観点でまとめています。
Contrail integrated with Kubernetes and OpenstackDaisuke Nakajima
1) The document discusses Kubernetes and Contrail networking. It provides an overview of Kubernetes networking and how Contrail can provide the networking layer for Kubernetes.
2) Contrail can integrate with Kubernetes to provide the pod network, firewall rules between pods, and external connectivity including load balancers and floating IPs. Network and security policies can also be applied.
3) Deploying Kubernetes with Contrail allows taking advantage of Contrail's advanced networking features while running on various infrastructures including bare metal, OpenStack, and multiple public clouds in a multi-cloud environment.
5. Contrail Node connection
Contrail プロセスの初期化
• ノード登録
• ContrailのプロセスはDiscovery serverに接続して自身を登録する
Config Node
Discovery
server
Node DB
Config node
IF-MAP
Server
Control node
XMPP
Server
Analytics node
Collector
IF-MAP server: 10.0.0.1
API Server : 10.0.0.1
xmpp Server : 10.0.0.2
DNS Server : 10.0.0.2
Collector : 10.0.0.3
API server DNS Server
Register
6. Contrail Node connection
Contrail プロセスの初期化
• Node 情報の配布
• ContrailのプロセスはDiscoveryサーバに自身が必要な情報をリクエストする。
• Discoveryサーバは自身のデータベースから必要な情報を配布する
Config Node
Discovery
server
Node DB
Compute node
vRouter
Agent
Request XMPP server Publish XMPP-Server
[10.0.0.2,10.0.0.3]
7. Config Node 2
REST API
Server
IF-MAP
server
RabbitMQ
Schema
Transformer
Standby
SVC Monitor
Discovery
Server
Contrail High Availability
Config Node High Availability
• Config node High Availability
• Active-Active model
• 全てのConfig nodeはアクティブモードで動作します。ただし、SVC-Monitor や
Schema TransformerなどのプロセスはActive Standbyです。
• 外部からデータを受け付けるプロセスのみIPアドレスの冗長化が必要です。冗
長化が必要なのは以下になります。デフォルトではLBとしてHA Proxyを使用し
ます。
1. REST API Server
2. RabbitMQ
3. Discovert Server
4. ToR Agent (TSNを使用する場合のみ)
HA proxy
Control Node
"BGP module"
Proxies
XMPP
IF-MAP
Client
HA proxy
Keepalived
Config Node 1
REST API
Server
Database
IF-MAP
server
RabbitMQ
Control Node
"BGP module"
Proxies
XMPP
IF-MAP
Client
Schema
Transformer
Active
SVC Monitor
Discovery
Server
8. Support service
Contrail Components
Config Node
• REST API Server
• contrail-api
• /etc/contrail/contrail-api.conf
• Ifmap Cassandra Discovery server Zookeeper Rabbitmq など
• Schema Transformer
• /etc/contrail/contrail-schema.conf
• Ifmap Cassandra Discovery server Zookeeper API Serverなど
• Service Monitor
• /etc/contrail/contrail-schema.conf
• Ifmap Cassandra Discovery server Zookeeper API Serverなど
• Device Manager
• /etc/contrail/contrail-device-manager.conf
• Ifmap Cassandra Discovery server Zookeeper Rabbitmq など
• Discovery Server
• /etc/contrail/contrail-discovery.conf
• Cassandra Zookeeper TTL など
• Message Bus
• /etc/rabbitmq/*
• rabbitmq.config のクラスタや属性情報 rabbitmq-env.confなど
• IF-MAP server
• /etc/ifmap-server/*
• Ifmap username など
Database NodeConfig Node
REST API
Server
Schema
Transformer
Orchestrator
REST
Cassandra
IF-MAP
server
Control
Node
Control
Node
IF-MAP
Message
Bus
Discovery
server
Compute
Node
Analytics
Node
Zookeeper
Service Monitor
Device Manager
9. Support service
Contrail Components
Config Node
• Node manager
• /etc/contrail/contrail-config-nodemgr.conf
• Discovery serverなど
• Common
• /etc/contrail/contrail-keystone-auth.conf
• Keystone ユーザー名 テナント名など
• Load Balancer ( for HA )
• /etc/haproxy/haproxy.cfg
• API server, Discovery Server , RabbitMQなどのLB設定情報
• /etc/keepalived/keepalived.conf
• VIPなどの情報
Database NodeConfig Node
REST API
Server
Schema
Transformer
Orchestrator
REST
Cassandra
IF-MAP
server
Control
Node
Control
Node
IF-MAP
Message
Bus
Discovery
server
Compute
Node
Analytics
Node
Zookeeper
Service Monitor
Device Manager
10. Contrail Components
Control Node
Control Node
Proxies
XMPP
Control
Node
Control
Node
Compute
Node
TSN
Config Node Config Node
IF-MAP
XMPP
IF-MAP
Client
Gateway
Routers
Service
Nodes
• IF-MAP Client / XMPP
• contrail-api
• /etc/contrail/contrail-control.conf
• 自IPアドレス Discovery server ifmapなど
• Proxies
• contrail-dns
• contrail-dns.conf
• 自IPアドレス Discovery server ifmapなど
• contrail-named
• /etc/contrail/dns/contrail-named.conf
• いわゆるBindの設定
• Node manager
• /etc/contrail/contrail-control-nodemgr.conf
• Discovery serverなど
BGP
Netconf
11. Contrail Components
Analytics Node
• REST API Server
• /etc/contrail/contrail-api.conf
• Cassandra Discovery server Redis server など
• Query engine
• /etc/contrail/contrail-query-engine.conf
• Cassandra Discovery server Redis server など
• Sandesh Collector
• /etc/contrail/contrail-collector.conf
• Cassandra Discovery server Redis server など
• SNMP Collector
• /etc/contrail/contrail-snmp-collector.conf
• Zookeeper Discovery serverなど
• Topology Builder
• /etc/contrail/cat contrail-topology.conf
• Zookeeper など
• Message Bus
• /etc/redis/*
• Redis serverの設定情報 など
• Node manager
• /etc/contrail/contrail-analytics-nodemgr.conf
• Discovery serverなど
Analytics Node
REST API
Server
Rules
Engine
Other
Analytics
Clients
Collector
All
Nodes
All
Nodes
Analytics Client
Generated API
UI, CLI
Application
Message Bus
Query
Engines
Sandesh
REST
Database Node
Cassandra
Zookeeper
12. Contrail Components
ToR Service Node (TSN)
• vRouter agent
• /etc/contrail/ contrail-vrouter-agent.conf
• Discovery server Default route 物理アドレス情報 など
• TOR agent
• /etc/contrail/ contrail-tor-agent-X-.conf
• Discovery server ToR Switch 情報 CA,Cert 情報など
• Node manager
• /etc/contrail/contrail-vrouter-nodemgr.conf
• Discovery serverなど
ToR Service Node
vRouter Agent
VXLAN
Control Node
vhost0
Kernel
pkt0
User
Config
VRFs
Policy
Table vRouter Forwarding Plane
ToR-Agent
Config
XMPP
Routing
Instance
Flow
Table
FIB
OVSDB
Client
Routing
Instance
Flow
Table
FIB
vhost0
13. Contrail Forwarding Plane
Compute Node
Compute Node
vRouter Agent
Overlay tunnels
MPLS over GRE/UDP or
VXLAN
Control Node
vhost0
Kernel
pkt0
User
Config
VRFs
Policy
Table vRouter Forwarding Plane
Virtual
Machine
(Tenant A)
Routing
Instance
Flow
Table
FIB
Tap Interfaces (vif)
Routing
Instance
Flow Table
FIB
Virtual
Machine
(Tenant B)
Virtual
Machine
(Tenant B)
• vRouter agent
• /etc/contrail/ contrail-vrouter-agent.conf
• Discovery server Default route 物理アドレス情報 など
• Node manager
• /etc/contrail/contrail-vrouter-nodemgr.conf
• Discovery serverなど
vhost0