Windows Azure上Linux VM中的交換空間中配置代理

來源:互聯網
上載者:User
關鍵字 Azure Linux Azure 交換空間 配置代理

本文章由 HTTP://www.aliyun.com/zixun/aggregation/13357.html">Azure CAT 團隊的 Piyush Ranjan (MSFT) 撰寫。

在前一篇文章 Windows Azure 上 Linux VM 中的交換空間第 1 部分中,我介紹了在預設情況下, Azure IaaS鏡像庫中配置的 Linux VM 為何未配置交換空間。 該文還提供了在資源磁片 (/mnt/resource) 上配置基於檔的交換空間的一系列簡單步驟。 但是需要注意的是,當時介紹的步驟適用于已配置且正在運行的 VM。 理想情況下,人們希望在 VM 配置時自動設定交換空間,而非等到以後再手動運行一堆命令。

在配置 VM 時自動設定交換空間的訣竅是使用 Windows Azure Linux 代理 (waagent)。 大多數人隱約知道 Linux VM 中運行了一個代理,但同時又覺得它有些過於冷僻,因此會將其忽視,儘管 Azure 門戶上有關于 waagent 的詳盡文檔。 請參閱 Windows Azure Linux 代理使用者指南。 在深入討論 waagent 的詳細資訊以及如何將其用於手邊的任務之前,需要先弄明白另一點,即如果您有一個自己的自訂 Linux VM,並將其匯出作為未來用於配置 Linux VM 的可複用鏡像,這種方法效果很好。 在使用 Azure 庫中的 Linux 原始庫鏡像時,無法更改預設的waagent 功能。 這不見得是限制,因為在我認為最有用的用例方案中,我最初使用利用庫鏡像進行配置的 VM,然後針對我需要的功能進行自訂,例如,我想要標準 JAVA,而非開放 jdk JAVA;或者我可能要在 VM 上安裝編譯好的Hadoop, 以便鏡像以後可以用於多節點群集。 在這種情況下,同樣也很容易配置 waagent 以執行一些我希望通過配置過程自動完成的其他操作。

如 Windows Azure Linux 代理使用者指南中所述,可以配置代理以執行很多操作,其中包括:

資源磁片管理

格式化和安裝磁片資源

配置交換空間

通過庫鏡像配置的 VM 中已安裝了 waagent,您只需編輯其位於「/etc/waagent.conf」的設定檔,其中配置如下所示:

通過如下設置,將設定檔中如上圖所示的兩行更改為啟用交換:

設置 ResourceDisk.EnableSwap=y

設置 ResourceDisk.SwapSizeMB=5120

因此,整個過程如下:

使用庫中的一個鏡像照常配置 IaaS 中的 Linux VM。

通過安裝或刪除需要的軟體元件,根據自己的喜好自訂 VM。

編輯「/etc/waagent.conf」檔以設置交換相關行,如上圖所示。 調整交換檔的大小(上面是將其設置為 5 GB)。

使用此處介紹的說明捕獲 VM 的可複用鏡像。

使用剛匯出的鏡像配置新的 Linux VM。 這些 VM 將自動啟用交換空間。

談及Windows Azure Linux 代理,不得不說它提供的另一個有趣的功能,即通過相同設定檔「/etc/waagent.conf」中的 Role.StateConsumer 屬性執行使用者指定的任意腳本。 例如,可以按如下所示創建一個 shell 腳本「do-cfg.sh」:

然後,在設定檔中設置 Role.StateConsumer=/home/scripts/do-cfg.sh,或將其設置為腳本路徑。 waagent 再在配置VM時將」Ready」信號發送給 Azure Fabric 前一刻執行腳本。 它將命令列參數「Ready」傳遞到可以在腳本內進行測試的自訂腳本,如上圖所示執行一些自訂初始化。 同樣,waagent 在 VM 關機時執行相同的腳本,並將命令列參數「Shutdown」傳遞給可以進行測試的腳本,一些自訂清理任務可以在 VM 中運行。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.