Microsoft Azure documentation update 2605リリース解説:Azure IoT Operations CLI 2.6.0の変更点

Azureの更新情報を見て「バージョン番号が上がっただけなのか」「本番環境に影響するのか」を判断しにくいことがあります。今回の Microsoft Azure documentation update: build: version increments for 2605 release は、Azure IoT Operations CLI拡張を2605リリースへ進めるための更新で、単なる表記変更ではありません。

結論から言うと、主な変更は Azure IoT Operations CLI拡張の2.6.0化、AIO_RELEASEの2605化、デプロイ用テンプレート内のcertManager・secretStore・iotOperationsバージョン更新 です。既存環境が即座に自動更新されるという意味ではありませんが、管理者や開発者が az extension add --upgrade --name azure-iot-ops や az iot ops upgrade を実行するタイミングで、デプロイ・アップグレード対象が変わる可能性があります。GitHubの公式リリースでは azure-iot-ops 2.6.0 が2026年5月21日に公開され、今回のPR #878もその変更に含まれています。(GitHub)

目次

Microsoft Azure documentation update: build: version increments for 2605 releaseの要点

今回の更新は、Azure IoT Operationsを使っている管理者、Azure CLIで展開を自動化しているDevOps担当者、Bicep/ARMテンプレート差分を管理している開発者に関係します。

Azure IoT Operationsは、Azure Arc対応Kubernetesクラスター上で動くエッジ向けの統合データプレーンです。MQTTブローカー、Akriコネクタ、データフロー、Device Registryなどを組み合わせ、オンプレミスの設備データをエッジで処理してクラウドへ連携します。(Microsoft Learn)

今回の更新で見るべきポイントは、次の3つです。

見るべきポイント内容実務上の意味
CLI拡張のバージョンazure-iot-ops が2.6.0系へ更新CI/CDや運用端末で使うCLI拡張の挙動が変わる可能性がある
AIOリリース識別子AIO_RELEASE が2604から2605へ更新2605リリース向けのデプロイ・アップグレード識別子になる
テンプレート内バージョンcertManager、secretStore、iotOperationsが更新新規展開やアップグレード時に適用されるArc拡張・AIOコンポーネントのバージョンが変わる

特に重要なのは、VERSION、AIO_RELEASE、VERSIONS.iotOperations は同じものではない点です。VERSION はAzure CLI拡張のバージョン、AIO_RELEASE は2605のようなリリース識別子、VERSIONS.iotOperations はテンプレートが参照するAzure IoT Operations側のコンポーネントバージョンです。ここを混同すると、「CLIは新しいのにインスタンスは古い」「テンプレート差分を見落とした」といった運用ミスにつながります。

何が変わったのか

公式PR #878の差分では、azext_edge/constants.py、azext_edge/edge/providers/orchestration/template.py、テスト用のtest_template_unit.pyが更新されています。ファイル差分としては、直前の2.6.0a1から2.6.0への確定、テンプレートのcommit_id更新、Bicep生成メタデータ更新、依存拡張バージョンの更新が確認できます。(GitHub)

リリース識別子とCLI拡張バージョンの変更

項目変更前変更後補足
VERSION2.5.02.6.0リリース全体としてのAzure IoT Operations CLI拡張バージョン
AIO_RELEASE26042605Azure IoT Operationsの2605リリース識別子
constants.py上の最終差分2.6.0a12.6.02605向けの事前バージョンから安定版表記へ確定

5月6日の先行PR #873ではVERSIONが2.5.0から2.6.0a1へ、AIO_RELEASEが2604から2605へ更新されていました。その後、PR #878で2.6.0として確定した流れです。(GitHub)

Enablementテンプレートの変更

Enablementテンプレートは、Azure IoT Operationsを有効化する際の依存拡張に関わる部分です。今回の更新では、certManagerとsecretStoreのバージョンが上がっています。

対象変更前変更後
commit_idcb318bfe4bc1fcc887fb3f902436110a713fe797c0eedd7b4a50a5e4bc83cd43d3bda34be6e5e19d
_generator.version0.42.1.519460.43.8.12551
_generator.templateHash1066575077796008029610429247713227659883
VERSIONS.certManager0.11.00.12.0
VERSIONS.secretStore1.4.01.4.1
TRAINS.certManagerstablestable
TRAINS.secretStorestablestable

