CNCFが公開したクラウドネイティブ成熟度モデル:レベル3―クラウドネイティブ環境をスケールさせる取り組みとは完訳 CNCF「クラウドネイティブ成熟度モデル」(4)

CNCFが公開した「クラウドネイティブ成熟度モデル」を翻訳してお届けする本連載。成熟度のレベル3では、レベル2で本番に移行したクラウドネイティブ環境をスケーリングする。この段階において、人(組織)、プロセス、ポリシー、テクノロジー、ビジネス成果の観点から何を行うべきかを説明した部分を掲載する。

» 2023年02月07日 05時00分 公開
[三木泉@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 本連載では、Cloud Native Computing Foundation(CNCF)がWebサイトで公開した「クラウドネイティブ成熟度モデル」を翻訳し、成熟度段階ごとに掲載している。

 これは、組織におけるクラウドネイティブの取り組みを5つの成熟度段階に分け、各段階で具体的に何をすべきかを示すガイド文書。テクノロジー面をカバーしているのはもちろんのこと、人(組織)、プロセス、ポリシー、ビジネス上の成果(ビジネスアウトカム)の側面からも、やるべきことを示している。

  今回は「レベル3―スケール編」。レベル1でクラウドネイティブの概念検証(PoC:Proof of Concept)を終え、レベル2で最初のアプリケーションを本番に移行した組織は、レベル3で運用をスケールさせていく。この段階で何に注力し、具体的に何を実行すべきかについて説明した部分を掲載する。

 なお、本連載では、2023年1月初めにWeb公開された時点での内容を翻訳している。翻訳の文責は@IT編集部 三木泉にある。

連載目次

第1回 プロローグ編

第2回 レベル1―構築編

第3回 レベル2―運用編

第4回 レベル3―スケール編(本記事)

第5回 レベル4―改善編

第6回 レベル5―最適化編

*ライセンスについての注意書き:本記事はCC BY 4.0に基づき、「Cloud Native Maturity Model」を翻訳して掲載するものです。上記URLのページ最下部に、「©2023 The CNCF Authors | Documentation Distributed under CC BY 4.0」と記載されています。


レベル3―スケール

チームの能力が成長しています。スケーリングのためのプロセスを確立します。

人についての概要

 チームの能力は成長し、Dev、Ops、セキュリティの各チームがコミットしています。Cloud Native Center of Excellence(訳注:クラウドネイティブ関連活動の中心となる仮想組織)で専門知識を明確化します。クラウドネイティブは戦略における一級市民となります。

組織変革

 人々の能力が向上するにつれて、ベストプラクティスをサポートできるよう、組織構造が整備されます。あなたは公式に責任を担うことになります。この構造では、アジャイルやスクラムを取り入れることがパターンとしてよく見られます。

チームと分散化

 集約度が増し、責任が明確化して理解されるようになります。一方で、プロセスにおける速度の低下やボトルネックが見られるかもしれません。物事が遅くなり始める可能性があります。

セキュリティ

 リスク許容度は、クラウドネイティブセキュリティトレーニングのどのレベルに焦点を当てるかに影響します。そのため、スキル育成を積極的に進めています。

開発者のアジリティ

 チームは、複雑なリリースやコンプライアンステストの組み込みなどを含め、全ての環境について継続的デリバリを実装しました。運用チームは、クロスファンクショナルチームに統合されますが、各人は必ずしも全ての機能を実行できるわけではありません。

開発者のスキルアップ

 トラブルシューティングの反復可能なサイクルを導入して、変更やイテレーションを迅速に実行できるようにします。

CNCFの認定資格

 組織は、レベル2またはレベル3の前後で、CKAおよびCKADの認定を検討するのがいいでしょう。

Certified Kubernetes Administrator(CKA)
このプログラムは、Kubernetes管理者の職務を遂行するためのスキル、知識、能力を持っていることを保証します。

Certified Kubernetes Application Developer(CKAD)
この試験は、Kubernetes上のクラウドネイティブアプリケーションを設計、構築、構成、公開する能力を認定します。

プロセス

プロセスについての概要

 組織全体で標準化を進め、オンボーディングを改善して、クラウドネイティブのフットプリントと認識を広げます。 フィードバックループを構築します。 反復性の実現に投資します。 誰もがアクセスできるツールを用意していますか? Gitサービスはありますか? 時間や労力を節約したり、重複を避けたりするために、ワークスペースコラボレーションを導入しましたか? 最後に、リソースの使用状況を測定するためのプロセスはどうなっていますか? レベル3では、コンテナの使用状況、CPUとメモリ(ランタイムとアップタイム)を測定する必要があります。 ソフトウェアリリースを対象とした自動化とプロセスの適用を、プラットフォームに広げます。 アップグレードやパッチ適用などのライフサイクル運用、特にCVEや重要な更新には、さらなる自動化と、コードとしてのインフラストラクチャ(IaC)の導入が役立つでしょう。

CI/CD

 CI/CDプロセスを中心としたセンター・オブ・エクセレンスを導入しています。

変更管理

 コード品質(自動化ツールで測定)が向上しており、CIとテストの成功が頻繁に見られています。

セキュリティ

 継続的な自動スキャニングを実装し、設定ミスやセキュリティ上の問題にフラグを立てます。

監査とログ

監査を開始し、初期的なアラートを実装します。ノイズをフィルタリングします。

ポリシー

ポリシーについての概要

 コードとしてのポリシーを実装し、CIパイプラインに組み込みます。

ポリシーの作成

 セキュリティ、効率、信頼性に関する洗練された指標に基づいて、ポリシーを作成します。

コンプライアンス

 ポリシーのコンプライアンスと監査は、Kubernetesで自動化された手段を通じて実行されます。 場合によっては、コードとしてのポリシーの初期的な開発を含めます。

テクノロジー

テクノロジーについての概要

この段階で、スケーリングを開始します。 ツール群はより標準化されています。 リリース ツール、シークレット管理、ポリシーツールを用意します。 また、ある程度の賛同を組織全体から得られるようになってきており、これが取り組みの前進に役立ちます。 この段階では、本番環境での評価、実装、および実行に集中するため、最も多くのツールを実行することになります。

インフラストラクチャ

 クラウドインフラストラクチャに対する信頼を構築する一環として、インフラストラクチャの動作を可視化する必要があります。 監視、アラート、リソース利用に関する機能を開発することが焦点となるでしょう。 以前はCPUやRAMなどのマシン固有のプロパティを考えていたかもしれませんが、この段階ではクラスタリソースのメトリクスも取り込むことが重要な考慮事項になります。さらに、本番環境での問題についてはレベル2の経験に基づき、修復に時間を費やすよりも、故障したコンポーネントの入れ替えを考えます。さらに、Kubernetesを使って、ソフトウェアを管理するのと同じようにインフラストラクチャを管理することも考えます。

コンテナとランタイムの管理

 レベル2では実験的な取り組みを行っていましたが、レベル3では、ワークロードを増やしてスケールするにつれて、複数のKubernetesクラスタにまたがる継続的な可視化が求められます。このために、クラスタ全体で一貫したツールが必要になります。 これには自動スキャンと、ランタイムでコンテナとクラスタ内で発生していることについてのオブザーバビリティ(可観測性)などがあります。 CNCFプロジェクトは適切な選択肢を用意しています。 アラートとダッシュボードを配置します。

アプリケーションのパターンとリファクタリング

 文化面でいえば、組織は「サーバ」ではなくサービスについて考え始めています。 マイクロサービスは組織内で受け入れられ、適切な場合においてはデフォルトで使用されるようになりました。

アプリケーションのリリースと操作

 一貫性は重要であるため、アプリケーションリリースのためにHelmチャートを書き始めているかもしれません。また、FluxやArgoを使用してGitOpsへの最初の一歩を踏み出し、リリースと運用を管理するためのコントローラーを導入するかもしれません。

セキュリティとポリシー

 コードとしてのポリシーによって、デプロイのガードレールとセキュリティのベストプラクティスを強化し、自動化する時が来ました。 適用のための戦略を決定してください。 適切なところで、関連するサードパーティーのベンチマークと標準の採用を開始してください。 異常や脅威を検出するテクノロジーの採用も検討してください。

テストと問題の検出

 前レベルでの実験的な導入に基づいて、これを本番環境に実装し、優れたアラートとダッシュボードを組み込んで、オブザーバビリティ機能を構築します。

ビジネス成果

 レベル3では能力が向上し、規模が拡大します。 前段階まで、チームはクラウドネイティブを学ぶことに注力してきました。 本段階では、チームが蓄積した経験次第でビジネス成果が高まります。 チームが自信を持てるようになると、セキュリティ、効率、信頼性に関する能力が高まり、定義されたスケーリングのプロセスを実装できるようになります。 チームが改善するにつれて、これら全てが自社のサービスとアプリケーションに影響を与えます。 ビジネス側は、運用がよりスケーラブルになっていることに気付き始めるはずです。そうでない場合は、スケーリングを説明するためにコミュニケーションのやりかたを改善するか、実際のスケーリング結果を確認して、最適化をさらに進める必要があります。

 レベル3では、アプリケーションまたはサービスを、単一障害点や期待外れのパフォーマンスから守ります。

 モニタリングが実装されています。 これは、何が機能しているか、機能していないかについてのレポートを、ビジネス側が取得するのに役立ちます。モニタリングでは非常に具体的なデータが得られるかもしれませんが、リソースの使用状況についての洞察も提供し、これはコストとパフォーマンスをコントロールして可用性を確保するのに役立ちます。

 最後に、古い状態と新しい状態を比較して、クラウドネイティブの柔軟性とスケーラビリティを観察する必要があります。

  • Infrastructure as Codeの利用。これにより、数日ではなく数分でサーバをデプロイできます。 ビジネス用語に翻訳すると、市場投入までの時間が短縮できます。
  • セキュリティ攻撃の監視。ビジネス用語に翻訳すると、リスクとデータ盗難を低減します。
  • 可観測性(ロギング、メトリック、トレース)。 ビジネス用語に翻訳すると、アプリケーションの動作やビジネス需要の変化への迅速な対応、カスタマーエクスペリエンスの向上、サービスの低下による売上損失の減少につながります。
  • 再利用性の向上。コンテナとマイクロサービスにより、以前のプロジェクトで既に利用したコンポーネントを簡単に再利用できます。ビジネス用語に翻訳すると、1. 自社の提供する複数のアプリにまたがり、ブランドイメージの一貫性と機能の標準化を保証します。 2. これらのアプリを使用している顧客の学習曲線が低くなります。

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。