本文へジャンプします。

TOP

ニフクラSEハンドブック

クラウド トップ>SEハンドブック>DevOps with GitLab適用指針
本ページは2023/10/2をもって、新ページhttps://docs.nifcloud.com/devops/guide/DevOps-Guidelines.htmへ移行しました。
今後は新ページをご参照ください。

DevOps with GitLab適用指針

ドキュメント情報

区分

適用指針

リリース日

2023年12月27日

■ニフクラホームページ

https://pfs.nifcloud.com/

はじめに

  • 本ドキュメントではDevOps with GitLab適用指針について記載しています。

  • DevOps with GitLabはGitLabがセットアップされたDevOpsサーバーをマネージドサービスとして提供するクラウドサービスです。

  • 企業内向けで、よりプロジェクト管理に特化したGitLab EE(Enterprise Edition)を利用するにはニフクラ環境専用のGitLab Enterprise Edition(GitLab EE)を購入するか、または利用者自身でGitLab EE(Enterprise Edition)有償ライセンスを購入してください。

  • システム要件によってはDevOps with GitLab適用(移行)不可となる場合があるため、サービス仕様書及び、本ドキュメントを最後まで確認のうえ、適用可否を判断してください。

  • ニフクラサービスの変更は最新のドキュメントを参照してください。

アイコンの説明
  • 本ドキュメント構成図に使用されているアイコンは下記のとおりとなります。

  • リージョン及びゾーンについて特に記載がなければ、単一リージョン、単一ゾーン構成を示します。

image

image

適用基準

DevOps with GitLabを適用できないケース

DevOps with GitLabを適用できない主な条件を示します。
以下の不適合条件に合致する要求がある場合、パブリッククラウド環境でサーバーにGitLabをインストールして利用することやオンプレミスでの検討が必要です。

不適合条件

理由

SLA

SLAとして月間稼働率99.90%を超えるSLA提供が必要

DevOps with GitLabで設定しているSLAでは、月間稼働率が99.90%となります。 [1] [2]


1. ニフクラで提供しているSLAの詳細については「 https://pfs.nifcloud.com/sla/ 」を参照してください。
2. 業務システムを含めたSLAについては、利用者側で検討が必要です。

構成

導入後、DevOps with GitLabのバージョンを固定したい

サービス安定性維持のため、定期的なバージョンアップを実施する必要があります。 [3]

グローバルネットワークへの接続をしたくない

現状、グローバルネットワークへの接続を完全に切断はできません。

DevOpsサーバーに対してルーティングの設定が必須となる構成にしたい
例:DevOpsサーバーが所属するプライベートLANと、別のネットワーク帯を持つ拠点環境とを物理ポート などを利用して接続する構成。

DevOpsサーバーでは別途ルーティングの設定はできないため、ルーティングの設定が必須となる構成は実装できません。
下記で示すプライベートLAN構成を検討してください。

移行性

特定のグローバルIPアドレスが必要

DevOps with GitLabサーバーのグローバルIPアドレスはサービスで割り振ります。利用者は払い出されるグローバルIPアドレスを指定できません。

任意のホスト名を希望

既に利用されている同一のホスト名は利用できません。[4]


4. 他の利用者が利用済みのホスト名を含みます。
DevOps with GitLabの適用判断

利用者の要件に対応するニフクラサービス仕様(①)を確認し、利用者側で必要となる対処(②)、影響等(③)を検討したうえで、ニフクラ適用可否を判断します。


No.

要件

ニフクラの仕様
(①サービス仕様 ②利用者の対処 ③備考(影響など))

大項目

中項目

小項目

1.1

可用性

継続性

運用スケジュール

  • ①24時間365日無停止。(計画停止/定期保守/即時対応を除く)

  • ②特になし。

  • ③計画停止/定期保守/即時対応の影響については、No.1.2を参照。

1.2

計画停止

  • ①非活性メンテナンスの情報は、目安として14日前にコントロールパネル内のお知らせ欄に掲載。緊急メンテナンス時は、掲載や告知がメンテナンスを実施する直前となることがある。コントロールパネル内の「障害・お知らせ通知」でメールアドレスを登録すれば、メールでも通知される。
    毎月第4水曜日 午後8時~10時に実施される定期メンテナンス中はブラウザやGitなどでのアクセスができなくなります。利用者のサーバーは通常通り利用可能。障害時には、コントロールパネル内のお知らせ欄に情報が掲載される。こちらも、コントロールパネル内の「障害・お知らせ通知」でメールアドレスを登録すれば、メールでも通知される。
    コントロールパネルにログインできない、またはサービスアクティビティを利用できない事象が発生している場合は、 ニフクラ 最新イベント/ニュース一覧にて障害の情報を確認可能です。

  • ②通知内容に応じて対応を検討する。

  • ③特になし。