TRAINSがstableのままなので、リリーストレインがPreviewへ切り替わったわけではありません。ただし、バージョンは変わっているため、証明書管理やシークレットストア拡張の状態確認は必要です。

Instanceテンプレートの変更

Instanceテンプレートでは、Azure IoT Operations本体のバージョンが更新されています。

対象変更前変更後
commit_idf3f0f91039428f78b382b6ef9bdf194a51d8e68410b8355545af3a29f48fafd6e936ef120e4f74c8
_generator.version0.42.1.519460.43.8.12551
_generator.templateHash115588266196635153805208211492871219312
VERSIONS.iotOperations1.3.701.3.105
TRAINS.iotOperationsstablestable

実務上の注目点は、iotOperationsが1.3.70から1.3.105へ上がっていることです。2604相当の環境から2605相当へ進める場合、CLI拡張の更新だけでなく、実際のAzure IoT Operationsインスタンス側のアップグレード可否と適用タイミングを確認する必要があります。

影響範囲:誰が何を確認すべきか

今回の変更は、Azureを使っているすべてのユーザーに影響するものではありません。影響を受けやすいのは、Azure IoT Operationsを運用している環境、またはazure-iot-ops拡張を使ってデプロイやアップグレードを自動化している環境です。

対象者影響確認すべきこと
Azure IoT Operations管理者2605へのアップグレード判断、Arc拡張のバージョン確認が必要Azure PortalのUpgrade表示、Arc対応クラスターのExtensions、稼働状況
DevOps担当者CI/CDで使うCLI拡張が2.6.0へ変わる可能性パイプライン内のaz extension add、バージョン固定、テンプレート差分
開発者dataflowgraph関連などCLI機能変更の影響を受ける可能性CLIコマンドの互換性、エラーメッセージ、設定ファイルJSON
セキュリティ・運用担当者証明書管理、Secret Store、管理ID、ロール割り当て確認が必要certManager、secretStore、Key Vault連携、Event Grid関連権限
検証環境のみの利用者影響は限定的だが、Preview版から安定版への切り替えに注意2.6.0a1を使っていた端末やコンテナイメージの更新

既存インスタンスがただちに書き換わるわけではありません。ただし、運用端末やCI/CDで「常に最新のCLI拡張を入れる」設定にしている場合、次回のデプロイ・アップグレード実行時に2.6.0が使われる可能性があります。Azure CLI拡張はaz extension add --upgrade --name <extension>で更新でき、特定バージョンを指定することもできます。(Microsoft Learn)

管理者が最初に確認すべき設定

2605リリースへ進める前に、まず現在の状態を確認します。いきなり本番でaz iot ops upgradeを実行するのではなく、CLI本体、CLI拡張、Azure IoT Operationsインスタンス、Arc拡張の順に見ます。

CLI本体と拡張機能の確認

az --version

az extension show --name azure-iot-ops --output table

拡張機能を2605対応の2.6.0へ更新する場合は、次のように実行します。

az extension add --upgrade --name azure-iot-ops

バージョンを明示して検証したい場合は、次のように固定します。

az extension add --upgrade --name azure-iot-ops --version 2.6.0

Azure IoT Operationsのアップグレード手順ではAzure CLI 2.62.0以上が前提として示されています。一方、az iot opsのCLIリファレンスでは、azure-iot-ops拡張はAzure CLI 2.70.0以降の一部として案内されています。運用では、社内で検証済みの最新系Azure CLIへ更新してから拡張機能を入れ直すほうが安全です。(Microsoft Learn)

Azure IoT Operationsインスタンスの確認

az iot ops show \
  --resource-group <RESOURCE_GROUP_NAME> \
  --name <INSTANCE_NAME>

アップグレード可能なバージョンを確認するには、公式のバージョンガイドやAzure PortalのOverviewを確認します。az iot ops get-versionsは既定ブラウザーでバージョンガイドを開くコマンドとして案内されています。(Microsoft Learn)

az iot ops get-versions

Azure Portal上でUpgradeオプションが表示される場合は、そのインスタンスがアップグレード対象です。表示されない場合は、すでに最新扱い、または対象条件を満たしていない可能性があります。(Microsoft Learn)

アップグレード時の実務手順

2605へ進める場合は、検証環境で次の順序を踏むのが現実的です。

