WEBサーバーのコンテナをデプロイする
事前準備
コンテナサービスは東日本リージョン3に対応しています。まずはリージョンとゾーンを有効化します。
リージョンの確認
IDCFクラウドにログイン後、コンピュートサービスに進みます。上部メニューにて「東日本リージョン3」が表示されていれば既に利用できる状態です。
もし他のリージョンが表示されていてれば、上部メニューから「東日本リージョン3」を選択し、東日本リージョン3の「申し込む」を実行してください。申し込み後、東日本リージョン3の「クラウドコンソール」に進んでください。
ゾーンの確認
コンピュートサービスの左メニューから「ゾーン」を選択すると、現在有効になっているゾーンを確認できます。
この例ではvolt
ゾーンが有効化しており、コンテナサービスからvolt
ゾーンが利用できます。もしampere
ゾーンも利用する場合は「無効」ボタンから「有効にする」にて有効化可能です。
コンテナサービスの申し込み
トップメニューにて「コンテナ」サービスを選択し、「申し込む」を実行してください。
クラスターを作成する
IDCFクラウド上にKubernetesクラスターを作成します。
- IDCFクラウドにログインし、「コンテナ」サービスを選択します。
- 「コンテナコンソール」を選択するとコンテナコンソールに遷移します。
- ダッシュボードの中央にある「作成」ボタンをクリックします。
- クラスター: 作成から「IDCFクラウド」を選択します。
- クラスターを追加ページで必要な項目を入力します。
設定項目について
1. 基本設定
項目名 | 内容 |
---|---|
クラスター名 | 作成するクラスターの任意の名前を入力します |
ノードプールを追加 | 各種ノードプールの設定を行います |
2. ノードプールの設定
項目名 | 内容 |
---|---|
プリフィックス名 | ノードプールの任意の名前を入力します |
台数 | ノードプールのノード数を設定します |
テンプレート | 作成するVMのゾーン/マシンタイプ/イメージ/ネットワークを指定します |
etcd / ControlPlane / Worker | ノードプールをどの役割で利用するかを設定します |
シングルの最小構成の場合:
- ノード数を1にして、
etcd
、ControlPlane
、Worker
の役割を付けます
冗長の最小構成の場合:
- ノード数を3にして、
etcd
、ControlPlane
、Worker
の役割を付けます
プロダクション環境などの品質、可用性、拡張性が求められる場合:
- ノードプール① ノード数を
3
にして、etcd
、ControlPlane
の役割を付けます - ノードプール② ノード数を
2
(以上)にして、Worker
の役割を付けます
※ ノードをオートスケールする場合、この構成が必須です
3. クラスターオプションの設定
構築するクラスターの各種設定を行います。
4. クラスターテンプレートの設定
IDCF Cloud Template (Etcd Backup Local)
を選択します。
- 上記の項目を設定後、「作成」を押します。
コンピュートサービスにて自動でVM作成が開始し、クラスターのプロビジョニングが完了すると(通常5-10分程度)、クラスターの状態が
Active
になります。状態が
Active
になったら作成したクラスターの「Explor」をクリックし、クラスターダッシュボードに移動します。
- クラスターダッシュボードの画面左のメニューから「ストレージ」 → 「Secrets」を選択します。
- 「Secrets」画面から「名前空間:
idcf-system
」のidcfcloud
の ︙ から「設定を編集」を選択します。
idcfcloud
が見当たらない場合、上部のフィルターにて「ユーザーの名前空間のみ」を「すべての名前空間」に変更してください- クラウドコンソールの「API」画面から
API Key
,Secret Key
をそれぞれ取得し、 Secret:idcfcloud
の編集画面で値をapi_key
,secret_key
のそれぞれに設定し 「保存」ボタンを押してください。
- 以上でクラスターの作成とAPIキーの設定が完了です。これで、コンテナのデプロイが可能になります。
コンテナにデプロイする
次に、作成したクラスターにnginx
のコンテナをデプロイし、ロードバランサー経由で接続できるよう設定します。
- クラスターダッシュボードの左メニューから「ワークロード」を選択し、「作成」ボタンを押します。
- 作成のページにて「Deployment」を選択します。
- デプロイするコンテナの情報を入力します。
Deploymentの設定項目について
1. 名前空間
- デプロイ先の名前空間(Namespace)を指定します
- ここでは
Default
を利用します
- ここでは
2. 名前
- 作成するワークロードに付ける任意の名前を入力します
3. 詳細情報
- 任意のメモ欄としてテキスト入力できます
4. レプリカ
- 作成するレプリカ(Pod)の数を入力します。
- ここでは
1
つ作成します
- ここでは
5. コンテナ
- Deploymentの中で複数のコンテナを起動する際にここから追加できます。
- ここでは追加せず1つのコンテナのみを利用します
6. コンテナ名
- コンテナごとに付ける任意の名前を変更できます
7. 標準コンテナ / Initコンテナ
- Initコンテナを選択することもできます
- ここでは「標準コンテナ」を利用します
8. コンテナイメージ
- 作成元のコンテナイメージ(Dockerイメージ)を入力します
- デフォルトではDockerHubを参照します
- ここではWEBサーバーのサンプルとして「
nginx
」を指定します
- 「ポートを追加」のボタンを押し、ロードバランサーの設定をした後、右下の「作成」のボタンを押します。
ポートの設定
1. サービスタイプ
- 利用するサービスのタイプを選択します
- ここでは「ロードバランサー」を設定します
2. 名前
- 設定するサービスにに付ける任意の名前を入力します
3. プライベートコンテナポート
- コンテナ側のポート番号を指定します
- ここでは
80
を指定します
- ここでは
4. プロトコル
- TCPかUDPか選択します ※IDCFクラウドではTCPのみ対応
- ここでは
TCP
を選択します
- ここでは
5. リスニングポート
- 外部に公開するポート番号を指定します
- ここでは
80
を指定します
- ここでは
作成するとDeploymentsの一覧にワークロードが表示され、問題なく起動できた場合は「状態」が
Active
になります。ロードバランサーを指定した場合、コンピュートサービスにてパブリックIPアドレスを取得し、ファイアウォール(指定ポートをAny許可)とロードバランサーの設定を自動で構成します。
- Deploymentsにて作成したワークロードに遷移し、「Endpoints」の
80/TCP
をクリックするとロードバランサー経由でnginx
のコンテナに接続できます
以上で、Webサーバーのコンテナのデプロイは完了です。
その他の情報について
本ドキュメント以外にも、各機能については以降のドキュメントをご確認してください。
また、FAQもご用意しています。コンテナサービス ヘルプサイトはこちらからアクセスできます。
クラウドコンソール上のお問い合わせからご質問も可能です。