Azure 運維篇 通過 Ansible 批量更改 Azure 資源,azure開發教程Azure運維篇通過Ansible批量更改Azure資源。本文主要介紹如何通過Ansible的Playbook批量更改Azure中的資源。在這里,首先,選擇Ansible的原因是你寫不出復雜的Shell腳本。如果有大神看到這篇文章,......
本文主要介紹如何通過Ansible的Playbook批量更改Azure中的資源。在這里,首先,選擇Ansible的原因是你寫不出復雜的Shell腳本。如果有大神看到這篇文章,請自動右轉哈哈。
在這個實驗中,我們其實做了一件比較簡單但是很實用的事情,將所有沒有HttpsOnly的存儲賬號設置為HttpsOnly,只支持Https訪問,使得訪問更加安全。
當我們環境中有許多存儲帳戶時,必須通過腳本來完成。腳本可以通過多種方式實現,比如Azure CLIPowerShellPython、Ansible或者Terraform。
構建運行Ansible的環境
建議創建一個VM來完成以后的運維工作。這種虛擬機可以在平時關閉,節省成本,并在需要時開始執行任務。除了在機器上安裝Ansible之外,包括Grafana在內的很多未來的運維工具也可以放在這臺機器上,讓這臺機器的利用效率更高。
#創建一個Linux虛擬機,比如Ubuntu 16.04,安裝相應的依賴包和ansiblesudo aptget更新sudo aptget instally libssldevlibffidev pythondev pythonpi pudo pip安裝ansible [azure] #登錄Linux虛擬機,安裝azure Clic URLSL https://aka.ms/InstallAzureCLIDeb sudobash #,切換云環境,登錄Azure,每次在ansible之前登錄Azure,確保Ansible可以使用Azure登錄信息。當然還有其他Ansible登錄憑證,可以選擇嘗試az cloud setn azurecentacloud。
為所有存儲帳戶準備可行的行動手冊并僅更改https
Ansible的一個概念叫做劇本,劇本執行一組任務,完成一件事。如果想進一步了解學習Ansible的知識和結構,請參考文末的Ansible文檔。
在此示例中,使用的劇本azure storageaccount ops.yml如下:
name:將所有存儲帳戶設置為http only hosts:localhost連接:localhost任務: name:列出訂閱中的所有存儲帳戶命令:az存儲帳戶列表register:allStorageAccountsname:將所有存儲帳戶的http only更新為True命令:az存儲帳戶updat en { { item . name } }g { { item . resource group } }httpsonly True with items:{ { allStorageAccounts . stdout from JSON } } when:item . enablehttpstrafficonly
在LInux VM中創建一個文件夾azureops/ansible,將azurestorageaccountops.yml放入其中。
#執行可行的行動手冊非常簡單
ansi bleplaybook ~/azure ops/ansi ble/azure storage account ops . yml
Ansible是冪等的,所以當第二次執行檢查存儲帳戶的HttpsOnly狀態為True時,它將跳過執行。
這里實際上有兩個額外的擴展主題,所以我把它們留給你:
第一,其實我們可以把所有與存儲賬戶相關的運維工作放在一個劇本里,用標簽區分,用標簽執行;
其次,其實我寫的劇本很簡單,不好看。Ansibel中有很多針對Azure不同服務的模塊。也可以嘗試使用模塊,而不是直接執行Azure CLI,讓劇本更美觀。
參考數據
#快速入門:在Azure中的Linux虛擬機上安裝AnsibleHTTPS://docs . Microsoft . com/zhcn/Azure/virtualmachines/Linux/ansi bleInstallconfigure # ansi ble使用docs.ansible.com/ansible/latest/user支持的https:// Azure模塊 guide/basic concepts.html # ansi ble https://docs.ansible.com/ansible/latest/scenario guides/guide Azure . html # Github Azure資源劇本示例https://Github . com/AzureSamples/ansi ble劇本
特別聲明:以上文章內容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關于作品內容、版權或其它問題請于作品發表后的30日內與ESG跨境電商聯系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號密碼登錄
平臺顧問
微信掃一掃
馬上聯系在線顧問
小程序
ESG跨境小程序
手機入駐更便捷
返回頂部