手順作業目的
事前確認az --version、az extension show、PortalのOverviewを確認現在のCLI・拡張・インスタンスバージョンを把握する
検証環境の更新az extension add --upgrade --name azure-iot-ops --version 2.6.02605向けCLIでコマンドが通るか確認する
事前ヘルスチェックaz iot ops check --preなどを使うクラスター側の準備状態を確認する
アップグレード実行az iot ops upgradeを実行対象コンポーネントを確認してから適用する
事後確認az iot ops check、Portal、Arc拡張一覧を確認broker、dataflow、Device Registryなどの状態を見る
CI/CD反映バージョン固定値やテスト期待値を更新本番反映時の差分を管理する

アップグレードコマンドは、利用可能な更新コンポーネントの表を出力し、続行確認を求めます。計画外のコンポーネントが含まれる場合は、その場で進めずに差分を確認してください。(Microsoft Learn)

az iot ops upgrade \
  --resource-group <RESOURCE_GROUP_NAME> \
  --name <INSTANCE_NAME>

az iot ops checkは、デプロイ済みIoT Operationsサービスのクラスター側の準備状況とランタイム正常性を評価するコマンドです。プレビュー扱いのコマンドではありますが、検証環境やCIでの補助チェックとして有用です。(Microsoft Learn)

az iot ops check

az iot ops check --svc broker --detail-level 1

az iot ops check --svc dataflow --as-object

デプロイ・移行で注意すべきポイント

ライブアップグレード前提で予定を組まない

Azure IoT Operationsはライブアップグレードをサポートしていないため、アップグレード中のダウンタイムを想定する必要があります。本番環境では、設備データの収集停止が許容される時間帯、MQTTクライアントの再接続設計、監視アラートの抑制ルールを事前に決めてください。(Microsoft Learn)

CLI拡張だけ更新して満足しない

azure-iot-ops拡張を2.6.0にしても、Azure IoT Operationsインスタンス本体が自動的に1.3.105へ更新されるとは限りません。CLI拡張は「操作するためのツール」であり、インスタンスのアップグレードはPortalまたはaz iot ops upgradeで別途確認・実行します。

Bicepテンプレート差分を軽視しない

今回の差分には_generator.versionと_generator.templateHashの変更が含まれます。これは、Bicep生成テンプレートのメタデータや生成結果に差分があることを示します。

自社のIaC管理で次のような運用をしている場合は、必ず更新してください。

運用パターン起きやすい問題対応
テンプレートのハッシュを監査しているtemplateHash差分を不正変更と誤検知する許可リストや監査ルールを更新する
CLI生成テンプレートをスナップショットテストしているテスト期待値が古くなり失敗する2.6.0の生成結果で再取得する
GitOpsでArc拡張バージョンを固定しているCLI側の期待バージョンとGitOps側がずれるcertManager、secretStore、iotOperationsの固定値を見直す
本番と検証でCLIバージョンが違う検証で再現しない差分が本番で出るCLI拡張を同一バージョンに固定する

certManagerとSecret Storeの状態を確認する

Enablementテンプレートでは、certManagerが0.12.0へ、secretStoreが1.4.1へ更新されています。証明書管理やKey Vault連携、シークレット同期を使っている環境では、アップグレード後に次の点を確認します。

確認項目見る場所判断基準
Arc拡張のプロビジョニング状態Azure PortalのArc対応クラスター > ExtensionsFailedやUpdatingのまま止まっていない
シークレット同期Key Vault、SecretSyncリソース、関連Podログ参照先シークレットを取得できている
証明書管理cert-manager関連リソース、証明書更新ログ証明書期限・Issuer・Secret名に異常がない
IoT Operations本体Portal、az iot ops show、az iot ops checkbroker、dataflow、Device Registryが期待どおり動作する

既知の問題ページでは、アップグレード時にクラウド側の拡張状態がFailedとして残り、az iot ops upgradeが後続で更新不要のように見えるケースが案内されています。類似の症状が出た場合は、Arc拡張の状態と再送信操作を確認してください。(Microsoft Learn)

MQTTブローカーの冗長性を確認する

MQTTブローカーのアップグレードではローリング更新が考慮されていますが、ローリング更新は2つ以上のbackend replicaがある場合に成立します。公式手順では、単一レプリカのMQTTブローカーアップグレードはサポートされないと説明されています。検証環境で最小構成を作っている場合でも、本番と同じ冗長構成でアップグレードを検証してください。(Microsoft Learn)

