クイックスタート: Azure Resource Manager テンプレートと Azure PowerShell または Azure CLI を使って MedTech サービスをデプロイする
Azure ソリューション用にインフラストラクチャをコードとして実装するには、Azure Resource Manager テンプレート (ARM テンプレート) を使用します。 テンプレートは、プロジェクトのインフラストラクチャと構成を定義する JavaScript Object Notation (JSON) ファイルです。 このテンプレートでは、デプロイしようとしているものを、それを作成する一連のプログラミング コマンドを記述しなくても記述できる、宣言型の構文を使用しています。 このテンプレートでは、デプロイするリソースとそれらのリソースのプロパティを指定します。
このクイックスタートでは、Azure PowerShell または Azure CLI を使って、Azure Resource Manager テンプレート (ARM テンプレート) を使う MedTech サービスのインスタンスをデプロイする方法について説明します。
ヒント
ARM テンプレートの詳細については、「ARM テンプレートとは」を参照してください。
前提条件
デプロイを開始してクイックスタートを完了するには、以下の前提条件が必要です。
アクティブな Azure サブスクリプション アカウント。 Azure サブスクリプションをお持ちでない場合は、サブスクリプションに関する判断のガイドを参照してください。
Azure サブスクリプションの所有者または共同作成者とユーザー アクセス管理者のロールの割り当て。 詳細については、「Azure ロールベースのアクセス制御 (Azure RBAC) とは」
Azure サブスクリプションに登録されている Microsoft.HealthcareApis と Microsoft.EventHub リソース プロバイダー。 リソース プロバイダーの登録の詳細については、「Azure リソース プロバイダーと種類」を参照してください。
ローカルにインストールされた Azure PowerShell および/または Azure CLI。
これらの前提条件を満たしていると、ARM テンプレートをデプロイする準備が整っています。
ARM テンプレートを確認する
このクイックスタートでリソースのデプロイに使う ARM テンプレートは、GitHub 上の azuredeploy.json ファイルを使って、Azure クイック スタート テンプレートから入手できます。
Azure Resource Manager テンプレートと Azure PowerShell を使って MedTech サービスをデプロイする
Azure PowerShell を使って MedTech サービスをデプロイするには、次の 5 つの手順を実行します。
Azure にサインインします。
Connect-AzAccount
サブスクリプション ID を使って、Azure サブスクリプションのデプロイ コンテキストを設定します。 サブスクリプション ID を取得する方法については、「Azure portal でサブスクリプションとテナントの ID を取得する」を参照してください。
Set-AzContext <AzureSubscriptionId>
例:
Set-AzContext abcdef01-2345-6789-0abc-def012345678
デプロイする場所を確認します。 Azure Health Data Services が現在利用できる Azure リージョンについては、「リージョン別の利用可能な製品」のサイトを参照してください。
azuredeploy.json ファイルの location セクションを確認することもできます。
Azure リージョンの場所名の一覧が必要な場合は、次のコードを使って一覧を表示できます。
Get-AzLocation | Format-Table -Property DisplayName,Location
このクイックスタート用に作成されたリソース グループがまだない場合は、次のコードを使って作成できます。
New-AzResourceGroup -name <ResourceGroupName> -location <AzureRegion>
例:
New-AzResourceGroup -name ArmTestDeployment -location southcentralus
重要
MedTech サービスを正常にデプロイするには、リソースのベース名に数字と小文字を使う必要があります。 ベース名の最小要件は 3 文字で、最大 16 文字です。
次のコードを使って、ARM テンプレートを使う MedTech サービスをデプロイします。
New-AzResourceGroupDeployment -ResourceGroupName <ResourceGroupName> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.healthcareapis/workspaces/iotconnectors/azuredeploy.json -basename <BaseName> -location <AzureRegion>
例:
New-AzResourceGroupDeployment -ResourceGroupName ArmTestDeployment -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.healthcareapis/workspaces/iotconnectors/azuredeploy.json -basename abc123 -location southcentralus
重要
複数のサービスからイベント ハブへのアクセスを許可する場合は、サービスごとに独自のイベント ハブ コンシューマー グループを作ることを強くお勧めします。
コンシューマー グループを使うと、複数のコンシューマー アプリケーションがイベント ストリームの個別のビューを保有し、独自のペースで独自のオフセットを指定してストリームを別々に読み取ることができます。 詳細については、「コンシューマー グループ」を参照してください。
例 :
同じイベント ハブにアクセスする 2 つの MedTech サービス。
同じイベント ハブにアクセスする MedTech サービスとストレージ ライター アプリケーション。
Azure Resource Manager テンプレートと Azure CLI を使って MedTech サービスをデプロイする
Azure CLI を使って MedTech サービスをデプロイするには、次の 5 つの手順を実行します。
Azure にサインインします。
az login
サブスクリプション ID を使って、Azure サブスクリプションのデプロイ コンテキストを設定します。 サブスクリプション ID を取得する方法については、「Azure portal でサブスクリプションとテナントの ID を取得する」を参照してください。
az account set <AzureSubscriptionId>
例:
az account set abcdef01-2345-6789-0abc-def012345678
デプロイする場所を確認します。 Azure Health Data Services が現在利用できる Azure リージョンについては、「リージョン別の利用可能な製品」のサイトを参照してください。
azuredeploy.json ファイルの location セクションを確認することもできます。
Azure リージョンの場所名の一覧が必要な場合は、次のコードを使って一覧を表示できます。
az account list-locations -o table
このクイックスタート用に作成されたリソース グループがまだない場合は、次のコードを使って作成できます。
az group create --resource-group <ResourceGroupName> --location <AzureRegion>
例:
az group create --resource-group ArmTestDeployment --location southcentralus
重要
MedTech サービスを正常にデプロイするには、リソースのベース名に数字と小文字を使う必要があります。
次のコードを使って、ARM テンプレートを使う MedTech サービスをデプロイします。
az deployment group create --resource-group <ResourceGroupName> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.healthcareapis/workspaces/iotconnectors/azuredeploy.json --parameters basename=<BaseName> location=<AzureRegion>
例:
az deployment group create --resource-group ArmTestDeployment --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.healthcareapis/workspaces/iotconnectors/azuredeploy.json --parameters basename=abc123 location=southcentralus
重要
複数のサービスからイベント ハブへのアクセスを許可する場合は、サービスごとに独自のイベント ハブ コンシューマー グループを作ることを強くお勧めします。
コンシューマー グループを使うと、複数のコンシューマー アプリケーションがイベント ストリームの個別のビューを保有し、独自のペースで独自のオフセットを指定してストリームを別々に読み取ることができます。 詳細については、「コンシューマー グループ」を参照してください。
例 :
同じイベント ハブにアクセスする 2 つの MedTech サービス。
同じイベント ハブにアクセスする MedTech サービスとストレージ ライター アプリケーション。
デプロイされたリソースとアクセス許可を確認する
デプロイが完了すると、次のリソースとアクセス ロールが ARM テンプレート デプロイに作成されます。
Azure Event Hubs 名前空間とイベント ハブ。 このデプロイでは、イベント ハブの名前は devicedata です。
イベント ハブ コンシューマー グループ。 このデプロイでは、コンシューマー グループの名前は $Default です。
Azure Event Hubs のデータ送信者ロール。 このデプロイでは、送信者ロールの名前は devicedatasender です。Shared Access Signature (SAS) を使ってイベント ハブへのアクセスを提供するために使用できます。 SAS を使ったアクセスの認可の詳細については、「Shared Access Signature を使用する Event Hubs リソースへのアクセスの承認」を参照してください。
Health Data Services ワークスペース。
Health Data Services FHIR® サービス。
Health Data Services MedTech サービスと以下の必要なシステム割り当てマネージド ID ロール。
イベント ハブの場合、Azure Event Hubs データ受信者ロールは、イベント ハブのアクセスの制御セクション (IAM) で割り当てられます。
FHIR サービスの場合、FHIR データ ライター ロールは、FHIR サービスのアクセスの制御セクション (IAM) で割り当てられます。
重要
このクイックスタートでは、ARM テンプレートは、MedTech サービスが作成モードで動作するように構成を行います。 FHIR サービスにデータを送信する各デバイスに、患者リソースとデバイス リソースが作成されます。
作成と検索という MedTech サービスの解決の種類の詳細については、「宛先タブの構成」を参照してください。
デプロイ後のマッピング
MedTech サービスのインスタンスを正常にデプロイした後も、準拠する有効なデバイスと FHIR 宛先マッピングを提供する必要があります。
デバイス マッピングの詳細については、「MedTech サービス デバイス マッピングの概要」を参照してください。
FHIR 宛先マッピングの詳細については、「FHIR 宛先マッピングの概要」を参照してください。
Azure PowerShell リソースをクリーンする
リソース グループとデプロイされた Bicep ファイル リソースが不要になったら、リソース グループを削除します。これにより、リソース グループ内のリソースが削除されます。
Remove-AzResourceGroup -Name <ResourceGroupName>
例: Remove-AzResourceGroup -Name ArmTestDeployment
Azure CLI リソースをクリーンする
リソース グループとデプロイされた Bicep ファイル リソースが不要になったら、リソース グループを削除します。これにより、リソース グループ内のリソースが削除されます。
az group delete --name <ResourceGroupName>
例: az group delete --resource-group ArmTestDeployment
ヒント
ARM テンプレートの作成手順について説明したチュートリアルについては、「チュートリアル: 初めての ARM テンプレートを作成してデプロイする」を参照してください。
次のステップ
MedTech サービスでのデバイス データの処理ステージの概要
Note
FHIR® は HL7 の登録商標であり、HL7 の許可を得て使用しています。