1.3

SLA

  • ①月間稼働率:DevOps with GitLabのSLAは、月間稼働率が99.90%となります。

  • ②特になし。

  • ③稼働率が下回った場合、利用者が請求し、内容が認められることで、当月分の利用料金金額を、翌々月以降ニフクラご利用料金から減額します。
    減額される割合については、「 https://pfs.nifcloud.com/sla/ 」を参照してください。

1.4

災害対策(DR)

  • ①サービスとして提供なし

  • ②特になし。

  • ③DRがシステム要件の場合はニフクラDevOps with GitLab以外を検討してください。[5]


5. ニフクラDevOps with GitLabではバックアップファイルのダウンロードはできません。バックアップファイルを使ったマルチクラウド、オンプレミス環境での運用はできません。

2.1

性能・拡張性

DevOpsサーバーのスペック・機能

3.1

動作環境

GitLabRunner(コントロールパネル作成)

3.2

GitLabRunner(利用者カスタマイズ作成)

  • ①特になし。

  • ②利用者自身で別途作成したRunnerをDevOps with GitLabで作成したDevOpsサーバーに接続することが可能です。ニフクラを利用したGitLab Runnerのセットアップを参考に利用者が作成してください。

  • ③カスタマイズしたGitLabRunnerを利用できます。

3.3

メール送信機能

  • ①ニフクラESS連携設定済み

  • ②特になし。

  • ③利用者によるDevOpsサーバーのSMTP設定等は不要です。

3.4

認証連携機能

  • ①DevOpsサーバー作成時のパラメーター設定でSAML認証連携・LDAP認証連携が可能。

  • ②LDAPサーバー等の認証する仕組み・環境を用意してください。

  • ③特になし。

4.1

アップグレード

定期アップグレード

  • ①毎月第4水曜日 20:00~22:00 にアップグレードが強制実施されます。

  • ②運用考慮事項として認識してください。

  • ③GitLabが提供する最新版から、2つ後方のマイナーバージョンの最新パッチバージョンを目安として提供します。[6]


6. 詳細は アップグレードポリシー を確認してください

4.2

緊急アップグレード

  • ①GitLabの緊急性の高い脆弱性を修正するバージョンが公開された場合、例外的に緊急アップグレードを実施します。

  • ②運用考慮事項として認識してください。

  • ③緊急アップグレードではマイナーバージョンの繰り上げを行う可能性があります。[7]


7. 詳細は 緊急アップグレード を確認してください

4.3

手動アップグレード

  • ①コントロールパネルから手動でアップグレードを実施できます。

  • ②運用考慮事項として認識してください。

  • ③定期アップグレード時間帯のDevOpsサーバー停止の影響を避けたい場合、手動アップグレードを実施することで回避できます。[8]


8. 詳細は 手動アップグレード を確認してください

5.1

保守性

バックアップ/リストア

  • ①バックアップ/リストア機能については機能・仕様ページのバックアップリストアを確認してください。

  • ②運用考慮事項として認識してください。

  • ③以下の制限事項について考慮してください。

    • バックアップファイルのダウンロードはできません。バックアップファイルはニフクラ内の利用に限定されます。

    • バックアップファイルは別リージョン内でも使用可能です。

    • リストアはサーバーの新規作成となります。既存環境の上書きはできません。DevOpsサーバー名がサブドメインに使用されるのでリストア後のURLは別URLが発行されます。

DevOps with GitLabの制限値一覧

各種制限値の一覧

詳細は仕様ページを確認してください


No.

項目

ニフクラの制限値

注釈

1

リージョンあたりの最大DevOpsサーバー作成数

2

2

DevOpsサーバーあたりの最大ディスク容量

400GB

3

リージョンあたりの最大ファイアウォールグループ作成数

25

4

ファイアウォールグループあたりのルール最大数

100

5

バックアップの世代数

7

6

パラメーターグループ作成数

100

7

DevOpsサーバー名の制限

半角英数小文字と - (ハイフン)を30文字以内

先頭及び末尾に-は利用できません

8

DevOpsサーバーメモ欄の制限

全半角255文字以内

9

ファイアウォールグループ名の制限

半角英数小文字及び-で63字以内

先頭及び末尾に-は利用できません

10

ファイアウォールグループメモ欄の制限

全半角255文字以内

