建立 VHD 的安裝指令碼 - Amazon AppStream 2.0

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立 VHD 的安裝指令碼

AppStream 2.0 會使用您提供的安裝指令碼,在應用程式啟動之前掛載 VHD。您也可以使用安裝指令碼來完成其他必要任務,以便讓應用程式正常運作。例如,您可以設定登錄機碼、註冊 DLL、管理必要條件,或從安裝程式指令碼修改使用者設定檔。 AppStream 2.0 提供可用於掛載 VHD 的指令碼範例。您需要根據您的 VHD 和應用程式所需修改這些指令碼。

注意

使用 AppStream 2.0 封裝的應用程式區塊不需要安裝程式指令碼。不過,您可以提供選用的安裝後指令碼,以自訂應用程式安裝。

使用下列連結來下載範例指令碼:

AppStream 2.0 將安裝指令碼和 VHD 下載到叢集串流執行個體上的目錄,然後執行安裝指令碼。安裝指令碼會以完整管理員權限在作業系統上執行。安裝指令碼會在 Microsoft Windows 上的 SYSTEM 環境中執行,以及作為 root 使用者在 Amazon Linux 2 上執行。

VHD 和安裝指令碼的檔案系統位置:

  • Amazon Linux 2:

    /opt/appstream/AppBlocks/appblock-name/

    appblock-name

    VHD 和安裝程式碼對應的應用程式區塊名稱。

  • Microsoft Windows:

    C:\AppStream\AppBlocks\appblock-name\

    appblock-name

    VHD 和安裝程式碼對應的應用程式區塊名稱。

AppStream 2.0 會保留物件上的檔案名稱。例如,如果您的應用程式區塊命名為 MyApps,且 VHD 命名為 apps.vhd 和安裝指令碼命名為 mount-apps.ps1,則 Windows 串流執行個體上的完整路徑為:

  • VHD

    C:\AppStream\AppBlocks\MyApps\apps.vhd

  • 安裝指令碼

    C:\AppStream\AppBlocks\MyApps\mount-apps.ps1

AppStream 2.0 會在叢集串流執行個體上執行,並將輸出上傳到帳戶內的 Amazon S3 儲存貯體時,從設定指令碼擷取標準錯誤和標準輸出。您可以使用這些日誌來識別和解決安裝指令碼可能發生的問題。儲存貯體使用特定格式命名,如下所示:

appstream-logs-region-code-account-id-without-hyphens-random-identifier
region-code

這是在其中建立彈性叢集的 AWS 區域代碼。

account-id-without-hyphens

您的 AWS 帳戶識別碼。隨機 ID 可確保與該區域中的其他儲存貯體不發生衝突。儲存貯體名稱的第一部分 appstream-logs,在帳戶或區域之間不會變更。

例如,如果您在美國西部 (奧勒岡) 區域 (美國西部 -2) 的帳戶號碼 123456789012 建立彈性叢集,則 AppStream 2.0 會在該區域的帳戶內建立一個 Amazon S3 儲存貯體,並使用所示名稱。只有具備足夠許可的管理員可以刪除這個儲存貯體。

appstream-logs-us-west-2-1234567890123-abcdefg

在您的帳戶中,日誌檔存放在 S3 儲存貯體中的資料夾路徑使用以下結構:

bucket-name/fleet-name/instance-id/appblock-name/
bucket-name

存放安裝指令碼日誌的 Amazon S3 儲存貯體名稱。名稱格式如本節前文所述。

Instance-id

安裝命令碼執行所在的串流執行個體的唯一識別符

appblock-name

安裝程式碼對應的應用程式區塊名稱。

以下範例資料夾結構適用於從 test-fleet 啟動的串流工作階段。會話來自 123456789012 的 AWS 帳戶 ID,應用程序塊名稱是美國西部(奧勒岡)區域(美國西部 -2)的測試應用程序塊:

appstream-logs-us-west-2-1234567890123-abcdefg/test-fleet/i-084427ab4a1cff7f5/testappblock/

此範例資料夾結構包含一個用於標準輸出的日誌檔,以及一個用於標準錯誤的日誌檔。

應用程式區塊安裝指令碼執行

下列圖表指出安裝指令碼在程序中執行的位置。執行順序取決於,與彈性機群相關聯的堆疊上是否啟用了「應用程式設定持續性」。

注意

AppStream 2.0 會使用您的 VPC 詳細資料從 Amazon S3 儲存貯體下載 VHD 和設定指令碼。您的 VPC 必須提供 Amazon S3 儲存貯體的存取權。如需詳細資訊,請參閱 使用 Amazon S3 VPC 端端點提供 AppStream 2.0 功能

應用程式設定持續性已啟用:

應用程式設定持續性已啟用。

應用程式設定持續性已停用:

應用程式設定持續性已停用。