Skip to main content

2026 年 8 月 24 日

LCM API を使用した Omnissa Horizon 8 のインストールとアップグレードの自動化

Horizon 8 バージョン 2406 以降では、Horizon Lifecycle Management (LCM) API を使用して、Omnissa Horizon Connection Server および登録サーバ インスタンスのインストールを自動化および簡素化できます。このページでは、自動インストールまたはアップグレード ワークフローを実装できる LCM API 要求の概要レベルの例を示します。

LCM API について

LCM API は、Horizon Server API の一部です。詳細については、https://developer.omnissa.com にあるドキュメントを参照してください。

Terraform フレームワークでの LCM API の使用

Omnissa は Horizon 8 用の Terraform プロバイダを開発しています。この Terraform プロバイダで LCM API を使用して、Horizon 8 環境のライフサイクル管理を自動化できます。

Terraform プロバイダで LCM API を使用する場合は、標準の前提条件が適用されます。

Horizon 8 用の Terraform プロバイダは https://github.com/euc-dev/horizon-terraform から入手できます。

前提条件

LCM API を使用する前に、次の前提条件を満たす必要があります。このページのセクションでは、それぞれの詳細について説明します。

  • バージョン 2406 以降の Horizon Connection Server
  • WinRM を構成する
  • ホスティング方法を準備する
  • LCM API を呼び出す管理者アカウントを指定する
  • Connection Server ホストがサードパーティ CA を信頼するように構成する(必要な場合)

バージョン 2406 以降

Horizon Connection Server 2406 以降のインスタンスを少なくとも 1 つインストールまたはアップグレードします。LCM API は、バージョン 2406 以降の Horizon Connection Server からのみ使用できます。

注: 新しい Horizon 8 環境では、コマンドライン スクリプト を使用して最初の Horizon Connection Server のインストールを自動化し、以降のインストールで LCM API を使用します。

WinRM を構成する

次のコンポーネントで WinRM を構成します。

  • LCM API を呼び出す Horizon Connection Server ホスト マシン
  • 自動インストールまたはアップグレードを実行する各ターゲット マシン

ホスティング方法を準備する

次のいずれかのホスティング方法を準備します。

SMB ファイル共有

2503 リリース以降、LCM REST API は、Connection Server ビルド パッケージを登録するための SMB ファイル URL をサポートします。これにより、管理者は SMB 共有でビルド ファイルをホストし、fileUrl パラメータを使用して登録できます。

SMB ファイル URL を使用するための前提条件:

  • ファイルの URL 形式:fileUrl パラメータに smb:// プリフィックスを使用します。たとえば、Omnissa-Horizon-Connection-Server-x86_64-2503-8.15.0-13513405225 という名前の EXE ファイルの場合、fileUrl パラメーターの形式は smb://smb-share/share-name/Omnissa-Horizon-Connection-Server-x86_64-2503-8.15.0-13513405225.exe になります(smb-share/share-name は SMB 共有の一意の情報です)。
  • アクセス権限:Connection Server マシンのマシン アカウントLCM ユーザー アカウントの両方に、SMB 共有への読み取りアクセス権が必要です。 - **マシン アカウント:**API の呼び出し元のマシンを表すアカウントです。これは、DOMAIN\MACHINE$ として表されます(たとえば、example.com ドメイン内の CS という名前のマシンの場合は example.com\CS$)。 - **LCM ユーザー アカウント:**これは、LCM、REST API を呼び出すために使用されるアカウントです。

アカウントに読み取りアクセス権限を付与するには、次の手順を実行します。

  1. SMB 共有のプロパティ(プロパティ)を開き、[セキュリティ][編集] に移動して権限を変更します。
  2. マシン アカウント(example.com\CS$ など)と LCM ユーザー アカウント(example.com\LCMUser など)を追加します
  3. 両方のアカウントに読み取り権限を割り当て、プロパティへの変更を保存します([適用][OK] の順に選択)。

次に、SMB ファイル共有を使用してサーバ ビルド インストーラと LCM バンドル ファイルをホストするため、次のように SMB ファイル共有を準備します。

  • サーバの .exe インストーラと Horizon Lifecycle Manager Bundle (lcm.zip) を Omnissa Customer Connect からダウンロードします。
  • .exe インストーラと lcm.zip を SMB ファイル共有の同じディレクトリに置きます。

Web サーバ

Web サーバにサーバ ビルド インストーラと LCM バンドル ファイルをホストするため、次のように Web サーバを準備します。

  • サーバの .exe インストーラと Horizon Lifecycle Manager Bundle (lcm.zip) を Omnissa Customer Connect からダウンロードします。
  • .exe インストーラと lcm.zip をホスト Web サーバの同じディレクトリに置きます。

Horizon Connection Server ホスト

Horizon Connection Server ホストにサーバ ビルド インストーラと LCM バンドル ファイルをホストするため、次のように Horizon Connection Server ホストを準備します。

  • 必要に応じて、トラスト ストア内のサードパーティ認証局を信頼するようにサーバ ホストを構成します。
  • サーバの .exe インストーラと Horizon Lifecycle Manager Bundle (lcm.zip) を Omnissa Customer Connect からダウンロードします。
  • .exe インストーラと lcm.zip をサーバ ホストの同じディレクトリに置きます。