開発者・DevOps担当者が見るべきCLI 2.6.0の変更

今回のPR #878はバージョン更新が中心ですが、2.6.0リリース全体では、dataflowgraphコマンドグループの追加、Dataflow Graphの接続方向や必須設定の検証、--config-fileで不正なJSONを渡した場合の分かりやすいエラー表示なども含まれています。(GitHub)

変更影響しやすい場面確認ポイント
dataflowgraphコマンドグループ追加データフローグラフをCLIで管理する場合既存スクリプト名や補完、社内手順書を更新する
Dataflow Graph検証強化ノード接続方向や必須パラメーターが曖昧な構成以前は通った不完全な設定が早期にエラーになる可能性
不正JSONのエラー改善--config-fileを使う自動化エラーメッセージ依存のテストがあれば見直す
EG MQTT dataflow endpointのclientIdPrefix対応Event Grid MQTT連携を使う管理アクションやデータフロークライアントID設計、権限、Topic Space設定を再確認する

CI/CDでは、次のようにCLI拡張のバージョンを明示しておくと、ある日突然パイプラインの挙動が変わるリスクを抑えられます。

az extension add --upgrade --name azure-iot-ops --version 2.6.0
az extension show --name azure-iot-ops --query version -o tsv

本番パイプラインで「常に最新」を使う場合は、少なくとも検証パイプラインを先に流し、テンプレート差分、az iot ops checkの結果、アップグレード対象コンポーネント一覧を保存してから本番へ進めるべきです。

失敗しやすいポイント

今回のようなバージョンインクリメント更新では、機能追加リリースよりも油断しやすいのが問題です。実務では次のミスが起きやすくなります。

失敗パターンなぜ問題か回避策
「バージョン番号だけ」と判断して本番で即実行するcertManager、secretStore、iotOperationsの実体バージョンが変わる検証環境でArc拡張とデータフローを確認する
CLI拡張だけ更新してインスタンスも更新済みと思い込むツールと実環境のバージョンが別物Portalまたはaz iot ops showでインスタンス側を見る
CI/CDで最新拡張を自動取得している本番デプロイ時に意図せず2.6.0が使われる--version 2.6.0などで固定する
2.6.0a1を検証済みとして扱う安定版2.6.0とは差分がある可能性安定版で再度スモークテストする
アップグレード中の停止を見込まないAzure IoT Operationsはライブアップグレード前提ではない変更ウィンドウ、復旧手順、監視抑制を準備する
旧バージョンからの経路を確認しないダウングレードやPreview/GA間アップグレードには制約がある公式バージョンガイドとPortalのUpgrade表示を確認する

公式のアップグレード手順では、同一minor内のpatch、または次のminorへのアップグレードは可能ですが、ダウングレードはできません。またPreview版からGA版、GA版からPreview版への直接アップグレードにも制約があります。(Microsoft Learn)

今回の更新への対応方針

2605リリースに対しては、次の順で対応するのが安全です。

優先度対応理由
高運用端末とCI/CDのazure-iot-ops拡張バージョンを棚卸しする意図せず2.5.0と2.6.0が混在するのを防ぐ
高検証環境でaz extension add --upgrade --name azure-iot-ops --version 2.6.0を実行する本番前にCLI差分を確認する
高az iot ops upgradeで表示される対象コンポーネントを確認するcertManager、secretStore、iotOperations更新を把握する
中Bicep/ARMテンプレートのスナップショットや監査ルールを更新するtemplateHash変更による誤検知を防ぐ
中MQTT、dataflow、Device Registry、SecretSyncのヘルスチェックを実施するアップグレード後の業務影響を早期検知する
中dataflowgraph関連スクリプトや設定ファイルJSONを再検証するCLI 2.6.0で検証やエラー表示が変わる可能性がある

今回のMicrosoft Azure documentation updateは、Azure IoT Operations 2605リリースへ向けた重要な更新です。まずはCLI拡張の現行バージョンを確認し、検証環境で2.6.0を固定してテストしてください。そのうえで、Azure PortalのUpgrade表示、Arc拡張の状態、az iot ops upgradeの対象コンポーネント、az iot ops checkの結果を確認してから本番反映に進むのが最も安全です。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次