刀伺服器創建 - 查找風味列表
我是 Chef 的新手,我認為我在閱讀文件時遺漏了一些東西。我想使用創建伺服器
knife server create (options)
但似乎無法找到有關選項的完整文件。具體來說,我如何找到伺服器風格到任何刀正在尋找的映射?
鑑於“ Launch Cloud Instances with Knife ”的官方 wiki 條目,以下是 Rackspace 上的範例伺服器創建:
knife rackspace server create 'role[webserver]' --server-name server01 --image 49 --flavor 2
同樣,在Knife Man Page上,有 EC2 伺服器映像(使用
--d --distro DISTRO
)和 Slicehost 伺服器(使用-f --flavor FLAVOR
)的命令但是,我發現的所有文件都沒有描述如何將我想要在 Rackspace 上建構的內容(“我想要 Ubuntu 10.04 LTS”)轉換為刀正在尋找的整數條目。
令我震驚的是,鑑於文件中沒有關於如何找到風味的描述,這應該是顯而易見的。因此,我想我錯過了一些東西。
有一種相對快速而骯髒的方法可以找到圖像和風味數字 id(如果您使用的是具有 html 檢查功能的瀏覽器)。登錄 rackspace cloud - 並輸入表單手動創建伺服器(您可以在創建伺服器之前取消)並選擇您想要的伺服器基礎作業系統(圖像),然後彈出一個帶有 ajax 的小覆蓋表單。如果您在瀏覽器中檢查它,它很容易將 imageId 作為您選擇的圖像的隱藏欄位,並且對於每個可用的風味都有一個名為“cloudServerProductFlavorId”的單選按鈕。
(注意:您需要檢查 html,不能只查看原始碼,因為它是動態生成的並且不在原始原始碼中)
旁注:這可能有助於澄清 Knife(它是 Chef 的一部分)正在使用霧 ruby 庫(https://github.com/geemus/fog)與雲服務提供商通信以創建伺服器。Fog 然後使用他們發布的 api 與 Rackspace Cloud(或其他)進行通信。所以刀/廚師不能真正知道風味和圖像的各種選擇是什麼。
有 Rackspace Cloud api 的文件(登錄時可用,在 Support|Developer Resources 下)。但它沒有列出可用的口味和圖像。相反,它提供了一個 api 呼叫,您可以呼叫它們來獲取它們。
因此,您可以嘗試直接使用 api 呼叫,或者更好的是,使用霧來找出風味和圖像。但是我沒有找到快速的方法來做到這一點。
注意:刀的未來版本將支持使用字元串來表示機架空間風格和圖像。並且還可以列出它們:
knife rackspace server list flavors knife rackspace server list images