次の方法で共有


Azure リソース通知 - Azure Event Grid の ContainerService イベント (プレビュー)

Azure Kubernetes Service (AKS) では、Container Service イベント リソース システム トピックを使用して、AKS クラスターでスケジュールされたメンテナンス アクティビティに対するプリエンプティブ通知を配信します。 この機能により、スケジュール済み、開始済み、完了済み、キャンセル済み、失敗など、さまざまなイベント ステージで重要なメンテナンス タスクのプッシュ通知を受信できます。 特に、スケジュール済みステージでは、通知は実際のメンテナンス アクティビティの 7 日前と 24 時間前にディスパッチされます。

通知には次の内容が含まれます。

  • AKS によって開始されるメンテナンス (アンダーレイ移行、Konnectivity トンネル スイッチなど)
  • お客様が開始するメンテナンス (自動アップグレード、ノード OS のアップグレード、毎週のリリース ウィンドウなど)

このような将来に関する通知は、中断の可能性に備える機会を提供することでお客様を支援し、最終的には運用コストを最小限に抑えることを目的としています。

この記事では、Azure リソース通知の ContainerService イベントのプロパティとスキーマについて説明します。 イベント スキーマの一般的な概要については、「Azure Event Grid イベント スキーマ」をご覧ください。 さらに、生成されたイベントのサンプルと、このトピックの種類のシステム トピックを作成する方法に関する関連記事へのリンクが提供されています。

イベントの種類

ContainerService では、次のイベントの種類を使用することができます。

イベントの種類 説明
Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted AKS クラスターのスケジュールされたメンテナンス イベントに関する事前通知を提供します。

ロールベースのアクセス制御

現在、これらのイベントは Azure サブスクリプション スコープでのみ出力されます。 これは、このトピックの種類に対するイベント サブスクリプションを作成しているエンティティは、この Azure サブスクリプション全体で通知を受け取ることを意味します。 セキュリティ上の理由から、Azure サブスクリプション全体の読み取りアクセス権を持つプリンシパルだけが、このトピックについてのイベント サブスクリプションを作成できるように、制限する必要があります。 このシステム トピックを介してデータにアクセスするには、Event Grid で必要な汎用アクセス許可に加えて、Azure リソース通知に固有の次のアクセス許可が必要です: ''。

Microsoft.ResourceNotifications/systemTopics/subscribeToContainerServiceEventResources/action

イベント スキーマ

スキーマを次に示します。

{
	"id": "string",
	"source": "string",
	"subject": "string",
	"type": "Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted",
	"time ": "string in date-time",
	"data": {
		"resourceInfo": {
			"id": "string",
			"name": "string",
			"type": "string",
			"location": "string",
			"properties": {
				"description": "string",
				"eventId": "string",
				"eventSource": "string",
				"eventStatus": "string",
				"eventDetails": "string",
				"scheduledTime": "string in date-time",
				"startTime": "string in date-time",
				"lastUpdateTime": "string in date-time",
				"resources": "array of strings",
				"resourceType": "string"
			}
		},
		"operationalInfo": {
			"resourceEventTime": "string in date-time"
		},
		"apiVersion": "string"
	},
	"specversion": "string"
}

イベントのトップレベルのデータを次に示します。

プロパティ タイプ 説明
id String イベントの一意識別子
source String このシステム トピックが作成されている Azure サブスクリプション。
subject String このイベントが生成された基本リソースへの発行元定義のパス。
type String このシステム トピックの種類の登録されているイベントの種類
time String
形式: 2022-11-07T18:43:09.2894075Z
プロバイダーの UTC 時刻に基づくイベントの生成時刻。
data オブジェクト リソース プロバイダーに固有のイベント データが含まれます。 詳細については、次の表を参照してください。
specversion String CloudEvents スキーマ仕様バージョン。

data オブジェクトには、次のプロパティがあります。

プロパティ タイプ 内容
resourceInfo オブジェクト リソースに固有のデータ。 詳細については、次の表を参照してください。
apiVersion String リソース プロパティの API バージョン。
operationalInfo オブジェクト リソースに関連する運用情報の詳細。

resourceInfo オブジェクトには、次のプロパティがあります。