LCM API を呼び出す管理者アカウントを指定する

LCM API の呼び出しに使用する Horizon 管理者アカウントを指定します。このアカウントが、インストールまたはアップグレードを受け取るすべてのターゲット マシンでローカル管理者グループに属していることを確認します。

アップグレードの前に

アップグレードを実行する前に、ターゲットの Horizon Connection Server インスタンスを無効にします。アップグレードが完了したら、各 Horizon Connection Server インスタンスを有効にして、再び使用できるようにする必要があります。

サーバ ホストがサードパーティ CA を信頼するように構成する

必要に応じて、以下の手順に従って、トラスト ストア内のサードパーティ認証局 (CA) を信頼するように Horizon Connection Server ホストを構成します。

  1. 管理者としてコマンド プロンプト ウィンドウ (cmd) を開きます。

  2. Java bin ディレクトリに移動します。次に例を示します。

    cd "C:\Program Files\Omnissa\Horizon\Server\jre\bin"
    
  3. keytool コマンドを実行して、証明書をトラスト ストアにインポートします。

    keytool -trustcacerts -keystore "C:\Program Files\Omnissa\Horizon\Server\jre\lib\security\cacerts" -storepass changeit -importcert -alias {YOUR_ALIAS} -file {YOUR_CRT_FILE}
    

    {YOUR_ALIAS} は、証明書の一意のエイリアス (MyCertAlias など)に置き換えます。

    {YOUR_CRT_FILE} は、証明書ファイルのフル パス(C:\path\to\certificate.crt など)に置き換えます。

  4. プロンプトが表示されたら、yes と入力して Enter を押し、証明書のインポートを確認して完了します。

  5. services.msc を開き、表示されているすべての Omnissa Horizon コンポーネントを再起動して、証明書の変更を適用します。

    また、サーバを再起動して変更を有効にすることもできます。

ワークフローのサンプル

以降のセクションでは、一般的なインストールまたはアップグレード ワークフローで使用される LCM API 要求の例について説明します。

1. LCM 権限を作成して割り当てる

LCM API を実行するには、LCM_MANAGEMENT ロールを作成し、このロールを指定されたユーザー アカウントに割り当てる必要があります。

LCM_MANAGEMENT ロールを作成します。

[POST] /config/v1/roles
{
  "description": "Custom LCM role.",
  "name": "LCM",
  "privileges": [
    "LCM_MANAGEMENT"
  ]
}

指定されたアカウントに LCM_MANAGEMENT ロールを割り当てます。

[POST] /config/v1/permissions
[
  {
    "userOrGroup": "UserOrGroup/Uy0xLTUtMjEtMjMzNzczOTMxMC0yNjQ3NjI3MzY0LTE3NzczMzI0NzktNTAw",
    "role": "Role/NmU4MjgwMmYtMDc4Yi00NGI0LWJiYmEtNGU1MWIxYzNhZWRj/TENN",
    "accessGroup": "AccessGroup/NmU4MjgwMmYtMDc4Yi00NGI0LWJiYmEtNGU1MWIxYzNhZWRj/Um9vdA"
  }
]

**注:**LCM ワークフローのステータス情報の取得のみを必要とするユーザー アカウントに、LCM_VIEW ロールを作成して割り当てることもできます。LCM_VIEW 権限を持つユーザーには読み取り専用アクセス権が付与され、POST 要求を発行することはできません。

2. インストーラ ビルドを登録する

LCM_MANAGEMENT ロールを持つユーザーは、ターゲット マシンにインストールされるサーバ ビルドを登録できます。

**注:**新しい Horizon 8 リリースにアップグレードする場合は、新しいサーバ ビルドをその新しいリリースに再登録する必要があります。

  • 要求パラメータには、ホスティング場所の .exe ビルド インストーラのファイル URL を指定します。「前提条件」の説明に従って、Horizon Lifecycle Manager バンドル (lcm.zip) が .exe ビルド インストーラと同じディレクトリにあることを確認します。
  • 要求本文には、ビルド メタデータを含めます。

**注:**以下の例では、EXE は特定の Horizon Connection Server インストーラのビルド ファイルであり、波括弧 ({}) 内の部分は、特定のセットアップで指定した値を表します。これらのコマンドを実際の環境で実行する場合は、既存のインストーラ ファイル名と、SMB 共有および Web サーバの情報に置き換えてください。

例 - SMB 共有

[POST] /rest/config/v1/server-installer-packages/action/register?fileUrl=smb://{smb-share}/{share-name}/Omnissa-Horizon-Connection-Server-x86_64-2503-8.15.0-13513405225.exe

{
  "file_size_in_bytes": 401860608,
  "version": "8.15.0",
  "checksum": "d814d56a30477d07e8128a18c5ec09ba38984129f40911ad332e96c143e4fabb",
  "build_number": "13513405225",
  "filename": "Omnissa-Horizon-Connection-Server-x86_64-2503-8.15.0-13513405225.exe",
  "display_Name": "Omnissa Horizon Connection Server"
}