ニフクラDevOps with GitLabを導入するメリット

  • ニフクラにてマネージメントされているのでDevOpsに必要なGitLabサーバーがニフクラコントロールパネルやニフクラAPIで簡単に構築・管理できます。

  • 通常はGitLab Incから別途購入する高機能の拡張機能バージョンGitLab EE(Enterprise Edition)をニフクラでサブスクリプション購入できます。

    • 煩雑な購入手続き不要。入力フォームで簡単に申請・利用できます。

    • 詳細はGitLab製品の利用を確認してください。

  • ニフクラDevOps with GitLabサーバーのCI/CDパイプライン環境を利用してソースコードのビルド、テスト、デプロイ、セキュリティチェックなどを自動化して手作業によるミスや、属人化といった課題も解決し、環境構築作業で発生するコストや時間を抑えることができます。

構成パターン

ニフクラDevOps with GitLabの環境構築について代表的なシステムパターンは下記のとおりです。
※本パターン以外も実装できます。要件に応じて検討してください。

グローバルネットワークを利用する構成

プライベートネットワークを利用せず、グローバルネットワークを利用する構成です。


image


以下にシステム構成例を実現するために利用者が実施すべき作業を記載します。

作業順番

利用者の作業概要

1

コントロールパネルよりファイアウォールグループを作成します。
作成時に、利用者拠点環境側グローバルIPをinルールに以下の内容で設定してください。

  • プロトコル:「TCP」

  • ポート:「443」

2

コントロールパネルよりパラメーターグループを作成します。[9]


9. 項目に値を設定しない場合はシステムデフォルトが適用されます。

3

コントロールパネルより、DevOps with GitLabサーバーを作成します。
このとき、プライベートLANにて「指定しない」を指定することで、共通プライベートLANが利用されます。
ファイアウォールグループには、1)で作成したものを指定してください。
パラメーターグループには2)で作成したものを指定してください。
ステータス:「正常」になるとDevOps with GitLabサーバーの作成が完了です。

4

実行する端末のブラウザから3)で発行されたGitLab URLにアクセスします。
rootユーザーでログインするとDevOps with GitLabサーバーの利用が開始できます。

  • 検討事項・留意点

    • 利用者側環境、Web利用者は適切なファイアウォールルールの設定が必要です。

    • Web利用者は固定・特定のグローバルIPを利用してください。

プライベートLANを利用する構成

プライベートLANを利用する構成です。 代表的な接続構成パターンを記載します。

  • WebブラウザやGitLab Runnerから、プライベートLANを経由してDevOps with GitLabサーバーの443ポートにアクセスする際には名前解決が必要になります。hostsファイルを設定する、DNSサーバーを構築するなどの方法で名前解決ができる環境を用意してください。

  • 名前解決の環境が用意・利用できない場合はDevOps with GitLabサーバーのプライベートIPアドレスを利用してアクセスしてください。

  • 各構成パターンではhostsファイルを利用した記載内容になっています。

拠点間VPNゲートウェイ(L2TPv3/IPsec接続)

拠点間VPNゲートウェイを利用し拠点環境とL2TPv3/IPsecで接続する構成です。
L2延伸を利用するのでニフクラ環境と利用拠点環境のIPアドレスを同じサブネットに設定します。


image


以下にシステム構成例を実現するために利用者が実施すべき作業を記載します。

作業順番

利用者の作業概要

1

コントロールパネルよりプライベートLANを作成します。

2

ハイブリットクラウド:VPN接続パターンを参考にしてニフクラ拠点間VPNゲートウェイと利用拠点環境の接続を構築します。

3

コントロールパネルよりファイアウォールグループを作成します。
作成時に、利用者拠点環境LAN側IPアドレス帯をinルールに以下の内容で設定してください。

  • プロトコル:「TCP」

  • ポート:「443」

4

コントロールパネルよりパラメーターグループを作成します。[10]


10. 項目に値を設定しない場合はシステムデフォルトが適用されます。

5

コントロールパネルより、DevOps with GitLabサーバーを作成します。
このとき、プライベートLANにて「1)で作成したプライベートLAN」を指定してプライベートIPアドレスを入力してください。
ファイアウォールグループには3)で作成したものを指定してください。
パラメーターグループには4)で作成したものを指定してください。
ステータス:「正常」になるとDevOps with GitLabサーバーの作成が完了です。

6

利用者拠点環境側のhostsファイル設定、またはDNSサーバーを構築して5)で発行されたGitLab URLの名前解決を設定してください。

7

実行する端末のブラウザから5)で発行されたGitLab URLにアクセスします。
rootユーザーでログインするとDevOps with GitLabサーバーの利用が開始できます。

SSL-VPN

リモートアクセスVPNゲートウェイを利用したSSL-VPNの構成です。
※利用者拠点間環境でWindows 11端末を利用した構成になっています。
※DevOpsサーバーへのアクセス元IPアドレスはリモートアクセスVPNゲートウェイのプライベートIPになります。詳細は ネットワークプール の送信元IPアドレスを参照してください。

