チェックポイント
Create a Kubernetes cluster (zone: us-east1-d)
/ 50
Configure and Install Jenkins
/ 50
Kubernetes Engine での Jenkins の設定
GSP117
このハンズオンラボでは、ソフトウェア デリバリー パイプラインをオーケストレートできるように Google Kubernetes Engine で Jenkins を設定する方法について学習します。
目標
- Kubernetes Engineを使用して Kubernetes クラスタを作成する。
- Jenkins のデプロイメントとサービスを作成する。
- Jenkins に接続する。
設定と要件
[ラボを開始] ボタンをクリックする前に
こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。
このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
- 標準的なインターネット ブラウザ(Chrome を推奨)
- ラボを完了するために十分な時間を確保してください。ラボをいったん開始すると一時停止することはできません。
ラボを開始して Google Cloud コンソールにログインする方法
-
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。
- [Google コンソールを開く] ボタン
- 残り時間
- このラボで使用する必要がある一時的な認証情報
- このラボを行うために必要なその他の情報(ある場合)
-
[Google コンソールを開く] をクリックします。 ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。 -
必要に応じて、[ラボの詳細] パネルから [ユーザー名] をコピーして [ログイン] ダイアログに貼り付けます。[次へ] をクリックします。
-
[ラボの詳細] パネルから [パスワード] をコピーして [ようこそ] ダイアログに貼り付けます。[次へ] をクリックします。
重要: 認証情報は左側のパネルに表示されたものを使用してください。Google Cloud Skills Boost の認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。 -
その後次のように進みます。
- 利用規約に同意してください。
- 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
- 無料トライアルには登録しないでください。
その後このタブで Cloud Console が開きます。
Cloud Shell をアクティブにする
Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。
- Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン をクリックします。
接続した時点で認証が完了しており、プロジェクトに各自の PROJECT_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。
gcloud
は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。
- (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
-
[承認] をクリックします。
-
出力は次のようになります。
出力:
- (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
出力:
出力例:
gcloud
ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。
タスク 1. 環境を準備する
まず、デプロイ環境を準備してサンプル アプリケーションをダウンロードします。
- デフォルトの Compute Engine ゾーンを
に設定します。
- サンプルコードのクローンを作成します。
- サンプルコードのディレクトリに移動します。
Kubernetes クラスタを作成する
Kubernetes Engine を使用して、Kubernetes クラスタを作成および管理します。
- 次に、Kubernetes Engine を使用して Kubernetes クラスタをプロビジョニングします。この手順は完了するまでに数分かかることがあります。
追加のスコープで、Jenkins が Cloud Source Repositories と Google Container Registry にアクセスできるようになります。
完了したタスクをテストする
[進行状況を確認] をクリックして、実行したタスクを確認します。タスクが正常に完了すると、評価スコアが提供されます。
- クラスタが実行されていることを確認します。
出力例:
STATUS
列の RUNNING
を確認します。
- クラスタの認証情報を取得します。Kubernetes Engine はこれらの認証情報を使用して、新たにプロビジョニングされたクラスタにアクセスします。
- クラスタに接続できることを確認します。
出力例: クラスタが実行されている場合は、Kubernetes コンポーネントにアクセスできる URL が表示されます。
タスク 2. Helm を構成する
このラボでは、Helm を使用してチャート リポジトリから Jenkins をインストールします。Helm は、Kubernetes アプリケーションの構成とデプロイを容易にするパッケージ管理システムです。Cloud Shell には、Helm の最新の安定版がプリインストールされています。
興味がある場合は、Cloud Shell で helm version
を実行すると、Helm がインストールされていることと、そのバージョンを確認できます。
- Helm の
jenkins
チャート リポジトリを追加します。
- リポジトリを更新して、チャートのリストを最新の状態にします。
タスク 3. Jenkins を構成、インストールする
サービス アカウントの認証情報で Cloud Source Repositories にアクセスするために必要な Google Cloud 固有のプラグインを、カスタムの値ファイルを使って追加します。
- Helm CLI を使用して、構成セットとともにチャートをデプロイします。
完了したタスクをテストする
[進行状況を確認] をクリックして、実行したタスクを確認します。タスクが正常に完了すると、評価スコアが提供されます。
- コマンドが完了したら、Jenkins Pod が Running 状態になり、コンテナが READY 状態になっていることを確認します。これには 2 分ほどかかります。
出力例:
- 次のコマンドを実行して、Cloud Shell から Jenkins UI へのポート転送を設定します。
- Jenkins サービスが適切に作成されたことを確認します。
出力例:
Jenkins マスターが要求したときに、必要に応じて自動的にビルダーノードが起動されるように、Kubernetes プラグインを使用します。処理が完了するとノードは自動的に終了し、リソースはクラスタのリソースプールに戻されます。
このサービスでは、selector
に一致するすべての Pod にポート 8080
と 50000
が公開されることに注意してください。ここでは、Kubernetes クラスタ内の Jenkins ウェブ UI ポートとビルダー / エージェント登録ポートが公開されます。
また、jenkins-ui
サービスは ClusterIP を使用して公開されるため、クラスタ外からはアクセスできません。
タスク 4. Jenkins に接続する
- Jenkins チャートによって管理者パスワードが自動的に作成されます。このパスワードを取得するには、以下を実行します。
- Jenkins ユーザー インターフェースを表示するには、Cloud Shell でウェブでプレビュー アイコンをクリックし、[ポート 8080 でプレビュー] をクリックします。
- ユーザー名
admin
と自動生成されたパスワードでログインできます。
これで、Kubernetes クラスタに Jenkins が設定されました。
理解度チェック
今回のラボで学習した内容の理解を深めていただくため、以下の選択式問題を用意しました。正解を目指して頑張ってください。
お疲れさまでした
クエストを完了する
このセルフペース ラボは、Google Cloud Skills Boost の「Google Cloud Solutions I: Scaling Your Infrastructure」クエストの一部です。クエストとは学習プログラムを構成する一連のラボのことで、完了すると成果が認められて上のようなバッジが贈られます。バッジは公開して、オンライン レジュメやソーシャル メディア アカウントにリンクできます。このラボの修了後、こちらのクエストに登録すれば、すぐにクレジットを受け取ることができます。受講可能なすべてのクエストについては、Google Cloud Skills Boost カタログをご覧ください。
次のラボを受講する
Spinnaker と Kubernetes Engine を使用した継続的デリバリー パイプラインに進んでクエストを続けるか、以下のおすすめのラボをご確認ください。
次のステップと詳細情報
フォローアップ情報として以下をご確認ください。
- Kubernetes Engine で Jenkins を使用するためのおすすめの方法について学習する。
- Kubernetes Engine 用に Jenkins を構成する方法を確認する。
- Jenkins を使用した Kubernetes Engine への継続的デプロイの設定方法を学習する。
Google Cloud トレーニングと認定資格
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2022 年 8 月 15 日
ラボの最終テスト日: 2022 年 8 月 15 日
Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。