本文へジャンプします。

TOP

クラウドデザインパターン

クラウド トップ>クラウドデザインパターン>Blue/Green デプロイメントパターン

Blue/Green デプロイメントパターン

DevOps環境を提供するニフクラ DevOps with GitLabサービスを利用して、KubernetesでのBlue/Green デプロイメントを構成するパターンです。

解決したい課題/要求事項

  • セットアップ、パッチ適用、バックアップ環境などの設計、構築に時間やコストがかかる

  • 構築、運用には期間やスキルが必要となり、アプリケーション開発などの本業に集中できない

  • 複雑なコンテナ管理には時間を割かずに、アプリケーションの開発業務に専念したい

ニフクラでの解決パターン

以下の内容により、課題の解決や要求事項の実現が可能

  • ニフクラ DevOps with GitLabとL4ロードバランサーを活用することで、Blue/Greenデプロイメントが実現可能

    • 今までのインフラリソースも並行して利用できるため、新バージョンをリリースした際にもし問題が起きても、簡単に旧バージョンに切り戻すことが可能

    • また、利用者自身でそういった環境を運用せずに、アプリケーションの開発に集中できる

  • L4ロードバランサーからの接続先を切り替えることで、バージョンアップ時にサービス停止時間を最小限にできる

  • 切り替え後の旧環境を開発環境として継続利用することで、無駄な出費を抑えることが可能

image

image

実装
  • ニフクラ DevOps with GitLabを利用すると、Blue/Green環境へのデプロイメントが容易となり、L4ロードバランサーの接続先を切り替えるだけで、簡単にBlue/Green環境を作り上げることが可能となる

  • コードの管理、プロジェクトの管理、可視化、デプロイメント、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製品の利用を参照

  • システムの特性によってはBlue/Greenに向かないものもある
    特にデータ同期や切り替えタイミングなどの条件が厳しいシステムについては充分な検討が必要となる

  • 構成図にあるKubernetesの環境は、利用者自身で構築・運用する必要がある

注意点

本パターンの構成要素

本パターンを実現するためのニフクラサービス構成要素例は以下表の通りです。

サービス名

タイプ

用途

数量

備考

10Mbps

1

devops.c-medium

DevOpsサーバー

1

ディスク容量(100GB)

ディスク

1

ファイアウォールグループ

ファイアウォール

1

runner.c-medium

DevOps Runner

1

c2-medium

Blueリソース/Greenリソース

2

c2-large

コンテナ環境構築用

2

Blueリソース/Greenリソース

2

1

任意で利用

導入のご相談はお電話でも受け付けております。

0120-22-1200

0120-22-1200

受付時間:9:00~17:45(土日祝・当社指定の休業日を除く)
※携帯電話・PHSからもご利用可能