DevOps テクノロジについて探る
テクノロジは、DevOps 手法を実現するために継続的に進化しています。 適切なソリューションを選択することは、DevOps の過程にあるチームの力になります。
ここで Azure DevOps の出番です。 Azure DevOps は、ソース管理 (Git または Team Foundation) から継続的インテグレーション、リリースの自動化、さらには運用環境の監視まで、ツールチェーン全体を網羅しています。 最近、「The Forrester Wave™: Continuous Delivery And Release Automation Report (The Forrester Wave™: 継続的デリバリーとリリース自動化に関するレポート)」においてリーダーであるとランク付けされました。
Azure Boards、Azure Pipelines、Azure Repos、Azure Test Plans、Azure Artifacts などの最新の開発サービスを使用すると、より適切に計画し、円滑に共同作業を進め、迅速にリリースすることができます。
Azure Boards
実証済みのアジャイル ツールを使ってチーム全体で作業の計画、追跡、議論を行い、ユーザーにより速く価値を提供できます。
Azure Pipelines
任意の言語、プラットフォーム、クラウドと共に動作する CI/CD を使って、ビルド、テスト、およびデプロイを実行できます。 GitHub またはその他の任意の Git プロバイダーに接続し、継続的にデプロイします。
Azure Repos
無制限のクラウドホスト型プライベート Git リポジトリを利用し、プル要求と高度なファイル管理機能を持つ優れたコードを共同作業で構築できます。
Azure Test Plans
手動および探索的テスト ツールを使用して、自信を持ってテストとリリースを行うことができます。
Azure Artifacts
パッケージの作成、ホスト、共有をチームで行い、1 回のクリックで CI/CD パイプラインに成果物を追加することができます。
Note
Azure DevOps は、よく使われている OSS ツールとテクノロジが統合されているオープン プラットフォームです。
セルフサービス Dev/Test 環境を管理する
IT 組織にとって一般的な DevOps の課題は、開発環境とテスト環境についてのプロジェクトの需要に対応することです。
Azure Lab Services を使用すると、Azure クラウドの開発環境とテスト環境の環境管理が簡単になります。
これを使用すると、セルフサービスのアクセスと、コストを管理し、適切なイメージと成果物の使用を強制するポリシーをチームに提供できます。 テンプレート、カスタム イメージ、数式を使用して環境を再現すること、Azure Pipelines とオーケストレーションすること、REST API を使用して統合することもできます。
コードとしてのインフラストラクチャを使用して迅速にデプロイする
コードとしてのインフラストラクチャにより、ソース コードを使用したインフラストラクチャの管理が可能になり、反復的で信頼性の高いデプロイが実現します。
Azure Resource Manager には、コード機能としての構成が用意されており、Azure から環境の構成をそのまま管理し、アプリケーション構成リソースをバージョン管理された成果物として扱い、環境間でシームレスにコードを移行することができます。
Azure は、Terraform、Ansible、Chef、Puppet、SaltStack などのサードパーティー製ツールもサポートしています。
継続的なセキュリティを確保する
Azure Security Center を使用すると、組織は、1 つの統合されたビューでクラウド セキュリティ状態を詳細に把握し、制御することができます。 次のような機能があります。
- 複数のソースからのセキュリティ データ収集
- 既存のセキュリティ ワークフローとの統合
- クラウド リソースの簡単なオンボード
- 継続的なセキュリティ評価
- 一元化されたポリシー管理
- コンプライアンス対応レポート
- ハイブリッド ワークロードのサポート
Microsoft では、毎月、3,000 億人のユーザー認証を分析し、2,000 億件のメールにスパムとマルウェアがないか確認しています。 また、Microsoft は、クラウド インフラストラクチャの選択肢、プラットフォーム、およびそれらのアクティビティについても、かつてないほどの視野を持っています。 このような視野は、オンプレミスの世界では前例がありません。
よりスマートな分析情報を迅速に得る
Azure の監視ソリューションには、スマートなしきい値が事前に定義されたモニターと、データを表示するための直感的でカスタマイズ可能なダッシュボードが用意されています。
Azure Monitor には、すべての Azure インフラストラクチャに対するメトリックが用意されています。 Log Analytics と Application Insights を使用すると、インフラストラクチャとアプリケーションについてさらに優れた分析情報を得られます。
クラウドの正常性を監視するために、Log Analytics によって次のことが行われます。
- 任意のソースからデータを収集して保存する
- 深いオペレーション インサイトを得る
- 問題を迅速に検出し、診断、修正する
好みのツールとクラウドを選ぶ
Azure DevOps には、既存の投資を最大限に生かすことができる選択肢があります。
自分にとって最適なツールを選んでください。 Linux、Java、PHP Web アプリケーション プラットフォームに関するサービスとしてのインフラストラクチャ (IaaS) のサポートを得られます。 Linux とオープンソースのコンポーネントを Azure で開発およびテストすることができます。 Microsoft のツール、オープンソース、またはお気に入りのサードパーティー製ツールを組み合わせて使用してワークフローを作成できます。 お気に入りのツール、既に持っているスキルを利用し、自分のデータ ソース、所有するオペレーティング システムを使い、自分のデバイス上で、事実上すべてのアプリケーションを実行できます。
Dojo クラスルームのブートストラップ
Azure のエンドツーエンド ソリューションを使用すると、チームはアプリケーション ライフサイクルの各フェーズで DevOps 手法を実装できます。
- Azure Boards、Azure Dashboard、Azure Repo & GitHub、および Azure Security Center を使用して、クラウドで計画します。
- Azure Lab Services を使用して、クラウドで構築します。
- Azure Test Plan、Security Code Scan、OSS Component Compliance、Azure Dynamic Testing を使用して、クラウドで統合します。
- Azure Boards、Azure Pipelines、Azure Repos、Azure Artifacts を使用して、クラウドでリリースします。
- Azure Bots と Teams を使用して、クラウドで共同作業します。
- Azure Monitor、Azure Policy、Azure App Insights、Azure Security Center を使用して、クラウドで運用します。
これら DevOps テクノロジに人やプロセスを組み合わせることで、チームは顧客に絶えず価値を提供することができます。
Azure でこれらの DevOps 機能の堅牢な統合を使用すると、自動プロビジョニングにより Dojo クラスルーム ラボをブートストラップし、マスター クラスで実践的なエクスペリエンスを実現できます。
Dojo クラスルーム環境には、ACR (Azure Consumed Revenue) による追跡など、没入型の Dojo クラスルームに必要なすべてのものが含まれています。