CI/CDの現場への定着も手厚くサポート─圧倒的なスピードのDevOpsを実現する「CircleCI」のインパクト
開発と運用を一体化させたDevOpsの手法によってソフトウェアのリリースと改善のスピードを高めるうえでは、CI(継続的インテグレーション)/CD(継続的デリバリー)のためのツールとして何を選ぶかが重要なポイントとなる。そのCI/CDツールとして、デジタル時代をリードする新興のテクノロジー企業から製造系・金融系の大手企業に至るまで、幅広い層の企業に支持されているのが「CircleCI(サークルシーアイ)」だ。同製品の持つ強みを開発・提供元であるCircleCI社のキーパーソンに聞いた。
DevOpsによる生産性向上を
包括的にバックアップ
「CircleCI」は、CI(継続的インテグレーション)/CD(継続的デリバリ)の効率化に特化したツールとして、およそ10年の歴史を持つ製品だ。主にクラウド型のサービスとして提供されており、開発・提供元のCircleCI社は現在(2022年5月時点)、日本を含む4カ国6都市に開発・営業・顧客サポートの拠点を展開し、世界約100万人の開発者をCircleCIユーザーとして擁している。CircleCIはすでに数多くの日本企業にも導入され、その顧客層は、テクノロジー系の新興企業から、製造・金融・通信などの領域で確固たる地位を築いてきた大手企業(エスタブリッシュカンパニー)までと多彩だ。
CI/CDツールの選択肢は数多い。その中でCircleCIが広範な企業・開発者から支持されている理由について、CircleCI社のソリューションエンジニア、根本征氏はこう説明する。
「開発者がCI/CDツールを導入する本来の目的は、開発の作業に専念し、生産性を最大化することにあります。そのための機能とサポートサービスを包括的に提供している点が、CircleCIと他のツールとの決定的な違いであり、エスタブリッシュカンパニーを含む広範なお客さまから選ばれている最大の理由です」
そうしたCircleCIの大きな特色の一つは、多様なプラットフォームに対応したCI/CDパイプラインの構築やメンテナンスに手間がかからないことだ。例えば、オープンソースソフトウェア(OSS)を使ってCI/CDパイプラインを形成しようとした場合、OSごとに細かな設定やメンテナンスが必要となる。それに対してCircleCIのクラウド環境では、LinuxやWindows、macOSといったマルチのOSやDockerなどのコンテナ環境に対応したパイプラインがあらかじめ用意され、サービスとして提供されている。
「DevOpsを採用する開発の現場では、多様なOSやDockerなどのコンテナ環境に対応したソフトウェア(サービス、アプリケーション)のリリースと改善のスピードを向上させる必要があるはずです。CI/CDパイプラインはそのための仕組みと言えますが、その構築、メンテナンスに手間がかかるのでは意味を成しません。CircleCIをお使いいただければ、そのような手間をかけずにマルチのプラットフォームに対応したソフトウェアの生産性を高めることが可能になります」(根本氏)
並列処理とテスト分割で
ハイスピードでのデプロイを可能に
加えて、CircleCIでは、CI/CDにおけるビルド、テスト、デプロイのスピードや効率性を高める仕組みとして「カスタムリソース」「テスト分割」「SSHデバッグ」「Insightsダッシュボード」といった特徴的な機能が提供されている(図参照)。
CircleCIには、ビルド、テスト、デプロイのスピードや効率性を上げる機能が搭載されている
これら4つの機能のうち「カスタムリソース」とは、LinuxやWindows、macOS、Dockerといったマルチな環境下でのビルド、テスト、デプロイのスピードアップに向けて、コンピューティングリソース(CPU・RAM)を自在にカスタマイズできる仕組みを指している。
また、CircleCIのクラウド環境では、最大80件までのビルドの同時実行・並列処理を可能としているほか、「テスト分割」の機能によって複数のコンテナにおけるテストを自動分割して並列実行することもできる。これにより、ビルドのスピードをさらに高めることが可能になる。
「CI/CDで多く見られる問題の一つは、開発組織が拡大し、ソフトウェアコードやテストコードが増大するにつれて、ビルドとテストに要する時間が膨らみ、それがデプロイのスピードに負の影響を与えてしまうことです。CircleCIは、そうした問題の発生を防ぐ『業界最速レベルのデプロイ』を可能にするツールです。実際、CircleCIの採用によって、デプロイのスピードを従来の何倍にも高めたお客さまは数多くいらっしゃいます」(根本氏)
デバッグとコーディングの効率性も
大幅にアップ
一方、前出の「SSHデバッグ」は、ジョブ実行中のビルド環境にSSH経由でセキュアにアクセスし、問題が発生した原因を迅速に見つけることができる機能だ。
「この機能によって、ビルド失敗時に要するデバッグの手間を大きく削減することができます。ゆえに、SSHデバッグは多くのお客さまから重宝されており、なかには『この機能だけでCircleCIの導入を決めた』とおっしゃられる方もいます」(根本氏)
また「Insightsダッシュボード」は、ビルドやテスト、デプロイに費やされた時間や費用をソフトウェアごと(ないしは、開発プロジェクトごと)に可視化する機能だ。この機能により、ソフトウェアの生産性や投資対効果を点検し、改善の計画を実績に基づいて立案することが可能になる。
このほか、CircleCIでは開発者の生産性向上を支援する「Orb」と呼ばれる仕組みも提供されている。これは、CircleCIの設定ファイルをパッケージ化して共有(配信)・再利用するためのものだ。この仕組みを活用することで、テストやビルド、デプロイの各工程で記述しなければならないコードを大幅に簡略化することができる。CircleCI社では各種の開発言語やクラウドプラットフォームに対応したOrbを提供しているが、パートナー各社からも、それぞれのツールをCircleCIで活用するためのOrbが提供されている。
手厚いサポートでCI/CDの
現場への定着をバックアップ
先に触れたとおり、CircleCIでは、以上に示した機能と併せて手厚いサポートサービスも提供されている。
「CI/CDやコンテナなどのクラウドネイティブのテクノロジーに精通していない開発者にとって、CI/CDツールを使いこなすのは簡単ではありません。そのため、技術的な支援がなにもないところでCI/CDツールを導入した結果、その活用が社内に定着しなかったり、開発の生産性が一向に上げられなかったりすることが多々あるのです」(根本氏)
このような問題の発生を未然に防ぐ目的で、CircleCI社では、CircleCIのユーザー企業に向けて、主に2タイプのエンジニアによるサポートサービスを展開している。それは、ユーザーからの技術的な相談に随時対応する「サポートエンジニア」によるサービスと、開発組織へのCI/CDの定着を促す「DevOpsカスタマーエンジニア」のサービスだ。ともに、各国の言語や企業が活動する時間帯に合わせて提供されている。
このうち、DevOpsカスタマーエンジニアは、DevOps、ないしはCI/CDを巡る顧客企業の悩みを解消することを主眼としながら、CircleCI導入時の開発者向けトレーニングやミーティングなどを適宜展開している。そのサービスは、CI/CDで成果を上げるために必要な知識・ノウハウを獲得・蓄積したり、DevOps推進の機運を醸成したりするうえで非常に有用であるとの評価を得ているという。また、DevOpsカスタマーエンジニアは、製品のアップデート情報やユーザー企業固有の課題に適合したアドバイスなども提供しており、広範な企業がCircleCIを有効活用できるような技術サポートを展開している。
「CI/CDツールで生産性を大きく上げるうえでは、ツールの使用を継続し、活用のレベルを引き上げていくことが大切です。それを支援するエキスパートを社内に擁し、しっかりとしたサポート体制を組んでいるCI/CDツールのプロバイダーは当社以外には見当たりません。CircleCIなら、CI/CDにこれから取り組むお客さまのDevOpsも必ず成功に導くことができると確信しています」(根本氏)
Email:japan-marketing@circleci.com
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- クラウドネイティブなCIを目指すCircleCIの未来とは? CEOとカントリーマネージャーに訊いてみた
- DevOps、CI/CDパイプラインでもコンテナは大活躍!
- DevOpsのサイクルをコードで管理し、プロセスを自動化する「CI/CDパイプライン」
- インフラエンジニアの視点で見る、DevOpsを実現するためのツールとは
- DevOpsのフローとDevOpsの実践に必要な技術
- 本格化するデジタルトランスフォーメーション(DX) プロ仕様のローコード開発プラットフォーム 「OutSystems」でDevOpsをもっと高速に
- Oracle Cloud Hangout Cafe Season4 #3「CI/CD 最新事情」(2021年6月9日開催)
- CircleCIのCTOがクラウド時代のCI/CDについて語る
- RancherとCI/CD
- OCIが指し示すクラウドネイティブへの道筋