Cloud Foundry
Container-to-Container
Networking
Pivotal Japan - Platform Architect
Kazuto Kusama
@jacopen
Microserviceしてますか?
Four	Blair	Services	Pvt.	Ltd.	https://commons.wikimedia.org/wiki/File:Services4.png
機能ごとにソフトウェアを細分化
開発チームも機能単位
いままでのCFだと・・・
appA appB appC appD appA appD
`
Router
DB MQ
Cell Cell Cell
HTTPのエンドポイントが
Router経由になってしまう
コンテナ間で直接通信したい!
appA appB appC appD appA appD
Router
DB MQ
Cell Cell Cell
そこで
Container-to-Container
Networking
Container-to-Container Networking
• Cloud Foundryでコンテナ間通信を可能にする新機能
• 最近GAになりました!
• 最新版は1.1.0
• Pivotal Cloud Foundryだと1.11から
GAとして提供
利用方法
• BOSHでcf-networking-releaseをセットアップ
https://github.com/cloudfoundry-incubator/cf-networking-release
• UAAでnetwork.adminのscopeを有効化
• ドキュメントはこちら
https://docs.cloudfoundry.org/devguide/deploy-apps/cf-
networking.html
さっそくDEMO
ざっくりとした仕組みの説明
Architecture
https://github.com/cloudfoundry-incubator/cf-networking-release/blob/develop/docs/diagram.png
青: 元からある仕組み
緑: 新しく追加された仕組み
赤: 差し替え可能
https://github.com/cloudfoundry-incubator/cf-networking-release/blob/develop/docs/diagram.png
CNI
• Container Network Interface
• CNCF(Cloud Native Computing Foundation)によって
策定されている、コンテナネットワーキングのための
仕様
• Cloud Foundryの他、KubernetesやMesos、rkt
・・・要はDocker以外 😛 で使われている
Container Runtime
Container Network Interface
Loopback
Plugin
Bridge
Plugin
PTP
Plugin
MAC VLAN
Plugin
3rd-party
Plugin
Silk
• CNI準拠のContainer Networking fabric
• VXLANを使ってホスト間の通信を行う
• Flannelにインスパイアされて作られている
• 初期はFlannelを利用。etcdが嫌でRDBを使うように
作り直したらしい
Cloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container Networking
Garden-runc
Garden External Networker
CF Wrapper CNI Plugin
Silk CLI Plugin
Linux
コンテナランタイム
Garden External Networker API
CNI API
Legacy Networking
NetIn(NAT from Host)
NetOut(Application Security Group)
Silk
daemon
Silk
Controller
diego cell
IPAM
iptables
netlink
などなど設定
Garden-runc
Garden External Networker
CF Wrapper CNI Plugin
Silk CLI Plugin
Linux
コンテナランタイム
Garden External Networker API
CNI API
Legacy Networking
NetIn(NAT from Host)
NetOut(Application Security Group)
Silk
daemon
Silk
Controller
diego cell
IPAM
iptables
netlink
などなど設定
Silk controllerが
Cellにsubnetを
払い出す Wrapper Pluginが
Port forwardingや
ASGを設定
veth pairの作成
etc...
cf allow-access	myapp backend-app	--port	7000	--protocol	tcp
Policyの設定
AgentがPolling
iptablesに反映
ここが足りないC2C Networking
• Service Discovery欲しい・・・
• 今のところはEurekaやamalgam8を使って実現
Next Steps
• App Identity for external services
• Bandwidth limiting
• logging enhancement
• support port ranges
• https://www.pivotaltracker.com/n/projects/1498342
まとめ
• CFのC2C Networking機能はMicroservicesやるのに便利
• CNIに準拠したSilkを利用。必要に応じて置き換え可能
• 足りない機能はあれど、今後いろいろ実装される予定

More Related Content

PDF
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
PDF
CFの便利機能を他の環境でも。Open Service Broker
PDF
コンテナ時代だからこそ要注目! Cloud Foundry
PDF
知って欲しいPaaSの話
PDF
Lattice深掘り話
PDF
新しいOpenShiftのしくみを調べてみた
PDF
OpenShift 3で、DockerのPaaSを作る話
PDF
最近のKubernetesとDocker Machine/Swarmの話
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
CFの便利機能を他の環境でも。Open Service Broker
コンテナ時代だからこそ要注目! Cloud Foundry
知って欲しいPaaSの話
Lattice深掘り話
新しいOpenShiftのしくみを調べてみた
OpenShift 3で、DockerのPaaSを作る話
最近のKubernetesとDocker Machine/Swarmの話

What's hot (20)

PDF
DockerとKubernetesが作る未来
PDF
runC概要と使い方
PPTX
Cloud Foundry as Containerized Services - Cloud Foundry Days Tokyo 2016
PDF
Docker PaaSとしての OpenShift, Deis, Flynn比較
PDF
クラウドを『作る』ってどういうこと?
KEY
CloudFoundryをつかってみよう
PDF
Cloudn PaaSチームのChatOps実践
PDF
第18回Cloud Foundry輪読会用 Buildpackを使ってアプリを 載せるためのアプローチ
PDF
はじめてのCF buildpack
PDF
Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
PDF
Docker, Kubernetes and OpenShift v3
PDF
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
PDF
Githubを使って簡単に helm repoを公開してみよう
PPTX
Kubernetesと暮らすRancherな生活
PPTX
Jenkins x Kubernetesが簡単だと思ったら大変だった話
PPTX
はじめての Cloud Foundry: .NET アプリケーションのはじめ方
PDF
Cloud Foundryで学ぶ、PaaSのしくみ講座
PDF
ProjectAtomic-and-geard
PDF
Arukas meet Mesos/Marathon
PDF
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
DockerとKubernetesが作る未来
runC概要と使い方
Cloud Foundry as Containerized Services - Cloud Foundry Days Tokyo 2016
Docker PaaSとしての OpenShift, Deis, Flynn比較
クラウドを『作る』ってどういうこと?
CloudFoundryをつかってみよう
Cloudn PaaSチームのChatOps実践
第18回Cloud Foundry輪読会用 Buildpackを使ってアプリを 載せるためのアプローチ
はじめてのCF buildpack
Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
Docker, Kubernetes and OpenShift v3
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
Githubを使って簡単に helm repoを公開してみよう
Kubernetesと暮らすRancherな生活
Jenkins x Kubernetesが簡単だと思ったら大変だった話
はじめての Cloud Foundry: .NET アプリケーションのはじめ方
Cloud Foundryで学ぶ、PaaSのしくみ講座
ProjectAtomic-and-geard
Arukas meet Mesos/Marathon
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
Ad

Similar to Cloud Foundry Container-to-Container Networking (20)

PDF
Whats new Apache CloudStack
PPTX
AKS (k8s) Hands on Lab Contents
PDF
INF-015_そこのコンテナ、うまく積めてるね! ~Windows アプリケーション コンテナの展開と運用~
PDF
cf-containers-broker を使ってローカル環境もサービスの恩恵をうける
PDF
Kubernetes雑にまとめてみた 2020年8月版
PPTX
SpringOne Platform Replay -Pivotal Cloud Foundry-
PDF
OSC2012-Fukuoka-CloudStack-Update
PDF
Kubernetesを触ってみた
PDF
Wakame Project - 自作クラウド研究会
PDF
Docker ComposeでMastodonが必要なものを梱包する話
PDF
Open stack reference architecture v1 2
PDF
ソフトバンクにおける Java による クラウドネイティブの実現
PDF
【第1回開催!】Kong Community, Japanミートアップ
PDF
Kubernetes 導入から始める DevOps について
PDF
OSC2012 Tokyo/Spring JOSUG
PPTX
SpringOne 2015 報告会 - Lattice + Spring Cloud Netflix
PDF
Open Source x AI
PDF
Osc fukuoka xAI Meetup
PDF
Microservices and Servcie Mesh on Azure
PDF
近頃のDockerネットワーク
Whats new Apache CloudStack
AKS (k8s) Hands on Lab Contents
INF-015_そこのコンテナ、うまく積めてるね! ~Windows アプリケーション コンテナの展開と運用~
cf-containers-broker を使ってローカル環境もサービスの恩恵をうける
Kubernetes雑にまとめてみた 2020年8月版
SpringOne Platform Replay -Pivotal Cloud Foundry-
OSC2012-Fukuoka-CloudStack-Update
Kubernetesを触ってみた
Wakame Project - 自作クラウド研究会
Docker ComposeでMastodonが必要なものを梱包する話
Open stack reference architecture v1 2
ソフトバンクにおける Java による クラウドネイティブの実現
【第1回開催!】Kong Community, Japanミートアップ
Kubernetes 導入から始める DevOps について
OSC2012 Tokyo/Spring JOSUG
SpringOne 2015 報告会 - Lattice + Spring Cloud Netflix
Open Source x AI
Osc fukuoka xAI Meetup
Microservices and Servcie Mesh on Azure
近頃のDockerネットワーク
Ad

More from Kazuto Kusama (14)

PDF
Concourseで快適な自動化の旅
PDF
Istio, Kubernetes and Cloud Foundry (修正版)
PDF
Istio, Kubernetes and Cloud Foundry
PDF
k8sだけじゃないIstio - Cloud FoundryのIstioインテグレーションについて
PDF
Cloud Foundry Container Runtimeで快適Kubernetes運用
PDF
改めてPaaSについて考えてみる
PDF
グループ会社を巻き込んで勉強会をやってみるには
PDF
KubernetesとOpenShiftの話
PDF
Weaveを試してみた
PPTX
Cloud Foundry V2 | Intermediate Deep Dive
PPTX
Cloud Foundry | How it works
PDF
Cloud Foundry V2を、もうちょっと深掘りしよう
PDF
Cloud Foundryは何故動くのか
PDF
Cloud foundryのコミュニティを紹介するよ
Concourseで快適な自動化の旅
Istio, Kubernetes and Cloud Foundry (修正版)
Istio, Kubernetes and Cloud Foundry
k8sだけじゃないIstio - Cloud FoundryのIstioインテグレーションについて
Cloud Foundry Container Runtimeで快適Kubernetes運用
改めてPaaSについて考えてみる
グループ会社を巻き込んで勉強会をやってみるには
KubernetesとOpenShiftの話
Weaveを試してみた
Cloud Foundry V2 | Intermediate Deep Dive
Cloud Foundry | How it works
Cloud Foundry V2を、もうちょっと深掘りしよう
Cloud Foundryは何故動くのか
Cloud foundryのコミュニティを紹介するよ

Recently uploaded (8)

PDF
20250823_IoTLT_vol126_kitazaki_v1___.pdf
PDF
Geminiの出力崩壊 本レポートは、Googleの大規模言語モデル「Gemini 2.5」が、特定の画像と短文入力に対して、誤った地名を推定し、最終的に...
PPTX
Cosense - 整えずして完全勝利!Cosenseが他のwikiツールと違う理由
PDF
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual...
PDF
Yamaha DT200WR Real Enduro ENGINE CYLINDER TRANSMISSION
PDF
20250826_Devinで切り拓く沖縄ITの未来_AI駆動開発勉強会 沖縄支部 第2回
PPTX
Vibe Codingを触って感じた現実について.pptx .
PDF
ココロ分解帳|感情をやさしく分解し自分と他者を理解するためのモバイルノートアプリ
20250823_IoTLT_vol126_kitazaki_v1___.pdf
Geminiの出力崩壊 本レポートは、Googleの大規模言語モデル「Gemini 2.5」が、特定の画像と短文入力に対して、誤った地名を推定し、最終的に...
Cosense - 整えずして完全勝利!Cosenseが他のwikiツールと違う理由
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual...
Yamaha DT200WR Real Enduro ENGINE CYLINDER TRANSMISSION
20250826_Devinで切り拓く沖縄ITの未来_AI駆動開発勉強会 沖縄支部 第2回
Vibe Codingを触って感じた現実について.pptx .
ココロ分解帳|感情をやさしく分解し自分と他者を理解するためのモバイルノートアプリ

Cloud Foundry Container-to-Container Networking