Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Cloud native computing

Some slides translated into Japanese. Liensed under Apache Licence 2.0.

  • Inicia sesión para ver los comentarios

Cloud native computing

  1. 1. Cloud Native Computing Some slides translated into Japanese
  2. 2. 本ファイルについて 本ファイルは、クラウドネイティブについての理解に役立ちそうな、CNCFのスラ イドの幾枚か和訳したものです。 本ファイルの訳の一部は、以下のスライドを参考にしています。 ●コンテナ導入概要資料2018 https://www.slideshare.net/zembutsu/container-and-cloud-native-overview-distribution 本ファイルのスライドは、元としているCNCF LANDSCAPEのリソース同様、 Apache License 2.0の下でご利用ください。 クラウドネイティブコンピューティングの学習の一環として訳したもので、理解、 用語知識に欠ける段階での暫定訳です。誤訳の指摘、訳語の提案などがあ れば、ぜひお寄せください。
  3. 3. Cloud Native Computing Foundation What is CNCF? https://www.cncf.io/ ●「CNCFは、クラウドネイティブコンピューティングを普遍的かつ 持続可能なものにするためのオープンソースソフトウェア団体 です。クラウドネイティブコンピューティングは、オープンソース ソフトウェアスタックを使用して、アプリケーションをマイクロサー ビスとして展開し、各部品を独自のコンテナにパッケージング し、これらのコンテナを動的に編成してリソース使用率を最適 化します。クラウドネイティブテクノロジにより、ソフトウェア開発 者は優れた製品をより迅速に構築できます。」 オーケストレーション(Kubernates)に始まり、コンテナラン タイム(containerd、rkt)、ロギング(Fluentd)、モニタリング、 ストレージなどで複数のプロジェクトをホスト KubeCon+CloudNativeConを主宰 プラチナメンバーとしてAWS、GCP、Microsoft Azure、 redhat、Oracle、VMwareなどが参加 https://www.cncf.io/about/members/
  4. 4. クラウドネイティブとは What is Cloud Native
  5. 5. Cloud Native Trail Map (v20180925) http://l.incf.io WHAT IS CLOUD NATIVE ●クラウドネイティブ技術はパブリック、プ ライベート、ハイブリッドクラウドのような 動的な環境において、モダンでスケー ラブルなアプリケーションを構築し実行 できる力を組織に与えます。 ●このテクニックは、弾力性があり、管理 可能であり、監視可能な、疎結合のシ ステムを実現します。堅牢な自動化と 連携することで、エンジニアは大規模 な影響のある変更を、最小限の苦痛で、 定期的かつ予測できる状態で行えるよ うにします。 ●Cloud Native Computing Foundationは、 このパラダイムの採用を加速するため、 オープンソースで、ベンダー中立なプロ ジェクトとしてのエコシステムの育成と維 持を模索します。私たちは誰もがこれら のイノベーションに到達できるよう、業 界最先端のパターンを民主化します。
  6. 6. クラウドネイティブの歩き方 Cloud Native Trail Map
  7. 7. Cloud Native Trail Map (v20180925) http://l.incf.io CLOUD NATIVE TRAIL MAP ●The Cloud Native Landscape l.cncf.ioに挙げられた選択肢は非 常に多数にのぼります。 ●このCloud Native Trail Mapは、 オープンソースとクラウドネイティブ 技術を活用するための推奨プロセ スです。各ステップで、ベンダーの サポート提供を受けるか、独力か を選ぶことができます。 ●またStep#3以降の各項目は利用 者自身の状況に合わせて検討す ればよい任意項目です。 HELP ALONG THE WAY A)トレーニングと認定 B)コンサルティング支援 C)CNCFのエンドユーザーコミュニ ティへの参加
  8. 8. Cloud Native Trail Map (v20180925) http://l.incf.io 1.コンテナ化 CONTAINERIZATION ● Dockerコンテナで一般的に行う ● あらゆる大きさのアプリケーションと依存関係 (エミュレータ上で実行するPDP-11のコード ですら)をコンテナ化できる ● 時間がたてば、適切なアプリケーション分割 を求めるようになり、次世代の機能をマイクロ サービス として書くでしょう 2.CI/CD ● 継続的インテグレーション/継続的デリバリ (CI/CD)をセットアップすると、ソースコードに 対する変更の結果、自動的に新しいコンテナ が構築、テストされ、定期的にステージング 環境に展開するだけでなく、おそらくは本番環 境にすら展開する。 ● ロールアウト、ロールバック、テストを自動的に 行うようセットアップする。 3.アプリケーションの定義とオーケストレー ション ORCHESTRATION & APPLICATION DEFINITION ● Kubernetesは業界トップのオーケストレーショ ン・ソリューションです。 ● 認証をうけたKubernetesディストリビューショ ン、ホステッドプラットフォーム、インストーラー から選択すべきです。(cncf.io/ck参照) ● 極めて複雑なKubernatesアプリケーションで あったとしても、Helm Chartが定義、インス トール、更新を支援します。
  9. 9. Cloud Native Trail Map (v20180925) http://l.incf.io 4.可観測性&分析 OBSERVABILITY & ANALYSIS ●監視、ログ記録、追跡のためのソリュー ションを選択すること。 ●CNCFのプロジェクトであるPrometheus を監視、Fluentdをログ記録に、 Jaeger を追跡に検討してください。 ●追跡には、Jaegerの互換実装である OpenTracingも参照してください。 5.サービスメッシュとディスカバリー SERVICE MESH AND DISCOVERY ●CoreDNSはサービスディスカバリーに役 立つ迅速・柔軟に使えるツールです。 ●EnvoyとLinkerdはどちらもサービスメッ シュアーキテクチャを可能にします。 ●これらはヘルスチェック、ルーティング、 ロードバランシングを提供します。 6.ネットワーキング NETWORKING ●より柔軟なネットワークを実現したけれ ば、 Calico、Flannel、Weave Netといっ たコンテナネットワークインターフェース (CNI)準拠のプロジェクトを利用します。
  10. 10. Cloud Native Trail Map (v20180925) http://l.incf.io 7.分散データベースとストレージ DISTRIBUTED DATABASE AND STORAGE ● シングルデータベースより優れた回復性とス ケーラビリティが必要なときは、MySQLを シェーディングでスケールさせるVitessが良 い選択肢になります。RookはKubernetesに 多様なストレージソリューションを統合するスト レージオーケストレーターです。 8.ストリーミングとメッセージング STREAMING AND MESSAGING ● JSON-RESTより高いパフォーマンスが必要 な時は、gRPCの利用を検討します。NATSは pub/subメッセージングミドルウェアです。 9.コンテナ―実行環境 CONTAINER RUNTIME ● 他のコンテナ―実行環境を使うこともできま す。もっとも一般的なのはcontainerd、rkt、 CRI-O で、いずれもオープンコンテナーイニ シアチブ(OCI)準拠です。 10.ソフトウェア配布 SOFTWARE DISTRIBUTION ● ソフトウェア配布を安全に行う必要があるとき は、 The Update Framework(TUF)の実装で あるNotaryを評価してみて下さい。
  11. 11. クラウドネイティブ参照アーキテクチャ Cloud Native Reference Architecture
  12. 12. CNCFのエンドユーザー参照スタック CNCF End User Referece Stack https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf ストレージ Storage コンピュート Compute ネットワーキング Networking プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義 Application Definition インフラ(CNCFの定義の範囲外) Infrastructure (Out of Scope) コンテナー化 Containerized 分散オーケストレーションと管理 Distributed Orchestration and Management マイクロサービスパターン Microservices Patterns
  13. 13. クラウドネイティブの参照アーキテクチャー Cloud Native Reference Architecture https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf インフラストラクチャー (ベアメタル/クラウド) Infrastructure (Bare Metal/Cloud) プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義/開発 Application Definition / Development
  14. 14. アプリケーション定義/開発層 ●アプリケーションの組立て ●アプリケーションの提供 ●アプリケーション開発フレームワーク ●アプリケーションの運用ツール集 ●CI/CD(継続的インテグレーション/デリバリー) ●イメージレジストリ/リポジトリ ●ガバナンスと運用ツール Cloud Native Reference Architecture https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf インフラストラクチャー (ベアメタル/クラウド) Infrastructure (Bare Metal/Cloud) プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義/開発 Application Definition / Development
  15. 15. オーケストレーションと管理層 ●可観測性 ▼閲覧/フィルター/再生 ▼監視/追跡/ストリーム/ログ ▼ビジネスインテリジェンス ●オーケストレーション ●コーディネーション ▼コンフィギュレーション ▼ディスカバリー ▼DNS ●サービス管理 ▼ルーティング/プロキシ/ロードバランサー ▼ポリシー/配置/トラフィック管理 Cloud Native Reference Architecture https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf インフラストラクチャー (ベアメタル/クラウド) Infrastructure (Bare Metal/Cloud) プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義/開発 Application Definition / Development
  16. 16. ランタイム層 ●リソース管理 ▼コンテナーのスケジューリング ▼コンテナーのデプロイメント ●クラウドネイティブ – ネットワーク ▼ネットワークセグメンテーション ▼SDNとAPI(例えばCNI、libnetwork) ●クラウドネイティブ – データ ▼データ管理 ▼データベースとAPI ●包括的なコンテナーサービス ▼(なんらかの)PaaS/プラットフォームサービス Cloud Native Reference Architecture https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf インフラストラクチャー (ベアメタル/クラウド) Infrastructure (Bare Metal/Cloud) プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義/開発 Application Definition / Development
  17. 17. プロビジョニング層 ●OS管理 ●安全(Secure)なイメージ ●ホストレベルのツールによるDevopsデプロイメ ントとプロビジョニング Cloud Native Reference Architecture https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf インフラストラクチャー (ベアメタル/クラウド) Infrastructure (Bare Metal/Cloud) プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義/開発 Application Definition / Development
  18. 18. インフラストラクチャー(ベアメタル/クラウド) 層 ●参照アーキテクチャーの一部ですが、CNCFプ ロジェクトではインフラストラクチャーベンダーま たはクラウドを特定しないので、プロジェクトの 範囲外です。 ●将来的に「認証」を提示する可能性はあります。 Cloud Native Reference Architecture https://github.com/cncf/presentations/blob/master/2016-software-circus/what-is-cloud-native/what-is-cloud-native.pdf インフラストラクチャー (ベアメタル/クラウド) Infrastructure (Bare Metal/Cloud) プロビジョニング Provisioning ランタイム Runtime オーケストレーションと管理 Orchestration & Management アプリケーション定義/開発 Application Definition / Development

×