image


以下にシステム構成例を実現するために利用者が実施すべき作業を記載します。

作業順番

利用者の作業概要

1

コントロールパネルよりプライベートLANを作成します。

2

セキュアメンテナンスパターン:リモートアクセスVPNゲートウェイ利用を参考にしてニフクラリモートアクセスVPNゲートウェイと利用者拠点環境の接続を構築します。
リモートアクセスVPNゲートウェイではサーバー証明書の設定は必須です。[11]


11. 詳細は技術仕様を確認してください。

3

コントロールパネルよりファイアウォールグループを作成します。
作成時に、リモートアクセスVPNゲートウェイのプライベートIPアドレスをinルールに以下の内容で設定してください。

  • プロトコル:「TCP」

  • ポート:「443」

4

コントロールパネルよりパラメーターグループを作成します。[12]


12. 項目に値を設定しない場合はシステムデフォルトが適用されます。

5

コントロールパネルより、DevOps with GitLabサーバーを作成します。
このとき、プライベートLANにて「1)で作成したプライベートLAN」を指定して任意プライベートIPアドレスを入力してください。
ファイアウォールグループには3)で作成したものを指定してください。
パラメーターグループには4)で作成したものを指定してください。
ステータス:「正常」になるとDevOps with GitLabサーバーの作成が完了です。

6

利用者拠点環境側のhostsファイル設定、またはDNSサーバーを構築して5)で発行されたGitLab URLの名前解決を設定してください。

7

利用者拠点環境側からクライアントソフトを起動してリモートアクセスVPNゲートウェイに接続します。

8

実行する端末のブラウザから5)で発行されたGitLab URLにアクセスします。
rootユーザーでログインするとDevOps with GitLabサーバーの利用が開始できます。

物理ポート(コロケーションプラン)

コロケーションスペースに回線事業者設置機器を設置して物理ポート(コロケーションプラン)を利用した構成です。
※物理ポートの利用には、別途、物理ポートの申し込みが必要です。
※接続レイヤーとしてL2を利用するのでニフクラ環境と利用拠点環境のIPアドレスを同じサブネットに設定します


image


以下にシステム構成例を実現するために利用者が実施すべき作業を記載します。

作業順番

利用者の作業概要

1

コントロールパネルよりプライベートLANを作成します。

2

ハイブリットクラウド:物理ポートパターン コロケーションプランを参考にして物理ポートの申請をおこない、ニフクラのコロケーションスペースに回線事業者設置機器(ルーター等)設置、利用拠点環境の接続を構築します。

3

コントロールパネルよりファイアウォールグループを作成します。
作成時に、利用者拠点環境LAN側IPアドレス帯をinルールに以下の内容で設定してください。

  • プロトコル:「TCP」

  • ポート:「443」

4

コントロールパネルよりパラメーターグループを作成します。[13]


13. 項目に値を設定しない場合はシステムデフォルトが適用されます。

5

コントロールパネルより、DevOps with GitLabサーバーを作成します。
このとき、プライベートLANにて「1)で作成したプライベートLAN」を指定してプライベートIPアドレスを入力してください。
ファイアウォールグループには3)で作成したものを指定してください。
パラメーターグループには4)で作成したものを指定してください。
ステータス:「正常」になるとDevOps with GitLabサーバーの作成が完了です。

6

利用者拠点環境側のhostsファイル設定、またはDNSサーバーを構築して5)で発行されたGitLab URLの名前解決を設定してください。

7

実行する端末のブラウザから5)で発行されたGitLab URLにアクセスします。
rootユーザーでログインするとDevOps with GitLabサーバーの利用が開始できます。

DevOps開発でのニフクラサーバー連携

ニフクラDevOps with GitLabとニフクラサーバーは容易に連携してDevOps開発が実施できます。
上記のグローバルネットワークの構成でGitLabRunner連携させた代表的なシステムパターンは下記のとおりです。
※本パターン以外も実装できます。要件に応じて検討してください。

ニフクラDevOps with GitLabとニフクラサーバー


image


利用者が実施すべき作業についてはニフクラblogで詳細に記述していますので参考にしてください。

バックアップ/リストア

ニフクラDevOps with GitLabではコントロールパネルからバックアップファイル作成のルールを作成してファイルからDevOps with GitLabサーバーをリストアできます。詳細は以下のページを参照してください。

参考情報へのリンク集

DevOpsについて下記のサイトで詳細に記述していますので参考にしてください。

ニフクラDevOps with GitLabでのissueを使ったプロジェクト管理については下記ブログで詳細に記述していますので参考にしてください。

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

0120-22-1200

0120-22-1200

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