Upgrade to Pro — share decks privately, control downloads, hide ads and more …

docomoMECを支えるOpenStack活用事例

VirtualTech Japan
November 27, 2024
130

 docomoMECを支えるOpenStack活用事例

イベントグループ:日本OpenStackユーザ会
イベント名:日本OpenStackユーザ会 第50回勉強会
日時:2024年11月1日(金) 18時30分
場所:NTTソフトウェアイノベーションセンタ
イベントページ:https://openstack-jp.connpass.com/event/333584/

VirtualTech Japan

November 27, 2024
Tweet

Transcript

  1. ©2024 NTT DOCOMO, INC. All Rights Reserved. OpenStackユーザ会 第50回勉強会 docomoMECを支える

    OpenStack活用事例 株式会社NTTドコモ サービスデザイン部 クラウドデザイン室 サービス仮想化基盤担当 村松 宏基 落合 匠郎
  2. ©2024 NTT DOCOMO, INC. All Rights Reserved. Outline 前半 ・チーム紹介

    ~OpenStackへの取り組み ・docomoMECの概要 後半 ・docomoMECのためのOpenstack基盤 - OVNとスマートNICを採用したアーキテクチャ ・実際に構築してみて(発生した問題事例)
  3. ©2024 NTT DOCOMO, INC. All Rights Reserved. Outline 前半 ・チーム紹介

    ~OpenStackへの取り組み ・docomoMECの概要 後半 ・docomoMECのためのOpenstack基盤 - OVNとスマートNICを採用したアーキテクチャ ・実際に構築してみて(発生した問題事例)
  4. ©2024 NTT DOCOMO, INC. All Rights Reserved. 【2017年】 ネットワーク監視 システム用途として採用

    大規模基盤の構築 チーム紹介 ~OpenStackへの取り組み~ 【2015年】 社内システム向けに 運用開始 【2020年】 MEC事業を開始 (早期開始のため Liberty基盤流用) 【2016年】 法人システム用の サーバとして採用 【2022年】 5G収容のための MEC基盤を構築 (★本講演) 【2024年】 • 研究開発をメインミッションとしていた元R&D組織 • Openstackをベースとした仮想化基盤の構築~運用を自前で対応 • 商用サービスを提供し、ビジネス貢献を行ってきた特殊なチーム 社内向け30台規模(Juno) 法人向け200台規模(Liberty) 大規模3000台規模(Liberty) docomoMEC(Liberty) 東西2拠点 5G収容対応 docomoMEC (Wallaby) 全国8拠点 ~ ~ 【2026年】
  5. ©2024 NTT DOCOMO, INC. All Rights Reserved. 5G時代の到来 第5世代移動通信システムは「高速・大容量」「低遅延」「多数接続」 大幅な機能向上により様々な分野で活用が進む

    教育 医療 防災・防犯 1G 2G 3G 4G 第5世代 音声通話 メール/Web 音楽/映像 動画/ オンラインゲーム 高速・大容量 低遅延 多数接続 さらに 生産性向上 5G技術のユースケース
  6. ©2024 NTT DOCOMO, INC. All Rights Reserved. NTTドコモが提供する5G x MECサービス

    NTTの通信技術を生かした 5G×MEC*ソリューション 全国のドコモ拠点に基盤を展開し、低レイテンシ通信を実現 docomoMECの強み ・MECと端末をダイレクトに接続し 低遅延かつ高セキュアな通信環境を提供 ・8つの地域に基盤を展開し、広い地域で 低遅延な5G伝送が可能 ・SR-IOV, Smart NICの導入により、 高速な通信処理を実現 大阪 東北 北陸 中国 四国 東海 沖縄 東京 *MEC: Multi-access Edge Computing
  7. ©2024 NTT DOCOMO, INC. All Rights Reserved. docomoMECの特徴 docomoMECのオプションサービス ➢

    インターネットを介さず端末とMEC基盤をダイレクト接続「MECダイレクト」 ➢ 接続先拠点を利用者側で変更する機能「ネットワークオンデマンド」 ➢端末間通信(P2P通信)が利用可能
  8. ©2024 NTT DOCOMO, INC. All Rights Reserved. Outline 後半 ・docomoMECのためのOpenstack基盤

    - OVNとスマートNICを採用したアーキテクチャ ・実際に構築してみて(発生した問題事例) 前半 ・チーム紹介 ~OpenStackへの取り組み ・docomoMECの概要
  9. ©2024 NTT DOCOMO, INC. All Rights Reserved. 5Gを収容する基盤として高速通信が可能であること 目標:40Gbps/物理サーバ 外部接続として5G網と接続できること(GRE通信のサポート)

    docomoMECに対する要件 ドコモ ネットワーク ドコモ端末 + デバイス MEC基盤 ドコモネットワーク設備 5G通信対応端末(ルータ/スマホ等) MECダイレクト ネットワーク設備からの通信を 終端するため、GREの高速通 信を処理できること ※GRE(Generic Routing Encapsulation) トンネリングプロトコル、5G通信のユーザを識別するために使用
  10. ©2024 NTT DOCOMO, INC. All Rights Reserved. スマートNIC カーネル インスタンス

    アーキテクチャ NetworkingとしてはOVNを採用 スマートNICを利用したSR-IOVと組み合わせて高速通信を実現 Openstackバージョン:Wallaby Neutron DB OVN ML2 PLUG IN OVN Northbound DB OVN northd OVN Controller ovs-vswitchd ovsdb-server Qemu Vender Driver VF eSW OVN Southbound DB Neutron OVN Compute VM-VM間通信で 最大80Gbpsを観測
  11. ©2024 NTT DOCOMO, INC. All Rights Reserved. スマートNIC カーネル インスタンス

    アーキテクチャ(OVN関連の説明) NeutronとOVN DB間で情報が同期される ComputeNode上のOVSは、OVNから取得した情報をもとに更新される Openstackバージョン:Wallaby Neutron DB OVN ML2 PLUG IN OVN Northbound DB OVN northd OVN Controller ovs-vswitchd ovsdb-server Qemu Vender Driver VF eSW OVN Southbound DB Neutron OVN Compute OVN ML2 PLUG IN を介してNeutronとOVN間で情 報が同期される 論理的なネットワーク 情報を保持 物理的なネットワーク 情報を保持 Compute上のOVN Controller経由でOVSの情報 が更新される
  12. ©2024 NTT DOCOMO, INC. All Rights Reserved. スマートNIC カーネル インスタンス

    アーキテクチャ(スマートNICの説明) SR-IOV使用時は、インスタンスにスマートNICのVF(仮想的なPCIe機能)が割り当たる パケット処理をスマートNIC上で動作させる(オフロード)ことでCPU負荷を軽減し高速化 Openstackバージョン:Wallaby Neutron DB OVN ML2 PLUG IN OVN Northbound DB OVN northd OVN Controller ovs-vswitchd ovsdb-server Qemu Vender Driver VF eSW OVN Southbound DB Neutron OVN Compute パケット処理をスマートNICにオフ ロードしてインスタンスの負荷を軽減 インスタンスからスマートNIC上 のリソース(VF)を直接アタッチ
  13. ©2024 NTT DOCOMO, INC. All Rights Reserved. OVNを採用した経緯 将来性を見込み、OVNを選択する判断をした (2021年開発着手当時の背景)

    ML2 OVSの開発が止まった • OVSとOVNで開発で重なっている部分が多いため 新しい機能は、OVNが開発ターゲットになり始めてきていた • ハードウェアオフロード全般
  14. ©2024 NTT DOCOMO, INC. All Rights Reserved. 苦労した点 ◼ 短期間でサービス開始したいという事業要請

    1年間で全国の拠点の構築を完了させるというミッション、開発期間は実質半年 ◼ OVNを安定動作させるための試行錯誤 WallabyからOVNが標準になったものの、2021年当時はまだ発展途上であり、手探り 状態で検証を繰り返す ◼ スマートNICとの併用という点で想定外事象との遭遇
  15. ©2024 NTT DOCOMO, INC. All Rights Reserved. ここからは、 実際に構築した際に遭遇した事例 をご紹介します

    注意 Wallaby利用の我々の環境で発生した事例です 現在は問題は解消しているかもしれません 我々の使い方の問題もあるかもしれません
  16. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例1:OVN DBの冗長化 OVNを安定動作させるために、OVN

    DBの冗長化が課題 WallabyでACT-ACT構成がサポートされたが実運用に耐えられるか当時は不安であった スマートNIC カーネル インスタンス Neutron DB OVN ML2 PLUG IN OVN Northbound DB OVN northd OVN Controller ovs-vswitchd ovsdb-server Qemu Vender Driver VF eSW OVN Southbound DB Neutron OVN Compute OVNで最も重要な情報を持つ箇所 どのように冗長化するか
  17. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例1:OVN DBの冗長化 安定性を重視するためACT-ACT方式はあえて見送り

    同期のみ実施しACT-SBY構成で運用する方式を採用 OVN Northbound DB OVN northd OVN Southbound DB OVN Northbound DB OVN Southbound DB OVN Central (Active) OVN Replica (DB同期のみ) OVN Northbound DB OVN northd OVN Southbound DB OVN Northbound DB OVN Southbound DB OVN Central (故障) OVN Central (Active) OVN northd 故障 通常時 Activeとして起動 同期 同期 故障時
  18. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例2:スマートNICドライバのアップデートで通信不能 スマートNICのドライバをアップデートしたところ、インスタンスが通信が不能となった OVNから情報が取得できずOVSが空の状態となっていた

    スマートNIC カーネル インスタンス OVN Controller ovs-vswitchd ovsdb-server Qemu Vender Driver VF eSW Compute OVN Southbound DB ドライバアップデート後にOVN DB から情報が取得できない (インスタンスの通信が不能) × ドライバのアップデート実施
  19. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例2:スマートNICドライバのアップデートで通信不能 スマートNICのドライバのアップデートにおいて、ベンダ用意のインストーラを利用すると OVSのパッケージが再インストールされ、OVS

    IDが初期化された 変更されてしまったOVS IDを手動で元に戻す手順を追加することで回避 スマートNIC カーネル インスタンス OVN Controller ovs-vswitchd ovsdb-server Qemu Vender Driver VF eSW Compute 【事象】 ①ドライバのアップデートを実行 ②インストーラの中でOVSが再インス トールされ、OVS IDが変わってしまう /etc/openvswitch/system-id.conf ③バージョンアップ後、OVNからOVSの 情報が取得できず通信不能 【対処】 バージョンアップ後に②のIDを元に戻 す手順で回避 ①アップデート実行 ②OVS再インストール によりIDが変わってしまう ③OVS IDが一致せず OVN DBから情報が取 得できず通信不能 OVN Southbound DB
  20. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例3:VFリソースの管理情報残留問題 SR-IOV使用時、VFの空きリソースがあるにも関わらずアタッチできなくなる SR-IOVのポートの削除と作成を繰り返し実施すると発生

    スマートNIC カーネル インスタンス Qemu Vender Driver VF eSW Compute × インスタンスからSR-IOVのポートを アタッチしようとするが、VFが無い旨 のエラーとなり失敗する。 (実際は空きVFはある)
  21. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例3:VFリソースの管理情報残留問題 SR-IOVのポートのデタッチ、削除を短時間で続けて実施すると VFの管理状態が「利用中のまま」の残ってしまう

    ユーザシステムにWait処理の追加を依頼して回避 ユーザ システム OpenStack ①ポートデタッチ ②ポート削除 VFの状態変更 (利用中→利用可能) 既にポートは削除されており、「該当ポートは 存在しない」というエラーになる。この場合、VF 状態が「利用中」のまま残ってしまい、たまり続 けるとVFがアタッチできなくなる。 状態変更に失敗 ユーザ システム OpenStack ①ポートデタッチ ②ポート削除 wait処理(10秒) 完了 Wait処理により、ポート削除 前に状態が変更される 【発生時の動作】 【対処後の動作】 VF管理状態 VF管理状態 反映に約5秒程度 タイムラグ 反映に約5秒程度 タイムラグ VFの状態変更 (利用中→利用可能)
  22. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例4:GREでHWオフロードが効かない GREパケットの通信で、HWオフロードが有効にならず通信速度が出ない スマートNIC

    カーネル インスタンス Qemu Vender Driver VF eSW GREパケット 通信速度が出ない(数百Mbps程度) GREパケットのHWオフ ロードが効かない Compute GREパケット GREパケット GREパケット GREパケット
  23. ©2024 NTT DOCOMO, INC. All Rights Reserved. 事例4:GREでHWオフロードが効かない GREパケット セキュリティグループ(ステートフ

    ル)の処理によりCT (Connection tracking) が動作 Connection trackingにより 応答パケットを識別しフィルタリング パケット処理のイメージ(ステートフル) 要求と応答を紐づけてパケットフィルタリングする この際にConnection trackingが動作する 要求 応答 パケット処理のイメージ(ステートレス) パケット単体でフィルタ処理する Connection trackingは動作しない 要求 応答 それぞれのパケット単独でフィ ルタリング スマートNIC カーネル × CT固有の特殊な設定をしようと するが、CTかつGREだと対象 外と判定され、HWオフロードの 対象にならない GREパケット セキュリティグループ(ステートレ ス)ではCT(Connection tracking)が動作しない スマートNIC カーネル CTが動作しないため、HWオフ ロードの対象になる カーネルの問題によりGRE通信に対するHWオフロードが動作しない セキュリティグループをステートフルで使用すると条件に合致してしまうため、 ステートレスを使用することで回避(後に、カーネルの問題は改修はされた) 【セキュリティグループ(ステートフル使用時)】 【セキュリティグループ(ステートレス使用時)】
  24. ©2024 NTT DOCOMO, INC. All Rights Reserved. スマートNICのベンダサポートについて スマートNICの利用にあたり、その他にもいくつかの想定外事象に遭 遇したが、解析のサポートや改修対応をしていただけた

    【対処されたバグの例】 ・継続的にネットワーク負荷をかけていると速度が低下する ・ドライバのインストーラが特定のカーネルバージョンにおいて失敗する ・ハードウェアによるコネクショントラッキング機能が特定の条件下で動作しない ・パケット送出順序が入れ替わる 【回避方法を提案いただいた例】 ・インスタンス側で、連続したメモリが不足している時にドライバがロードできない (Linux側の問題であり、ドライバロード前にメモリを解放する仕組みをユーザに提案)
  25. ©2024 NTT DOCOMO, INC. All Rights Reserved. OVNの現状 • 継続的に開発が続いている

    最新バージョンは今年の9月にリリースされた24.09 バグフィックスや脆弱性への対応も随時行われている • LTS(長期サポート)バージョンも存在(通常1年のサポートが3年に延長) • OVN-Kubernetesで利用されている(今後も安心?) • 様々な課題が解決済み 我々が直面した課題は、最新バージョンでは“ほぼ”解決されている
  26. ©2024 NTT DOCOMO, INC. All Rights Reserved. まとめ • docomoMECの要件に耐えうるOpenstack基盤を作るため、OVNとスマー

    トNICを使用したアーキテクチャを採用した • 2021年当時は、OVNは発展途上であり不安もあったが、将来性を考慮して OVNを選択した • OVNとスマートNICとの組み合わせなどによる想定外の問題の発生に苦労した が、回避策の適用などにより何とか乗り切ることができた (スマートNICベンダの協力もあり) • 結果、短期間で高速通信が可能な基盤が完成、現在は商用にて安定動作中