日頃より、弊社をご愛顧いただきまして誠にありがとうございます。この度、弊社は商号を「ゴーツーグループ 株式会社」から「ゴーツーラボ 株式会社」に変更いたしました。詳細については、「商号変更のお知らせ」をご参照ください。
DevOps 革命はグローバル経済で広がりをみせているデジタル化の重要な基盤です。DevOps はソフトウェア開発、展開、イテレーション処理を始めから終わりまで企業規模で改革することであり、より良いソフトウェアをより速く市場に送り出すことを目的としています。このホワイト ペーパーでは、現代の企業環境において「始めから終わりまで」が何を意味するかに答えることを目指しています。適切に計画、実装、および管理されたDevOps プロセスは顧客や企業の関係者にとって価値を創出する主要手段となるため、この概念は重要になります。さらにその答えは「どのようにそれを成し遂げるか?」という次の質問につながります。
企業は 1 つ 1 つ異なるため、どんな企業にも通用するような万能なソリューションはありません。「始めから終わりまで」という質問に対する一連の考え方を以下に提示し、これを企業全体での DevOps 戦略に関する重要な決定を下す際の初期の土台としたいと考えています。
これらのアプローチでは、「始めから終わりまで」をそれぞれ異なる意味で解釈しています。この表現は開始点と終着点を意味しています。異なる地点で開始することで、企業は技術だけではなく考え方を近代化することが可能です。
まず、組織の成熟度、能力、および技術の点において自社がどの位置にあるかを評価することから始めます。そこからロードマップを作成できます。答えるべき質問は以下のとおりです。
# 01
# 02
# 03
DevOps のプロセスは、MSA とコンテナ化によって定義された環境の上に構築することで最も効果を発揮します。この枠組みを構築する際に必要となる重要な技術は以下のとおりです。
コンテナ ツールは、実行する必要がある追加データおよびコンポーネント (OS カーネルなど) でマイクロサービスをパッケージ化します。このようなツールを使用する際に重要なポイントは、そのツールが環境全体にわたってコンテナを構築するプロセスを標準化するという点です。コンテナ ツールで群を抜いて人気を誇るのが Docker です。Docker はコンテナ内でアプリケーションを開発、展開、および実行するプロセスを自動化するオープン ソースのプロジェクトです。このツールはチーム全体に一貫した開発環境を提供するため、開発者たちから幅広い支持を集めています。
オーケストレーションは、個々のコンテナどうし、およびコンテナをその場で構築される最終的なアプリケーションに結び付ける管理層です。オーケストレーション層は、サービス品質保証 (SLA) の維持およびホスト上の最適な実行リソースへのサービスの組み入れを担当します。オーケストレーションは MSA モデルの “疎結合” 作用を実装しており、個々の構成要素が独立して動作することを許容しつつ必要な連携をすべて維持しています。Google のオープン ソース ツールである Kubernetes が最も広く採用されているオーケストレーション技術ですが、Docker Swarm もよく知られたツールです。
監視ツールを使用すると、マイクロサービスがどのように利用されているかを確認できます。モノリシック アプリケーション モデルの従来の監視ツールは、MSA やコンテナの疎結合、コミュニケーション、および複数コンポーネントといった性質を解するように作られていません。監視ツールはどこでエラーが発生したか、およびどのマイクロサービスが原因かを正確に示すことができます。Prometheus が監視ツールとして高い評価を得ています。
環境が新しい開始点を提示するとするなら、この見解での終着点は継続的インテグレーション/継続的デリバリー (CD/CD) パイプラインの構築になります。CI/CD 技術を組織のニーズに合わせるという点では、どんな組織にも通用するような万能なソリューションはありません。技術評価を開始するにあたって、候補となるツールの適性を計るための枠組みを確立するためにいくつかの質問に答える必要があります。
# 01
# 02
# 03
# 04
こうした問題の多くは、マネージド サービスおよびクラウド ホスティングに加えて、統合スイートを採用することで解消できます。統合の大部分はスイート間で既に行われていますが、これらのソフトウェアはオープン ソースがベースとなっているため、DevOps ツール エコシステムの中核であるその他の技術とより簡単にリンクできます。
たとえば、Atlassian 社は CI/CD パイプライン関連の技術を提供しています。Atlassian Bitbucket は Git と統合してコードのプルと発行を行います。Atlassian ツールは自社運用サーバーにインストールするか、またはクラウドにホストできます (クラウドでは Bitbucket は Bitbucket Pipelines と呼ばれます)。Atlassian Bamboo は新しいソフトウェアのビルド、テスト、およびデリバリーを行い、Bitbucket とも統合できます。また、機能を追加するためのサードパーティ製プラグインや特定のテスト スイートを利用できるオンライン マーケットプレイスにもアクセスできます。
オーケストレーション ツールとしては Jenkins が事実上の標準です。Jenkins は DevOps の開発側と運用側の双方のほとんどのツールセットと連携します。CloudBees 社は Jenkins のオープン ソース コミュニティの主要メンバーであり、CI/CD のデリバリーと展開の側面に特化した幅広いツール群を提供しています。Jenkins には、自動化機能およびパイプラインのどこにボトルネックがあるかを判断するための分析機能が備わっています。CloudBees Core はツール群を利用する複数のチームとアプリケーションの管理を支援します。
これらの統合スイートではすべて、マネージド クラウド ホスティングおよびマネージド サービスを利用できます。こうした技術の日々の管理をプロバイダーに任せたとしても、利用者側の制御の余地を減らすことにはなりません。単に、チームがライセンスの管理やクラウドの準備に煩わされることなく本来の仕事に注力できるというだけのことです。プロバイダーを選定する際、現在利用している技術に対する経験が豊富な提携会社と、ホスティングに選んだクラウド プロバイダーを探します。AWS、Microsoft Azure、Google Cloud などはすべて、異なる手法でプロビジョニングや共有セキュリティ プロトコルなどの作業を行っています。作業をすべて請け負ってくれるマネージド サービス会社を選択するようにします。
検討すべき最後の点ですが、おそらくこれが最も重要な点です。「始めから終わりまで」は、今日に始まり未来につながっていくことを意味すると解釈できます。となると、また別の質問が沸き上がります。自社のビジネスはどのように進化していくのか? 成長や吸収合併、新しいやり方に対応していくにはどのような選択肢があるか?もはやハードウェアやソフトウェアの管理にとどまらず、未来へのロードマップが必要になります。
顧客満足度、組織の効率性、および企業の価値創出構造を下支えする IT 運用を戦略的に計画するには、新しい考え方が必要であることを経営幹部に印象付けることが重要です。変化の速いグローバル経済では、自社の DevOps ニーズを絶えず評価し続けることになります。自社と似たような環境からの事例情報を集めつつ、DevOps 技術に関連するオープン ソース コミュニティでの開発状況にも継続的に気を配る必要があります。実務サポートにのみならず、社外の知識ややり方を授けてくれる信頼できるアドバイザーが、この新しい世界での IT チームの重要な一部になります。
DevOps は企業に新しいソフトウェア構築方法をもたらします。DevOps が成熟すると、顧客と関係者に価値を創出する手段となります。始めから終わりまで、技術はこうしたことをどのように行うべきかを明確にしてくれます。
しかしながら、戦略計画から技術の展開や管理のロードマップ作成に至るまで正しく行ったとしても、移り変わりの速い世の中で競争力の高いプレイヤーになるための道のりは厳しいものです。終着点のない旅を進んでいくには信頼できるアドバイザーが必要です。その旅の計画の 1 つは、誰と旅を共にしたいかを決定することです。
ゴーツーグループは、製品ライセンス購入、導入支援、運用支援、ユーザー研修など、貴社がアトラシアン製品を活用して業務の効率化を図るお手伝いをします。