Share
Embed
【shownet.conf_】コンピューティング資源を統合した分散コンテナ基盤の進化
ShowNet NOCチームメンバー
明石 邦夫(東京大学)
ShowNet NOCチームメンバー
織 学(Red Hat)
Transcript
27 slides
-
今年の仮想化基盤・コンテナ基盤 ➢仮想化基盤 ✓vSphere • CPUコア数: 168 • メモリ: 2.5TB •
ストレージ: 2PB • 仮想マシン: 35 ✓Nutanix • CPUコア数: 144 • メモリ: 1.5TB • ストレージ: 15TB • 仮想マシン: 35 5 ➢コンテナ基盤 ✓クラスタ数: 8 • Ocp, ocp2, ntnx, vanilla, sdpf, jk8s, jocp, eks ✓総ノード数: 54 ✓Pod: 990 ✓Deployment+DaemonSet +StatefulSets: 346 ✓Azure Stack HCI • CPUコア数: 72 • メモリ: 512GB • ストレージ: 7.5TB -
➢Apstra によるネットワークの統合管理 ➢ECMP でのコンテナアプリのスケールアウト 6 Exos-corvault ucs-c240m7 qfx5120 qfx5120 nexus93180yc
nexus93180yc nexus9332c nexus9332c NSX apstra nexus9300v panoptica zabbix openshift ➢仮想化基盤向けの EVPN VXLAN ➢コンテナ基盤向けの eBGP によるL3 接続 ucs-c240m7 今年の仮想化基盤・コンテナ基盤 -
➢仮想マシン、ストレージ用に EVPN/VXLAN ✓ゲートウェイは anycast gateway ✓Switch-Server 間は 10/25G 接続、ストレージは 100G
iSCSI ✓Apstra による管理 仮想マシン向け L2 ネットワーク 7 nexus9332c nexus9332c Exos-corvault ucs-c240m7 esxi qfx5120 dl380-gen11 nexus93180yc -
ネットワークの統合管理 ➢Apstra によるインテントネットワーク 8 ➢テレメトリによる監視 ➢IP アドレス、AS番号などの リソース管理 ➢EVPN VXLAN
での L2 延伸 ➢VXLAN Stiching による DC Interconnect ➢コンテナ基盤向けの eBGP 接続 ➢ECMP によるコンテナアプリの スケールアウト -
Nutanix IaaS 基盤 ➢Nutanix 仮想化基盤 ✓Cisco UCS C240M7 3 台でのクラスタ構成
✓Kubernetes も多数動作 ➢Cisco Intersight と連携も可能 ✓イメージデプロイ ✓ハードウェア管理など 9 -
vSphere IaaS 基盤 ➢仮想アプライアンスが多数動作 ✓OpenShift、Tanzu なども ➢NSX による分散Firewall ✓仮想アプライアンスの防御 ➢ストレージに
Exos CORVAULT ✓4U サイズで 2PB の高密度ストレージ 10 -
コンテナ基盤 ➢複数の Kubernetes を展開 ✓VMware Tanzu ✓Nutanix Kubernetes Engine ✓AKS
on AzureStack HCI ✓Vanilla Kubernetes ➢今年のチャレンジ ✓Multi-Cluster K8s ✓DoH/DoT 11 -
コンテナ基盤の基本構成 ➢k8s 上のコンテナ、仮想ルータで BGP ✓サービスが定義されるとそのアドレスを広告 ➢ストレージは IaaS 上のストレージと Exos を
iSCSI で 12 12 nexus9332c nexus9332c Exos-corvault ucs-c240m7 esxi qfx5120 dl380-gen11 nexus93180yc nke vanilla openshift tanzu avi jcnr サービス定義から /32、/128 でアドレ スを広告 -
コンテナネットワーク ➢マルチクラスタを構成するため calico ✓jcnr を動作させるところのみ JCNR-CNI ✓worker node 間は VXLAN
で接続 ✓Kube-proxy には ipvs • サービストラフィックは基本的に ExternalTrafficPolicy: Local ➢サービスの冗長構成は ✓BGP の ECMP ✓k8s 内の Pod Network で分散 などで構成 13 unbound memcached cluster dnstapcollector dhcp2 metallb ns unbound memcached cluster dnstapcollector metallb ns unbound memcached cluster dnstapcollector dhcp1 metallb ns -
コンテナルータ JCNR ➢クラウドネイティブルータを kubernetes へ ✓Service アドレスは BGP でアドバタイズ ✓コンテナネットワークを
VRF で作成 ✓Worker Node 間は SR-MPLS で構成 14 -
➢k8s API と連携して動作する仮想マシンベースの LB ✓avi kubernetes operator (AKO) が virtual
service オブジェクトを管理 • k8s にサービス定義→ AKO が vSphere 経由で avi-1,2 へ avi-2 NSX Advanced Load Balancer (Avi) 15 avi-1 avi controller tanzu worker nodes AKO AKO AKO -
ShowNet 2024 DNS cache ➢ShowNet 2024 では少し違う構成 ➢DNS cache には
unbound ✓unbound の backend に memcached ✓Pod が増えても memcached がキャッシュしている ✓unbound 内のキャッシュに見つからない場合 memcached に問い合わせ ✓memcached にもない場合だけ外部に問い合わせ ➢DNS のクエリログは dnstap で転送 16 unbound memcached cluster metallb unbound memcached cluster metallb unbound memcached cluster metallb memcached service -
DoH/DoT ➢今年の ShowNet は DNS cache サーバで DoH/DoT を有効に ✓証明書は
kubernetes で管理 ✓Bootstrap アドレスは Discovery of Designated Resolvers (DDR) で通知 17 nexus93180yc nexus93180yc unbound unbound unbound ShowNet Backbone サーバへは ECMP で分散 unbound.conf 証明書 k8s の etcd から VolumeMount -
DoH/DoT の割合 18 ➢DoH は 3~4 割、DoT は 1 割程度
✓macOS、iPhone などが DoH ✓Android は DoT 多め -
➢RoCEファブリックの相互接続、ECN/PFCのテスト ➢HCIとAKSのAzure連携、コンテナ脆弱性の可視化 DC 全体設計 19 nexus-dashboard qfx5120 nexus93180yc nexus9332d nexus9408
dl380-gen11 Azure Kubernetes Service Prisma-cloud -
➢TestCenter A1 から 100Gbps のトラフィックを送信 ✓RoCEv2 エミュレーション ✓各スイッチが DCQCN によって
トラフィックを抑制できるかの検証 ➢輻輳制御によって送信レートが 22Gbps まで調整されることを確認 ロスレスネットワーク検証 20 -
Kubernetesマルチクラスタ ➢構成/用途に応じてSubmariner(L3)とSkupper(L7)を使い分けてクラスター間接続 ➢Advanced Cluster Management for Kubernetesでマルチクラスタを一元管理 23 submariner-gw skupper-router
submariner-gw submariner-gw skupper-router skupper-router open-cluster- mgmt-hub DL380 Gen11 prisma-cloud Azure Kubernetes Service -
2種類のインターコネクト ➢Submariner ✓IPSecで接続 • Linuxカーネルで処理 ✓フルメッシュのみ 24 node1 LightHouse DNS
Route Agent gw Gate way Global Net Route Agent Cluster X hello Pod Cluster Y Cluster X namespace B namespace A Service skupper- router skupper- service- controller Service skupper- router skupper- service- controller AMQP Link connector listener connector client ➢Skupper ✓AMQPで接続 • 全てユーザーランド で処理 ✓柔軟なトポロジー node2 LightHouse DNS Route Agent node1 LightHouse DNS Route Agent Cluster Y node2 LightHouse DNS Route Agent gw Gate way Global Net Route Agent IPSec tunnel -
ShowNet/Cloud 連携 (1) ➢ShowNet と SDPF クラウドを L2 接続 ✓Kubernetes
のマルチクラスタを構築 25 control-plane control-plane control-plane worker worker worker c8000v c8000v c8500 c8500 control-plane worker control-plane worker ShowNet -
ShowNet/Cloud 連携 (2) ➢Azure Arcでハイパーバイザ、仮想マシン、コンテナを統合 管理 26 ShowNet Azure Stack
HCI opsramp-agent twistlock submariner-gw Azure Virtual Desktop HPE Deployment Automation Windows Admin Center Azure Kubernetes Service HPE DL380 Gen11