カスタム エラスティック イメージの作成 - Windows

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

Atlassian doesn't provide support for customized images. Bamboo provides flexibility to use customized machine images, but it's impossible for us to support all individual configurations.

Use Bamboo stock images as the base for all image customizations to ensure a minimal level of consistency of your Elastic Bamboo setup.

次にリストされたタスクを実行するには、リモート デスクトップ クライアントを使用して管理者アカウントでインスタンスにログインします。

ユーザー アカウントを設定する

Bamboo エージェントが使用するユーザー アカウントを作成します。アカウント名は自由に指定ください。次の例では Bamboo を使用しています。お使いのマシンで実行中のすべてのビルドが、このアカウントを使用します。一般ユーザーでかまいません (つまり、ビルドで必要な場合を除き、パワー ユーザーや管理者である必要はありません)。そのユーザーのパスワードを設定します。Windows イメージの既定のユーザーは、ユーザー名は Bamboo、パスワードは Atlassian1 です。

重要: 既定では、新たに作成されたユーザーに対しては、リモート ログイン権利を拒否する必要があります (それが望ましいからです)。念のため、そのユーザーの資格情報を使用してログインできないことを確認してください (資格情報を既定以外のものに変更していない限り)。

ビルドがヘッドレスでない場合 (つまり、Selenium のようにウィンドウを表示/操作する場合) は、ここをクリックして追加の手順をご確認ください

Bamboo アカウントへの自動ログインを設定する必要があります (リモート ユーザーはログインできませんのでご安心ください)。これを行うには、control userpasswords2 を実行して、[User must enter a user name and password to enter this computer (このコンピュータにアクセスするにはユーザー名とパスワードを入力する必要があります)] を選択解除します。


 

ファイアウォールを設定する

ポート 26224 で TCP 接続を受け入れるように Windows ファイアウォールを再設定します。Bamboo にはその他のインバウンド接続は必要ありません。

このポートの EC2 セキュリティ グループ設定の変更について心配する必要はありません。Bamboo が自動的にセットアップします。


必要なソフトウェアをインストールする

  1. Install a supported Oracle Java version. See 2020-05-06_21-51-21_.Supported platforms v7.0.

  2. こちらの場所からエージェント インストーラー zip の最新バージョンをダウンロードします(このガイドが作成された時点では、最新バージョンはこちらでした)。任意の場所に展開します。Bamboo で配布しているストック イメージに合わせて C:\opt\bamboo-elastic-agent を使用することをおすすめします。
  3. Windows インスタンスの起動時にバッチ ファイルも起動するようにする必要があります。これを行うには、Windows タスク スケジューラ ([スタート] > [管理ツール]> [タスク スケジューラ]) を使用し、[詳細] に <PATH TO YOUR BATCH FILE> を指定して「プログラムの開始」という新しい操作タスクを設定します。



    [全般] タブで [ユーザーがログオンしているかどうかにかかわらず実行する] を選択するのを忘れないでください。


    ネットワーク接続が起動して稼働中になっている場合のみエージェントが起動するように、トリガー タスクを適切に定義します。

     

アカウントがバッチ ジョブとしてログインできる必要があるという警告がタスク マネージャーに表示されます。ユーザーに対して「Log on as batch job (バッチ ジョブとしてログオン)」ポリシーが設定されていることを確認してください。[コントロール パネル] > [管理ツール] > [ローカル セキュリティ ポリシー] の順に移動することでこのポリシーにアクセスできます。[ローカル セキュリティ ポリシー] ウィンドウで、[ローカル ポリシー] > [ユーザー権利の割り当て] > [Log on as batch job (バッチ ジョブとしてログオン)] をクリックします。

インスタンスで EBS の使用量を有効にする

Bamboo 5 以降では、Windows インスタンスでカスタム エラスティック ブロック ストレージを使用できるようになります。そのためには、インスタンスで SAN ポリシーを変更する必要があります。変更しないと、ディスクは「オフライン」状態で接続され、「the disk is offline because of policy set by an administrator (管理者が設定したポリシーにより、ディスクがオフラインになっています)」というステータス テキストが表示されます。

Diskpart ユーティリティを使用して SAN ポリシーを変更できます。Diskpart を実行して以下を入力します。

san policy=OnlineAll

Enter を押します。Diskpart; を終了します。これで新しいポリシーが有効になります。

 

テスト

すべてが正しく設定されているかどうかを確認する最も簡単な方法は、Windows タスク スケジューラ ([スタート] > [管理ツール]> [タスク スケジューラ]) を使用して定義したタスクを実行することです。タスクを右クリックして [実行] を選択します。必ずタスク スケジューラを使用してスクリプトをテストしてください。スクリプトを手動で実行すると、管理者アカウントを使用することになりますが、これは正しい方法ではありません。

%USERPROFILE%/bamboo-elastic-agent.out ファイルを探します。このファイルがあり、Bamboo Server によって起動された EC2 インスタンス内でエージェントが実行されなかったというエラー メッセージが含まれていれば、カスタマイズは正常に完了しています。

c:\opt\bamboo-elastic-agent\bin\prepareInstanceForSaving.bat を実行します。 

インスタンスをバンドルします。新しいイメージの AMI ID をメモしておきます。

Bamboo からのイメージの起動

40 分以内に次の手順を完了しないと Bamboo によってインスタンスがシャット ダウンされるため、時間がなくなった場合は忘れずに作業内容を保存してください (つまり、中間イメージを作成します)。

Bamboo で、先ほど作成したイメージのイメージ構成を定義し、Bamboo から起動します。すべてうまくいけば、エージェントがインスタンスと一緒に起動します。次のステップが実行されます。

  • 追加のディレクトリを作成して、/create /opt/bamboo-elastic-agent のディレクトリ構造を更新します。表示されれば、Java がそのマシンで適切に動作しており、S3 への接続が機能していることになります。
  • エージェントを起動すると、Bamboo エージェント ホーム ディレクトリが作成され、Bamboo サーバーから取得されたデータが反映されます。

すべてうまくいけば、エージェントが Bamboo インスタンス リストに表示されます。これで Bamboo エージェントの起動は完了です。

エージェントは Bamboo サーバーと同期したばかりであるため (サーバーにあるものと完全に一致する jar ファイルをすべてダウンロードしたため)、追加の手順として、その状態を保存して、将来のインスタンスの起動を早め、帯域幅の使用量を減らすことをおすすめします。

そのためには、以下を実行します。

c:\opt\bamboo-elastic-agent\bin\prepareInstanceForSaving.bat

イメージを保存し、新しいイメージ構成を定義し、インスタンスを強制終了して Bamboo から実行してみてください。

最終更新日 2020 年 9 月 17 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.