iT邦幫忙

0
鐵人賽 神助攻 Nutanix

Nutanix Calm DSL –生成虛擬機規格

https://ithelp.ithome.com.tw/upload/images/20201002/20129565Eh4HQB6UO4.png

在我們最新的標題為《Nutanix Calm DSL –創建自定義藍圖》的文章中,我們討論了很多不同的內容。以下為這裡所涵蓋內容的重點:

  • 透過手動編寫所需的Python代碼來創建自定義藍圖
  • 演示如何創建安全的藍圖憑據
  • 將藍圖拆分為用於所需安裝腳本的模組化結構
  • 將VM規範分解為易於管理的模組化YAML文件

而今天將為大家示範展示避免手動編寫YAML的程序。

**請注意,需要在工作站/電腦與已配置的Prism Central之間建立連接。

規格示例

下圖顯示的是上一篇文章中使用的YAML的規範。我們不會詳細介紹每行的功能(可以回顧紹上一篇文章),該特定規範適用於LAMP應用程序中的HA代理服務器。

categories: {}
name: HAPROXY
resources:
  boot_config:
    boot_device:
      disk_address:
        adapter_type: SCSI
        device_index: 0
  disk_list:
  - data_source_reference:
      kind: app_package
      name: CENTOS_7_CLOUD
    device_properties:
      device_type: DISK
      disk_address:
        adapter_type: SCSI
        device_index: 0
    disk_size_mib: 0
  guest_customization:
    cloud_init:
      user_data: |
        #cloud-config
        users:
        - name: centos
          ssh-authorized-keys:
          - '@@{CENTOS.public_key}@@'
          sudo:
          - ALL=(ALL) NOPASSWD:ALL
  memory_size_mib: 4096
  nic_list:
  - ip_endpoint_list: []
    network_function_nic_type: INGRESS
    nic_type: NORMAL_NIC
    subnet_reference:
      kind: subnet
      uuid: f5606fed-2c33-45e8-9ccf-303db6eb93d8
  num_sockets: 2
  num_vcpus_per_socket: 2

一統天下

如果我們不想「亂逛」並手動輸入提供商規範怎麼辦?Nutanix Calm工程團隊花費大量時間來確保Calm DSL中提供最有用的功能。

看下面的程式命令:

calm create provider_spec

非常的容易!默認情況下,該命令將逐步生成YAML格式且有效Calm DSL所提供程序規範,而無需自己設定YAML。讓我們來看看:
https://ithelp.ithome.com.tw/upload/images/20200929/201295656JYYiT2zYG.png

查看上面的螢幕快照,我們可以看到DSL在生成YAML提供程序規範時,將提示的各種所需訊息。這也是我們可以引用過去發表的評論之處。執行指令時,必須與已配置的Prism Central實例建立連接。如果您仔細觀察,您會發現DSL在每一步都為我們提供了編號選擇,這些選擇是通過向Prism Central請求實體列表來動態生成。如果沒有與Prism Central連接,則列表將失敗。

為了方便操作,在此將命令的完整輸出分為兩部分。第二部分如下所示-基於輸入的完整YAML規範。

https://ithelp.ithome.com.tw/upload/images/20200929/201295654bvifQBmm2.png

從這裡開始,將生成的YAML放在上面,並將其添加到準備在藍圖中使用的YAML規範文件。上一篇文章Nutanix Calm –創建自定義藍圖中概述了此過程。

重要提示

在這一點上,重點是要注意上面的YAML規範專門用於AHV。換句話說,如果您未指定提供程序類型,則假定為AHV。

calm create provider_spec --type AHV_VM

如果將-h或–help開關傳遞給命令,則可以輕鬆查看我們所提供程序類型:
https://ithelp.ithome.com.tw/upload/images/20200929/20129565WmTPrOJ2a2.png
僅作為範例,在輸出被截斷的情況下,DSL創建一個AWS VM提供程序規範會發生什麼事:
https://ithelp.ithome.com.tw/upload/images/20200929/201295658PyPypXrbj.png

總結

根據這篇相當精簡的文章,可以看到Calm工程團隊如何建立功能,意味著並不總是需要編寫代碼。實際上,Nutanix工程副總裁說:「人類應該好好運用DSL。」這為DSL下了一個完美的的總結。


尚未有邦友留言

立即登入留言