Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

コンテナ時代のOpenStack

488 views

Published on

Japan Container Days v18.12 における日本OpenStackユーザ会セッションのプレゼンテーションです。

Published in: Software
  • Be the first to comment

  • Be the first to like this

コンテナ時代のOpenStack

  1. 1. コンテナ時代の時代のの OpenStack 2018.12.5 日本 OpenStack ユーザ会 吉山晃会 吉山晃 Japan Container Days v18.12
  2. 2. 自己紹介:吉山晃 ● OpenStack Ambassador – OpenStack Foundation 公認エバンジェリストエバンジェリスト ● 日本 OpenStack ユーザ会 吉山晃会 – Web masters の1人人 – 勉強会幹事 ● どちらかと言うと猫派言うと猫派うと言うと猫派猫派
  3. 3. OpenStack とは ● 2010 年発足のの OSS クラウド基盤開発プロジェクト基盤開発プロジェクト – IaaS/ ストレージ / 運用管理系 /CaaS/PaaS/SaaS/FaaS – 4 つの Open (コード、設計、開発、コミュニティ)コード、設計、開発、コミュニティ)設計、設計、開発、コミュニティ)開発、設計、開発、コミュニティ)コミュニティ) – 多数の企業のサポートの企業のサポートのサポート – 半年毎に新バージョンリリースに新バージョンリリース新バージョンリリースバージョンリリース
  4. 4. IaaS ユースケース(過去)過去) 物理環境 仮想環境 IaaS PaaS ? Lift & Shift Cloud Native Apps Traditional Apps Edge VNF XaaS Underlay Desktop
  5. 5. IaaS ユースケース(過去)現在) 物理環境 仮想環境 IaaS CaaS PaaS ? Lift & Shift Traditional Apps VNF XaaS Underlay Desktop Cloud Native Apps Edge Container as a Service
  6. 6. IaaS ユースケース(過去)未来) 物理環境 仮想環境 IaaS CaaS PaaS ? Lift & Shift Traditional Apps Edge VNF XaaS Underlay Desktop Cloud Native Apps
  7. 7. 最新リリース「リリース「 Rocky 」 ● 18 番目のの OpenStack リリース – リリース日: 2018/8/30(太平洋標準時)※1人 – 開発期間: 2018/2/26 〜 8/30(6ヶ月)ヶ月)月)※2 – 総コミット数:コミット数: 21777コミット※3 – 開発参加者数: 1545名※4 – 開発参加企業: 137社・団体※5 ※ 1人: https://www.openstack.org/news/view/395 ※ 2: https://releases.openstack.org/rocky/schedule.html ※ 3: http://stackalytics.com/?release=rocky&metric=commits ※ 4: https://www.openstack.org/software/rocky ※ 5: http://stackalytics.com/?release=rocky
  8. 8. Rocky リリースのトピックトピック ● ベアメタル IaaS – Ironic: ユーザによるに新バージョンリリースよる BIOS 設定対応 – Ironic: バックエンドエージェントの グルーピング対応 – Ironic: ディスクレスブートに新バージョンリリース対応 (RAMRAM ディスク ) ● HPC – Cyborg: アクセラレータ管理管理 (コード、設計、開発、コミュニティ)新バージョンリリースサービス) ● コンテナ時代の – Magnum: K8s の公認エバンジェリストインストーラ ● エッジ – Octavia: UDPの負荷分散に対応に新バージョンリリース対応 ● HA – Masakari: ゲスト OS監視に対応に新バージョンリリース対応 ● サーバレス – Qinling: Function-as-a-Service (RAM新バージョンリリースサービス ) ● インストーラ – TripleO: 3バージョン間アップグレード対応アップグレード対応 (RAMFirst Forward upgrade) ● 保守 – 保守対象の過去リリースを拡大の過去リリースを拡大リリースを拡大拡大
  9. 9. OpenStack Project Map
  10. 10. 2階層のクラウド基盤のトピッククラウド基盤基盤 Undercloud Overcloud ● Overcloud – サービス基盤 – クラウド基盤技術を使用を拡大使用 – 一般ユーザ用ユーザによる用 ● Undercloud – Overcloud の ライフサイクル管理基盤 – クラウド基盤技術を使用を拡大使用 – システム運用者用運用者用 テナント リソース テナント リソース
  11. 11. OpenStack とコンテナ コンテナ時代の実行基盤上にに OpenStack 基盤 – Kolla – Kolla-Ansible – OpenStack Helm – (Airship) – (StarlingX) – TripleO – OpenStack Ansible OpenStack 基盤上にに コンテナ時代の実行基盤 – Magnum – Zun – Kuryr – Fuxi その他 – (Kata Containers) – (Zuul)
  12. 12. OpenStack CaaS 関連プロジェクトプロジェクト プロジェクト 説明 Magnum コンテナ実行基盤構築サービス(サービス(コード、設計、開発、コミュニティ)COEaaS: Container Orchestration Engine as a Service) 対応 COE: Kubernetes, Apache Mesos, Docker Swarm Zun コンテナサービス(CaaS: Container as a Service)CaaS: Container as a Service) Kuryr 各種コンテナ実行基盤で コンテナ実行基盤で OpenStack Networking (CaaS: Container as a Service)Neutron) を拡大利用する 為のコネクタのコネクタ管理 Fuxi 各種コンテナ実行基盤で コンテナ実行基盤で OpenStack Block Storage (CaaS: Container as a Service)Cinder) を拡大利用する 為のコネクタのコネクタ管理➔プロジェクト廃止
  13. 13. OpenStack CaaS 関連プロジェクトプロジェクトマップ Kubernetes / Apache Mesos / Docker Swarm Kubernetes / Apache Mesos / Docker Swarm Zun (CaaS)Zun (CaaS) Magnum ( コンテナ時代の基盤構築 ) Magnum ( コンテナ時代の基盤構築 ) Keystone (RAM 認エバンジェリスト証 ) Keystone (RAM 認エバンジェリスト証 ) Glance (RAMVM イメージ ) Glance (RAMVM イメージ ) FuxiFuxi KuryrKuryr Telemetry (RAM メータ管理リング ) Telemetry (RAM メータ管理リング ) Cinder (RAM ストレージ ) Cinder (RAM ストレージ ) Neutron (RAM ネットワーク ) Neutron (RAM ネットワーク ) OpenStack API Native API Nova (RAMIaaS) Nova (RAMIaaS) Heat (RAM オーケストレーション ) Heat (RAM オーケストレーション )
  14. 14. パイロットプロジェクト OpenStack Foundation が Open Infrastructure に 活動対象を広げる中で始めたを広げる中で始めた広げる中で始めたげる中で始めた中で始めたで始めた始めためた プロジェクトホスティング 開発活動が 18 ヶ月)月継続した後した後 OpenStack Foundation の 公式プロジェクト化プロジェクト化 (OpenStack プロジェクトの 傘下に入る訳ではないに入る訳ではないる中で始めた訳ではないで始めたはない )
  15. 15. https://www.airshipit.org/
  16. 16. Airship とは AT&T が NFVi 用途に開発・公開したに開発・公開した OpenStack 基盤ライフサイクル管理システムシステム – 物理マシン管理機能(コード、設計、開発、コミュニティ) MAAS 使用) – Undercloud に新バージョンリリース Kubernetes + Helm を拡大使用 ● OpenStack Helm の成果物を拡大使用 – Overcloud (RAMOpenStack 基盤 ) の初期構築サービス(・拡張・更新バージョンリリース – 最新バージョンリリースバージョン:未リリースリリース
  17. 17. Airship のトピックアーキテクチャ Airship コンポーネント ● Shipyard :サイトライフサイクル管理システム ● Deckhand : YAML 管理システム ● Drydock :物理システムマシンインストーラ ● Promenade : K8s クラスタデプロイ ● Divingbell :物理システムマシンの構成管理システム ● Armada : Helm Chart 管理システム ● OpenStack Helm : overcloud 構築 ● Berth : K8s 上にの VM 管理システム (Helm)
  18. 18. ブートストラップ環境構築フローフロー (Genesis)
  19. 19. サイト構築フロー/更新リリース「フロー
  20. 20. https://www.starlingx.io/ ※Starling= ホシム運用者用クドリ
  21. 21. StarlingX とは Intel, Wind River が OSS 化した エッジコンピューティング用ソフトウェアスタック – Airship 同様のの OpenStack 基盤のライフサイクル管理 – Wind River Titanium Cloud を拡大ベースに新バージョンリリースしている – 高性能、設計、開発、コミュニティ)低遅延、設計、開発、コミュニティ) HA 、設計、開発、コミュニティ)障害管理、設計、開発、コミュニティ)性能管理 – 用途: ● 5G 、設計、開発、コミュニティ)工業のサポート用 IoT(RAMIIoT) 、設計、開発、コミュニティ)広帯域・大容量 App ● マルチアクセスエッジコンピューティング (RAMMEC) – 最新バージョンリリースバージョン: 2018.10.0
  22. 22. StarlingX のトピックアーキテクチャ StarlingX 主要プロジェクトプロジェクト ● Config ● Fault ● HA ● GUI ● Metal ● NFV ● Update ● Distributed Cloud
  23. 23. StarlingX のトピックソフトウェアスタック StarlingX Edge Node StackStarlingX Edge Node Stack Container NodeContainer Node Compute NodeCompute Node Storage NodeStorage Node Virtualization Infrastructure Manager (RAMVIM) Virtualization Infrastructure Manager (RAMVIM) Carrier Grade Storage Cluster Centralized Local, or SAN Carrier Grade Storage Cluster Centralized Local, or SANInfrastructure OrchestrationInfrastructure Orchestration Configuration Management Configuration Management Software Management Software Management Service Management Service Management Fault Management Fault Management KVMKVM Low Latency Low Latency SR-IOVSR-IOV OVS DPDK OVS DPDK Intel®DPDKIntel®DPDK Virtual Network Functions (RAMVNFs) Virtual Network Functions (RAMVNFs) VMVM vEPCvEPC VMVM vCPEvCPE VMVM OtherOther OSS/BSSOSS/BSS Service Orchestration (RAMONAP)Service Orchestration (RAMONAP) Linux
  24. 24. StarlingX のトピックデプロイパターン 1 台構成 2台構成 3台以上構成 Storage Control Compute VM VM VM Storage Control Compute VM VM VM Compute VM VM VM Compute VM VM VM Compute VM VM VM 物理マシン Storage Control Compute VM VM VM Control Control Storage Storage
  25. 25. StarlingX とコンテナ Undercloud の Kubernetes/Helm 対応作業中で始めた – 元々はは OpenStack のベアメタ管理ル IaaS を拡大使用 – kubeadm を拡大使って Kubernetes を拡大デプロイ – Calico CNI 使用 – Helm もインストールインストール – 早ければければ StarlingX 2019.3 リリースに新バージョンリリース含まれるまれる
  26. 26. https://katacontainers.io/
  27. 27. Kata Containers とは OCI 準拠のコンテナ単位のコンテナ時代の単位 VM 管理システムツール – 各コンテナ毎に新バージョンリリースに新バージョンリリース VM を拡大作成 – セキュリティ強化目的 – Intel Clear Containers, Hyper runV が起源起源 – Kubernetes, Docker で利用可能 – 最新バージョンリリースバージョン: 1.4
  28. 28. 物理マシン Kata Container によるコンテナコンテナ 物理 / 仮想マシン Linux カーネル Namespace App Namespace App ハイパーバイザによる (RAMLinux ホスト OS ) 仮想マシン カーネル (RAM ゲスト OS) Namespace App 仮想マシン カーネル (RAM ゲスト OS) Namespace App 通常のコンテナのコンテナ Kata Containers コンテナ ランタ管理イム運用者用 kata- runtime
  29. 29.  仮想 マシン 仮想 マシン Pod ネーム運用者用スペースPod ネーム運用者用スペース Kata Container のトピックアーキテクチャ kata-proxykata-proxy kata-runtimekata-runtimekata-shimkata-shim  ゲスト カーネル ゲスト カーネル kata-agentkata-agent ハイパーバイザによるハイパーバイザによる コンテナ時代の コマンド基盤開発プロジェクト コンテナ時代の コマンド基盤開発プロジェクト コンテナ時代の exec 仮想シリアル ポート Docker, KubernetesDocker, Kubernetes I/O OCI cmd/spec gRPC gRPC gRPC / Yamux
  30. 30. https://zuul-ci.org/
  31. 31. Zuul とは OpenStack プロジェクトで始めた6ヶ月)年間の利用実績があるがある中で始めた スケーラブルな CI 管理システムシステム – 複数の企業のサポートのプロジェクト/リポジトリ/パッチセット (RAM 以降 PS )のテストを拡大 同時並列実行可能 – 一連のの PS の承認エバンジェリスト順序を依存関係として扱い、途中のを拡大依存関係として扱い、途中のとして扱い、途中のい、設計、開発、コミュニティ)途中のの PS のテストジョブが起源 失敗したら、そのしたら、設計、開発、コミュニティ)その PS 以降の PS 群のテストジョブ(実行中含む)を一旦のテストジョブ(コード、設計、開発、コミュニティ)実行中の含まれるむ)を拡大一旦 キャンセルし、設計、開発、コミュニティ)問題 PS を拡大外した状態で以降のした状態で以降ので以降の PS 群のテストジョブ(実行中含む)を一旦のテストジョブを拡大再実行 – Zuul v3 でジョブを拡大 Ansible Playbook ベースに新バージョンリリース変更 – Gerrit, GitHub, Git, Timer, Zuul トリガー対応 – 最新バージョンリリースバージョン: 3.3.1
  32. 32. Zuul のトピックアーキテクチャ OpenStack Nodepool Builder Nodepool Builder Nodepool Launcher Nodepool Launcher ZookeeperZookeeper Zuul Scheduler Zuul SchedulerZuul WebZuul Web GithubGithub Zuul Executor Zuul Executor Log StorageLog Storage Test Nodes Test Nodes Test Nodes Test NodesTest Nodes Test Nodes Gear man Jo bs Logging Web Hook Node Request Instance CRUDImages SSH from Ansible PR Job Check Log Check
  33. 33. Zuul とコンテナ ● nodepool の master ブランチにに Kubernetes リソースド基盤開発プロジェクトライバ マージ済みみ – namespace リクエストと Pod リクエストに新バージョンリリース対応 ➔ アプリコンテナと仮想マシンとしてのコンテナに新バージョンリリース対応 ● OpenShift リソースド基盤開発プロジェクトライバ レビュー中で始めた
  34. 34. まとめ
  35. 35. コンテナ時代ののトピック OpenStack OpenStack と言うと猫派コンテナ時代の技術は補完関係は補完関係 – コンテナ実行基盤上の OpenStack 基盤 – OpenStack 基盤上のコンテナ実行基盤 – その他コンテナ関連のパイロットプロジェクトコンテナ関連ののパイロットプロジェクト
  36. 36. OpenStack のトピック今後 ● OpenStack から Open Infrastructure への取り組み拡大り組み拡大組み拡大み拡大 – Summit の名称も変更(次回からもインストール変更(コード、設計、開発、コミュニティ)次回からから Open Infrastructure Summit ) – パイロットプロジェクトもインストールその一環 ● 安定化・成熟化志向へへ ● 開発者ド基盤開発プロジェクトリブン → ユーザ会 吉山晃ド基盤開発プロジェクトリブンへの変化 – User Committee の強化 – SIG の立ち上げち上げ上げ ● Self Healing, Scientific, Public Cloud, Edge, K8s, Upgrade, Security 等 – Forum から開発方針へのフィードバックへのフィードバック ● First Forward Upgrade, Extended Maintenance
  37. 37. ご静聴ありがとうございました静聴ありがとうございましたありがとうご静聴ありがとうございましたざいました

×