パッチジョブの作成後、次の手順を使用してパッチの確認と管理を行うことができます。
- パッチジョブの一覧表示: すべてのアクティブなジョブと完了したジョブのリストが表示されます。
- VM インスタンスの詳細の一覧表示: VM インスタンスのパッチ ステータスが確認できます。
- パッチジョブの説明: 特定のパッチジョブの詳細を取得します。
- パッチジョブのキャンセル: 特定のパッチジョブをキャンセルします。
パッチジョブは、Google Cloud コンソール、Google Cloud CLI、または REST を使用して管理できます。
始める前に
- OS Config の割り当てを確認します。
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。
このページのサンプルをどのように使うかに応じて、タブを選択してください。
コンソール
Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- デフォルトのリージョンとゾーンを設定します。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
-
権限
プロジェクトのオーナーは、パッチジョブの実行と管理を行うための完全アクセス権を持っています。それ以外のすべてのユーザーにはアクセス権限を付与する必要があります。次のいずれかの詳細な役割を付与できます。
roles/osconfig.patchJobExecutor
: パッチジョブを実行、キャンセル、取得、一覧表示する権限が含まれています。また、パッチジョブのインスタンスの詳細を表示する権限も含まれています。roles/osconfig.patchJobViewer
: パッチジョブを取得して一覧表示するための読み取り専用アクセス権限が含まれています。また、パッチジョブのインスタンスの詳細を表示する権限も含まれています。
パッチジョブを一覧表示する
すべてのアクティブなジョブと完了したジョブのリストを表示します。
コンソール
- Google Cloud コンソールで、[Compute Engine] > [VM Manager] > [パッチ] ページに移動します。
- [パッチジョブ] タブを選択します。
gcloud
os-config patch-jobs list
コマンドを使用して、パッチジョブを一覧表示します。
gcloud compute os-config patch-jobs list
Google Cloud CLI の場合、デフォルトの出力では、完了済みまたはアクティブなパッチジョブの最新の 10 個が返されます。この設定は、--limit
フラグを使用してオーバーライドできます。
出力は次のようになります。
ID NAME DESCRIPTION CREATE_TIME UPDATE_TIME STATE TARGETED_INSTANCES 23b0815e-1c94-4dc6-91b1-30a6da395cb9 2019-11-05T20:22:54.150Z 2019-11-06T19:40:08.641Z COMPLETED_WITH_ERRORS 4 4116ad72-bd57-4e48-94dc-7a577dc707b6 2019-08-23T20:36:03.068Z 2019-08-23T20:36:15.984Z CANCELED 2 06856cbe-9a7b-498e-9105-9ae4eb566511 2019-08-12T20:27:38.410Z 2019-08-12T20:28:37.583Z SUCCEEDED 1 04a15964-9eaa-4282-96f5-9cd535352cf6 2019-08-12T17:48:22.938Z 2019-08-12T17:48:42.274Z SUCCEEDED 0 21dc1e06-deee-4e3a-821e-8082a32abde5 testing patch job reboot 2019-07-24T22:45:07.451Z 2019-07-25T00:44:44.459Z TIMED_OUT 1
複数のフラグを使用して検索のフィルタ、並べ替え、フォーマットが可能です。たとえば、次のコマンドを実行すると、上記の出力をフィルタしてステータスが SUCCEEDED
のパッチジョブの URI のみを作成時刻の昇順で一覧表示できます。
gcloud compute os-config patch-jobs list \ --filter="state=SUCCEEDED" \ --sort-by="create_time" --uri
出力は次のようになります。
https://osconfig.googleapis.com/v1/projects/1234567/patchJobs/04a15964-9eaa-4282-96f5-9cd535352cf6 https://osconfig.googleapis.com/v1/projects/1234567/patchJobs/06856cbe-9a7b-498e-9105-9ae4eb566511
フラグの全リストについては、os-config patch-jobs list
コマンドをご覧ください。
REST
API で、patchJobs.list
メソッドに対する GET
リクエストを作成します。project-id
は実際のプロジェクト ID に置き換えます。
GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs
特定のパッチジョブのすべての VM インスタンスの詳細を一覧表示する
OS Patch Management を使用する VM インスタンスの完全なリストについては、パッチジョブのステータスを確認してください。
コンソール
- Google Cloud コンソールで、[Compute Engine] > [VM Manager] > [パッチ] ページに移動します。
- [パッチジョブ] タブを選択します。
- 確認するパッチジョブの名前をクリックします。
- [更新された VM インスタンス] までスクロールします。
gcloud
特定のパッチジョブのすべての VM の詳細を一覧表示するには、os-config patch-jobs list-instance-details
コマンドを使用します。patch-job-id
は、パッチジョブの ID に置き換えます。
gcloud compute os-config patch-jobs list-instance-details patch-job-id
たとえば、次のコマンドを実行すると、パッチジョブ 23b0815e-1c94-4dc6-91b1-30a6da395cb9
の一部であるすべてのインスタンスの詳細を表示できます。
gcloud compute os-config patch-jobs list-instance-details 23b0815e-1c94-4dc6-91b1-30a6da395cb9
出力は次のようになります。
NAME ZONE STATE FAILURE_REASON instance-1 us-central1-a SUCCEEDED guest-policy-test-instance us-east1-c TIMED_OUT Instance timed out while in state: APPLYING_PATCHES after PT1H2.225S my-centos us-west1-b SUCCEEDED my-windows us-west1-b FAILED Error running pre-patch step: fork/exec /tmp/pre_patch_script.sh: no such file ..."
複数のフラグを使用して検索のフィルタ、並べ替え、フォーマットが可能です。たとえば、次のコマンドを実行すると、すべての非アクティブな VM の詳細をインスタンス名で降順に並べて一覧表示できます。patch-job-id
は、パッチジョブの ID に置き換えます。
gcloud compute os-config patch-jobs list-instance-details patch-job-id \ --filter="state=INACTIVE" \ --sort-by="~name"
フラグの全リストについては、os-config patch-jobs list-instance-details
コマンドをご覧ください。
REST
API で、patchJobs.instanceDetails
メソッドに対する GET
リクエストを作成します。
GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id/instanceDetails
以下を置き換えます。
project-id
: 実際のプロジェクト ID。patch-job-id
: 実際のパッチジョブ ID。
パッチジョブについて説明する
パッチジョブの詳細情報を確認します。
コンソール
- Google Cloud コンソールで、[Compute Engine] > [VM Manager] > [パッチ] ページに移動します。
- [パッチジョブ] タブを選択します。
- 確認するパッチジョブの名前をクリックします。
- [情報の更新] セクションを確認します。
gcloud
os-config patch-jobs describe
コマンドを使用して、パッチジョブを記述します。patch-job-id
は、パッチジョブの ID に置き換えます。
gcloud compute os-config patch-jobs describe patch-job-id
たとえば、次のコマンドを実行すると、パッチジョブ 23b0815e-1c94-4dc6-91b1-30a6da395cb9
に関する情報を表示できます。
gcloud compute os-config patch-jobs describe 23b0815e-1c94-4dc6-91b1-30a6da395cb9
出力は次のようになります。
createTime: '2019-11-05T20:22:54.150Z' errorMessage: Completed with 2 instance failure(s). filter: id=* instanceDetailsSummary: instancesFailed: '1' instancesSucceeded: '2' instancesTimedOut: '1' instanceFilter: {} name: projects/1234567/patchJobs/23b0815e-1c94-4dc6-91b1-30a6da395cb9 patchConfig: {} percentComplete: 100.0 state: COMPLETED_WITH_ERRORS updateTime: '2019-11-06T19:40:08.641Z'
REST
API で、patchJobs.get
メソッドに対する GET
リクエストを作成します。
GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id
以下を置き換えます。
project-id
: 実際のプロジェクト ID。patch-job-id
: 実際のパッチジョブ ID。
パッチジョブのキャンセル
パッチジョブをキャンセルすると、OS Config エージェントは実行中のサブタスクを終了しますが、その後は続行しません。サブタスクとは、簡単に停止できないエージェントによって実行されるタスクを指します。
たとえば、VM インスタンスの再起動中にパッチジョブがキャンセルされた場合、再起動(もしあれば再起動後の自動パッチも)は実行されて完了しますが、エージェントはそのパッチジョブの追加タスクを開始しません。
コンソール
- Google Cloud コンソールで、[Compute Engine] > [VM Manager] > [パッチ] ページに移動します。
- [パッチジョブ] タブを選択します。
- キャンセルするパッチジョブの [アクション] メニューを開きます。
- [キャンセル] を選択します。
gcloud
パッチジョブをキャンセルするには、os-config patch-jobs cancel
コマンドを使用します。patch-job-id
は、パッチジョブの ID に置き換えます。
gcloud compute os-config patch-jobs cancel patch-job-id
REST
API で、patchJobs.cancel
メソッドに対する POST
リクエストを作成します。
POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id:cancel
以下を置き換えます。
project-id
: 実際のプロジェクト ID。patch-job-id
: 実際のパッチジョブ ID。
次のステップ
- Patch の詳細を確認する。
- 詳しくは、パッチ コンプライアンスのステータスをご覧ください。
- パッチジョブを作成する。
- パッチジョブをスケジュールする。