プロパティ タイプ 説明
id String 発行元が定義したイベントの対象のパス
name String このフィールドはイベント ID を示します。 常に、id フィールドの最後のセクションの値になります。
type String 生成されているイベントの種類。
location String リソースが配置されている場所またはリージョン。
properties Object リソースのペイロード。 詳細については、次の表を参照してください。

operationalInfo オブジェクトには、次のプロパティがあります。

プロパティ タイプ 説明
resourceEventTime DateTime リソースが更新された日時。

ScheduledEventEmitted イベントには次のプロパティがあります。

プロパティ タイプ 説明
description String イベントの説明。
eventId String イベントのイベント ID。
eventSource String イベントのソース。
eventStatus 列挙型 (文字列) イベントの状態 - スケジュール済み、開始済み、完了済み、キャンセル済み、失敗。
eventDetails String イベントの詳細。
scheduledTime 文字列 (日時形式) イベントの開始がスケジュールされている時刻。
lastUpdateTime 文字列 (日時形式) イベントの状態が最後に更新された時刻。
resources 文字列の配列 (Azure Resource Manager ID 形式) イベントの影響を受けたリソースの一覧。
resourceType String イベントのリソースの種類

イベントの例

次の例は、キー/値の変更イベントのスキーマを示します。

{
	"id": "5bdb52cf-5489-4845-86c8-7fe94a4fc6c1",
	"source": "/subscriptions/{subscription-id}",
	"subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.ContainerService/managedClusters/{managedcluster-name}/scheduledEvents/{event-id}",
	"data": {
		"resourceInfo": {
			"id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.ContainerService/managedClusters/{managedcluster-name}/scheduledEvents/{event-id}",
			"name": "{event-id}",
			"type": "Microsoft.ContainerService/managedClusters/scheduledEvents",
			"properties": {
				"description": "ScheduledEvents",
				"eventId": "bbe82027-0444-4f73-897a-0bbfe3af66f1",
				"eventSource": "AutoUprader",
				"eventStatus": "Started",
				"eventDetails": "Start to upgrade security vhd",
				"scheduledTime": "2024-04-16T22:17:12.103268606Z",
				"startTime": "0001-01-01T00:00:00.0000000Z",
				"lastUpdateTime": "0001-01-01T00:00:00.0000000Z",
				"resources": [
				  "/subscriptions/{subscription-id}/resourcegroups/{rg-name}/providers/Microsoft.ContainerService/managedClusters/{managedcluster-name}"
				],
				"resourceType": "ManagedCluster"
			}
		},
		"operationalInfo": {
			"resourceEventTime": "2024-04-16T22:17:12.1032748"
		},
		"apiVersion": "2023-11-02-preview"
	},
	"type": "Microsoft.ResourceNotifications.ContainerServiceEventResources.ScheduledEventEmitted",
	"specversion": "1.0",
	"time": "2024-04-16T22:17:12.1032748Z"
}

お問い合わせ

この機能について質問またはフィードバックがある場合は、ご遠慮なく arnsupport@microsoft.com までお問い合わせください。

特定のイベントについての特定のフィードバックがさらに適切に処理されるように、次の情報を提供してください。

見つからないイベントの場合:

  • システム トピックの種類の名前
  • 操作が実行された時点のおおよそのタイムスタンプ (UTC)
  • 通知が生成されたベース リソース ID
  • Azure portal でリソースに移動し、右端にある JSON ビューを選択します。 リソース ID は、JSON ビュー ページの最初のフィールドです。
  • 予期されるイベントの種類
  • 実行された操作 (起動または停止した VM、作成されたストレージ アカウントなど)
  • 発生した問題の説明 (VM は起動したが Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged イベントが生成されない、など)
  • 可能であれば、実行された操作の関連付け ID を入力してください

遅延したコンテンツや予期しないコンテンツを含むイベントの場合

  • システム トピックの種類の名前
  • 通知のすべての内容 (data.resourceInfo.properties を除く)
  • 発生した問題と影響を受けたフィールド値の説明

このデータを共有する際は、エンド ユーザーを特定できる情報を提供しないでください。

次のステップ

Azure リソース通知 - Container Service イベントへの登録に関する記事を参照してください。