分享方式:


透過 Azure 入口網站建立使用代理程式型錯誤的混沌實驗

您可以使用混沌實驗在受控環境中引發失敗,以驗證應用程式是否能夠從失敗中復原。 在本文中,您將透過使用混沌實驗和 Azure Chaos Studio,在 Linux 虛擬機器 (VM) 上引發高 CPU 使用率百分比事件。 執行此實驗可協助您防範應用程式發生資源不足。

您可以使用這些相同的步驟來設定和執行任何代理程式型錯誤的實驗。 若要造成代理程式型錯誤,就需要設定和安裝混沌代理程式。 服務直接錯誤會直接針對 Azure 資源執行,無需任何檢測。

必要條件

在虛擬機器上啟用 Chaos Studio

除非您已先行將 VM 新增至 Chaos Studio,否則 Chaos Studio 無法對該 VM 插入錯誤。 若要將 VM 新增至 Chaos Studio,請在資源上建立目標與功能。 然後,您會安裝混沌代理程式。

虛擬機器有兩種目標型別。 其中一個目標類型可啟用服務直接錯誤 (不需要代理程式)。 另一個目標類型則會啟用代理程式型錯誤 (需要安裝代理程式)。 混沌代理程式是作為 VM 延伸模組安裝在 VM 上的應用程式。 您可以使用該程式,在客體作業系統中插入錯誤。

啟用混沌目標、功能和代理程式

重要

在完成後續步驟之前,您必須先行建立使用者指派的受控識別。 然後將其指派給目標 VM 或虛擬機器擴展集。

  1. 開啟 Azure 入口網站

  2. 在搜尋列中搜尋 [Chaos Studio]

  3. 選取 [目標],然後移至您的 VM。

    顯示 Azure 入口網站中 [目標] 檢視的螢幕擷取畫面。

  4. 選取 VM 旁的核取方塊,然後選取 [啟用目標]。 接著從下拉式功能表選取 [啟用代理程式型目標]

    顯示 Azure 入口網站中啟用目標的螢幕擷取畫面。

  5. 選取要用來驗證混沌代理程式的受控識別,還可選擇啟用 Application Insights,以查看實驗事件和代理程式記錄。

    顯示選取受控識別的螢幕擷取畫面。

  6. 選擇 [檢閱 + 啟用]>[啟用]

    顯示檢閱代理程式型目標啟用的螢幕擷取畫面。

  7. 過幾分鐘後會出現一則通知,指出所選資源已成功啟用。 Azure 入口網站會將使用者指派的身分識別新增至 VM。 入口網站會啟用代理程式目標和功能,並將混沌代理程式安裝為 VM 延伸模組。

    螢幕擷取畫面顯示通知,指出已成功啟用目標。

  8. 如果您要啟用虛擬機器擴展集,請移至虛擬機器擴展集資源窗格,將執行個體升級至最新的模型。 選取 [執行個體],然後選取所有執行個體。 如果您並非使用最新的模型,請選取 [升級]

您現在已成功將 Linux VM 新增至 Chaos Studio。 在 [目標] 檢視中,您也可以管理此資源上啟用的功能。 選取資源旁邊的 [管理動作] 連結以顯示針對該資源所啟用的功能。

建立實驗

現在您可以建立實驗。 混沌實驗會定義您想要針對目標資源採取的動作。 動作會以循序步驟組織並執行。 混沌實驗也會定義您想要針對平行執行之分支採取的動作。

  1. 在 Chaos Studio 中選取 [實驗] 索引標籤。 在此檢視中,您可以查看並管理您的所有混沌實驗。 選取 [建立]>[新增實驗]

    顯示 Azure 入口網站中 [實驗] 檢視的螢幕擷取畫面。

  2. 填寫您要部署混沌實驗的訂閱資源群組位置。 為您的實驗命名。 選取 [下一步: 實驗設計工具]

    顯示新增基本實驗詳細資料的螢幕擷取畫面。

  3. 您現在位於 Chaos Studio 實驗設計工具中。 實驗設計工具可讓您藉由新增步驟、分支與錯誤來建置實驗。 為 [步驟] 與 [分支] 指定易記名稱。 然後選取 [新增動作] > [新增錯誤]

    顯示實驗設計工具的螢幕擷取畫面。

  4. 從下拉式清單中選取 [CPU 壓力]。 填入以分鐘數目計算的 [持續時間] 以套用壓力。 以您想要套用的 CPU 使用率壓力百分比填入 pressureLevel。 [virtualMachineScaleSetInstances] 保留空白。 選取 [下一步:目標資源]

    顯示錯誤屬性的螢幕擷取畫面。

  5. 選取您的 VM,然後選取 [下一步]

    顯示新增目標的螢幕擷取畫面。

  6. 確認您的實驗看起來正確無誤。 然後選取 [檢閱 + 建立] > [建立]

    顯示檢閱和建立實驗的螢幕擷取畫面。

將實驗權限授與虛擬機器

當您建立混沌實驗時,Chaos Studio 會建立系統指派的受控識別,以針對目標資源執行錯誤。 必須將目標資源的適當權限授與此身分識別,實驗才能順利執行。

  1. 移至您的 VM,然後選取 [存取控制 (IAM)]

    顯示虛擬機器 [概觀] 頁面的螢幕擷取畫面。

  2. 選取 [新增>][新增角色指派]。

    顯示存取控制概觀的螢幕擷取畫面。

  3. 搜尋讀者並選取角色。 選取 [下一步]。

    顯示指派虛擬機參與者角色的螢幕擷取畫面。

  4. 選擇 [選取成員],然後搜尋您的實驗名稱。 選取您的實驗,然後選擇 [選取]。 若相同租用戶中有多個具有相同名稱的實驗,系統則會截斷您的實驗名稱並新增隨機字元。

    顯示將實驗新增至角色的螢幕擷取畫面。

  5. 選取 [檢閱 + 指派]>[檢閱 + 指派]

執行您的實驗

您現在可以開始執行實驗。 若要查看影響,建議您開啟 Azure 監視器計量圖表,並在另一個瀏覽器索引標籤中顯示 VM 的 CPU 壓力。

  1. 在 [實驗] 檢視中,選取您的實驗。 選取 [開始] > [確定]

    顯示開始實驗的螢幕擷取畫面。

  2. 在 [狀態] 變更為 [執行中] 後,在 [歷程記錄] 下選取最近一次執行的 [詳細資料],以查看執行中實驗的詳細資料。

下一步

現在已執行代理程式型實驗,您可以開始: