CI/CDパターン
DevOps環境を提供するニフクラ DevOps with GitLabサービスを利用して、CI/CDの環境を構成するパターンです。CIは継続的インテグレーション、CDは継続的デリバリーまたは継続的デプロイメントを意味します。
解決したい課題/要求事項
-
CI/CDに取り組みたいが、環境構築や運用作業に時間とコストがかかるのを何とかしたい
-
ビルド、テスト、デプロイを自動化し、品質と開発速度の向上を図りたい
ニフクラでの解決パターン
以下の内容により、課題の解決や要求事項の実現が可能
-
ニフクラ DevOps with GitLabを利用することで、CI/CDの環境の構築、DevOps環境の運用(設定、ネットワーク管理)を容易に実行でき、サーバーの管理を不要にすることにより、利用者の運用負担を軽減できる
-
ニフクラ DevOps with GitLabの機能と連携して、ソースコードのビルド、テスト、デプロイ、セキュリティチェックなどを自動化できる
また、リアルタイムでその結果を開発者に通知も可能
実装
-
ニフクラ DevOps with GitLabを利用すると、今まで大変だったDevOps環境の構築、運用、規模拡大の作業を、わかりやすいUIから簡単に行うことが可能
-
コードの管理、プロジェクトの管理、可視化、デプロイメント、DevOpsサーバーの運用に必要な機能が一通り揃っており、これらを活用することで運用工数を大幅に削減できる
-
ニフクラ DevOps with GitLabでは、Hosted Runnerを提供している
利用者自身でRunnerサーバーを構築・運用する必要はなく、簡単に専用のCI/CD環境を立ち上げることができる-
DevOps with GitLabのRunner機能はDocker executorを採用しており、必要な実行環境のイメージを宣言すると、自動的に環境が立ち上がる
詳細は、DevOps with GitLab技術仕様 を参照
-
-
DevOpsの設定が簡単にできる分、利用者自身でDevOps環境をカスタマイズ・管理するよりも制約が多くなる
ニフクラ DevOps with GitLabの制約条件や留意事項と、利用者自身で環境を運用/構築する場合のメリット・デメリットとを勘案して、ニフクラ DevOps with GitLabの利用について検討が必要
補足
-
コントロールパネル、Web操作ですべての機能が利用可能
-
DevOps with GitLabでは[GitLab Enterprise Edition サブスクリプションと組み合わせることで、GitLab Enterprise Edition の追加機能やサポートが利用可能
詳細は GitLab製品の利用を参照 -
オンプレミス環境で自前のコードを管理したい場合は、GitLab EE サブスクリプションをオンプレミスの環境に適用する
GitLab EE サブスクリプション詳細につきましては、 機能・サービス:GitLab 製品の利用を参照 -
構成図にあるKubernetesの環境は、利用者自身で構築・運用する必要がある
-
仮想サーバーで共通グローバルネットワークを利用する場合のIPアドレス、デフォルトゲートウェイなどの情報については クラウド技術仕様/制限値(IPアドレス)を参照する
-
共通グローバルネットワーク、共通プライベートネットワークについての仕様は クラウド技術仕様/制限値(ネットワーク:共通ネットワーク)を参照する
注意点
-
ニフクラ DevOps with GitLabで選択可能なサーバータイプ、ディスク容量に制限がある
詳細は 機能・サービス:DevOps with GitLabを参照