例 - Web サーバ

[POST] /config/v1/server-installer-packages/action/register?fileUrl=https://{local-webserver}/installer/Omnissa-Horizon-Connection-Server-x86_64-2406-8.13.0-8565949332.exe

{
  "build_number": "8565949332",
  "checksum": "d2f31e1bc6de212f11a34b502ec16d66d5bf896947de3288a337c10df8c5be67",
  "display_name": "Omnissa Horizon Connection Server",
  "file_size_in_bytes": 365891976,
  "filename": "Omnissa-Horizon-Connection-Server-x86_64-8.13.0-8565949332.exe",
  "version": "2406"
}

登録に成功すると、登録 API は、登録されたインストーラ パッケージの一意の server_installer_package_id を返します。

次の LCM API を使用して、他の登録タスクを実行することもできます。詳細については、各 API のリファレンス ページを参照してください。

タスクAPI
登録されているすべてのインストーラ ビルドのリストを取得する[GET] /config/v1/server-installer-packages
指定された ID (server_installer_package_id) のインストーラ ビルドのメタデータを取得する[GET] /config/v1/server-installer-packages/{id}
指定された ID (server_installer_package_id) のインストーラ ビルドのメタデータを登録解除する[POST] /config/v1/server-installer-packages/{id}/action/unregister

3. ターゲット マシンのインストールの前提条件を確認する

事前チェック API を使用すると、ターゲット マシンが所定の要件を満たしていることを検証できます。インストール コマンドを呼び出す前に、次の事前チェック要求に対して良好な応答が得られることを確認します。

ターゲット マシンのシステム前提条件を検証します。

[POST] /config/v1/connection-servers/action/validate-system-requirements

ターゲット マシンの Active Directory の前提条件を検証します。

[POST] /config/v1/connection-servers/action/validate-ad-requirements

ターゲット マシンの vCenter Server の前提条件を検証します。

[POST] /config/v1/connection-servers/action/validate-virtual-center-requirements

スキーマ マスターと、アップグレードするターゲット マシンのサーバ レプリケーションのステータスを検証する:

[POST] /config/v1/connection-servers/action/validate-ldap-requirements

4. インストール コマンドを実行します。

ターゲット マシンの前提条件を検証した後、インストールまたはアップグレード API を呼び出すことができます。

要求本文に次の要素を含めます。

キー値/説明
domainActive Directory ドメインの名前
server_installer_package_idビルド登録 API 応答で返されたサーバ ビルド ID
target_server_fqdnターゲット マシンの完全修飾ドメイン名 (FQDN)
User_nameターゲット マシンでのインストール/アップグレードのスケジューリングに使用されるユーザー アカウントの名前。ユーザーは、Horizon 管理者権限を持ち、ターゲット マシンのローカル管理者グループに属している必要があります。
パスワードターゲット マシンでのインストール/アップグレードのスケジューリングに使用されるユーザー アカウントのパスワード
server_msi_install_spec指定されたインストール オプション(インストール要求でのみ必要)。詳細については、「 [POST] /config/v1/connection-servers/action/install-connection-server reference」の Schema セクションを参照してください。

ターゲット マシンでサーバ ビルドをアップグレードします。

[POST] /config/v1/connection-servers/action/upgrade-connection-server

{
  "domain": "AD-TEST-DOMAIN",
  "password": "<password>",
  "server_installer_package_id": "a3768752-77c6-45d0-8e20-908227bce79f",
  "target_server_fqdn": "server.example.com",
  "user_name": "Administrator"
}

ターゲット マシン上にサーバー ビルドをインストールします。

[POST] /config/v1/connection-servers/action/install-connection-server

{
  "domain": "AD-TEST-DOMAIN",
  "password": "<password>",
  "server_installer_package_id": "a3768752-77c6-45d0-8e20-908227bce79f",
  "server_msi_install_spec": {
    "admin_sid": "string",
    "deployment_type": "GENERAL",
    "fips_enabled": false,
    "fw_choice": true,
    "html_access": true,
    "install_directory": "%ProgramFiles%\\Omnissa\\Horizon\\Server",
    "primary_connection_server_fqdn": "server.example.com",
    "server_instance_type": "STANDARD_SERVER",
    "server_recovery_pwd": "<password>",
    "server_recovery_pwd_reminder": "<reminder>",
    "vdm_ipprotocol_usage": "IPv4"
  },
  "target_server_fqdn": "server.example.com",
  "user_name": "Administrator"
}

インストール/アップグレード ジョブを監視する

ターゲット マシンでインストールまたはアップグレード ジョブをスケジューリングした後、次の要求でジョブのステータスを確認できます。要求パラメータとしてターゲット マシンの FQDN を含めます。

[POST] /config/v1/connection-servers/action/retrieve-installer-status?{fqdn}

このページは役に立ちましたか?

このトピックについてフィードバックを送信

このトピックは役に立ちましたか?

個人情報や機密情報は入力しないでください。

リンクを生成しています…