建立虛擬伺服器實例
您可以使用 IBM Cloud 主控台、CLI、API 或 Terraform,在 IBM Cloud VPC 中建立一個以上虛擬伺服器實例。
當您建立虛擬伺服器時,您可以指定虛擬伺服器的位置和名稱之類的資訊。 您可以指定作業系統映像檔、定義 vCPU 與 RAM 組合的設定檔,以及 SSH 金鑰,以安全地連接至虛擬伺服器。 除了啟動磁碟區之外,您還可以新增資料卷。 您也可以指定為虛擬伺服器建立的網路介面類型。 最後,您可以從虛擬伺服器配置的進階選項中選取。
使用使用者介面建立虛擬伺服器實例
請使用下列步驟來建立虛擬伺服器實例。
-
在 IBM Cloud控制台中,點選導航選單圖示
> 基礎架構
> 計算 > 虛擬伺服器實例。
-
按一下建立,輸入表 1 中的資訊。
選擇開始實例配置 欄位 值 位置 位置由區域 (特定地理區域) 和區域 (區域內的容錯資料中心) 組成。 選擇要建立虛擬伺服器實例的位置。 名稱 虛擬伺服器實例需要名稱。 資源群組 為實例選取資源群組。 標籤 您可以將使用者標籤指派給實例,以便您可以輕鬆過濾資源清單中的實例資源。 如需相關資訊,請參閱使用標籤。 存取管理標籤 存取管理標籤可協助您對特定資源套用彈性的存取原則。 如需相關資訊,請參閱 使用標籤控制對資源的存取權 使用者介面指導教學。 -
選取實例的映像檔和設定檔。 若要從所有可用的影像中選取,請按一下 變更影像。 您可以選取映像檔、開機磁區的 Snapshot 或現有的開機磁區。 如果您配置實例的地理位置支持,您可以選擇x86或者s390x建築學。 表 2 說明映像檔、Snapshot 及現有磁區選項。 然後,選取設定檔。 若要從所有可用的 vCPU 和 RAM 組合中選取,請按一下 變更設定檔。 表 3 說明設定檔選擇。
允許使用的設定檔:您選擇的映像會決定可用於建立虛擬伺服器實體的設定檔。 在使用允許使用表達式的影像建立虛擬伺服器實體期間,允許使用屬性中提供的資訊會針對潛在的虛擬伺服器實體進行評估,以確定該影像是否可用於建立虛擬伺服器實體。 圖庫影像使用定義的允許使用表達方式。 您必須為自訂影像定義任何允許使用的表達式。 如需詳細資訊,請參閱 在自訂影像中加入允許使用的表達式。
欄位 | 值 |
---|---|
庫存映像檔 |
從可用的庫存映像檔中選取,然後按一下 儲存。
|
自訂映像檔 |
從可用的自訂影像中選取,然後按一下 儲存。 如果沒有可用的自訂映像檔,請按一下 建立。 |
型錄映像檔 |
選取可用的型錄映像檔之後,請按一下 選取版本和定價方案,選擇版本和定價方案,然後按一下 儲存。
|
Snapshot |
選擇匯入現有快照或透過 CRN 匯入快照。 更新然後,選擇啟動磁碟區的快照,然後按一下 「儲存」。 如果沒有可用快照,請按一下**「建立」** 。 |
現有磁區 | 選取未連接至實例的現有開機磁區,然後按一下 儲存。 |
欄位 | 值 |
---|---|
設定檔 | 設定檔系列是「平衡」、「計算」、「記憶體」、「超高記憶體」、「非常高記憶體」、GPU 及「機密計算」。 如需詳細資訊,請參閱 x86-64 instance profiles。 當您為 IBM Cloud® Virtual Private Cloud 建立 IBM Cloud Hyper Protect Virtual Servers 範例時,請確定您選擇已啟用安全執行的設定檔,否則佈建會失敗。
如需詳細資訊,請參閱 s390x instance profiles。
部分設定檔可能無法使用,因為虛擬伺服器中的網路介面數目超出設定檔限制。 您可以移除網路介面以從更多設定檔中選取。 如需詳細資訊,請參閱調整虛擬伺服器的大小。 某些設定檔可能無法使用,因為選取的影像包含與設定檔不相容的允許使用表達式。 在這些情況下,請選擇具有與所需設定檔相容的允許使用表達式的影像。 如需詳細資訊,請參閱 在自訂影像中加入允許使用的表達式。 |
進階安全選項 | |
安全啟動 | 點擊開關以啟用安全啟動。 安全啟動僅適用於相容的設定檔。 如需安全開機的相關資訊,請參閱 Virtual Servers for VPC。 |
機密運算選擇可用性 | 採用 Intel® Software Guard Extensions (SGX) 的機密運算,以及採用 Intel Trusted Domain Extension (TDX) 的機密運算,透過使用被稱為加密外域的隔離記憶體區域,以硬體為基礎的伺服器安全性來保護您的資料。 SGX 和 TDX 都只提供相容的設定檔。 如需有關保密運算的詳細資訊,請參閱 Confidential computing for x86 Virtual Servers for VPC。 |
透過選擇平衡和計算配置文件,可以實現安全啟動和機密計算。 有關更多信息,請參閱 SGX 相容設定檔。
-
透過指定表 4 中的資訊來完成 SSH 金鑰、儲存和網路詳細資訊。
選擇完成實例配置 欄位 值 SSH 金鑰 您必須選擇現有的公共 SSH 金鑰或按一下「建立 SSH 金鑰」 以建立一個。 如需建立 SSH 金鑰的相關資訊,請參閱 使用使用者介面建立 SSH 金鑰。 SSH 金鑰用來在實例執行之後安全地連接至實例。 **附註:**字母數字組合限制至 100 個字元。 SSH 金鑰可以是 RSA 或 Ed25519。 您只能建立 RSA SSH 金鑰。 為ED25519 SSH金鑰,必須上傳金鑰資訊。 只有在作業系統支援此金鑰類型時,才能使用 Ed25519。 Ed25519 無法與 Windows 或 VMware 映像檔搭配使用。 如需相關資訊,請參閱 開始使用 SSH 金鑰。 開機磁區 大多數設定檔的預設開機磁碟區大小為 100 GB。 z/OS 虛擬伺服器實例的預設開機磁碟區大小為 245 GB。 如果您要匯入自訂映像檔,則開機磁區容量可以是 10-250 GB,視映像檔需要而定。 小於 10 GB 的影像四捨五入為 10 GB。按一下編輯圖示 Edit ,在側面板中修改開機磁碟區的屬性。
Select Availability 在已定義的效能系列中,擁有特殊存取磁碟區配置文件的客戶,可將其sdp
磁碟區擴充至 32,000 GB。您可以透過指定唯一且有意義的名稱來變更啟動磁碟區的名稱。 例如,它可以是描述您的計算或工作負載功能的名稱。 磁碟區名稱必須以小楷字母開頭。 該名稱最多可以包含 63 個小寫字母數字字符,並包含連字符 (-)。磁碟區名稱在整個 VPC 基礎設施中必須是唯一的。 如果需要,您可以稍後編輯該名稱。 您可以關閉啟動卷的自動刪除選項。 如果啟用,則刪除實例時也會刪除該磁碟區。 如果停用,則刪除實例後該磁碟區仍然存在。 您可以指定可選的使用者標籤和存取管理標籤來與該磁碟區關聯。 有關使用使用者標籤組織資源的更多信息,請參閱 使用標籤。 您可以選擇加密類型。 預設情況下,所有磁碟區上都會啟用提供者管理的加密。 您也可以選擇使用自己的根密鑰建立信封加密。 加密金鑰在金鑰管理服務中建立和維護(Key Protect或者Hyper Protect Crypto Services )。 您可以將啟動磁碟區的大小增加到最多 250 GB。 資料磁區 您可以建立一個或多個次要資料卷,以便在配置實體時附加。 點選創造在資料卷部分中開啟側面板,您可以在其中定義卷。 指定一個唯一且有意義的名稱。 相同的規格適用於啟動磁碟區。 您可以開啟資料卷的自動刪除選項。 如果啟用,則刪除實例時也會刪除該磁碟區。 如果停用,則刪除實例後該磁碟區仍然存在。 您可以指定可選的使用者標籤和存取管理標籤來與該磁碟區關聯。 有關使用使用者標籤組織資源的更多信息,請參閱 使用標籤。 您可以選擇加密類型。 預設情況下,所有磁碟區上都會啟用提供者管理的加密。 您也可以選擇使用在金鑰管理服務中建立和維護的您自己的根金鑰來建立信封加密。 您可以選擇 儲存設定檔 最適合您對容量和 IOPS 的需求。 有關更多信息,請參閱 建立並附加Block Storage建立實例時的捲。 虛擬私有雲 指定您要建立實體的 IBM Cloud VPC。 您可以使用預設 VPC、另一個現有 VPC,也可以建立 VPC。 若要建立 VPC,請按一下新 VPC。 新增到集群網絡 如果您選擇H100 GPU 設定檔 gx3d-160x1792x8h100
,您會看到 「新增至叢集網路」 選項。 您可以將新增至叢集網路設定為開啟,以使虛擬伺服器能夠存取支援遠端直接記憶體存取 (RDMA) 的高效能網路的功能。 當 「新增至叢集網路」 設定為開啟且叢集網路可用時,IBM Cloud控制台包含用於為叢集網路配置虛擬伺服器的預設選擇。 如果沒有可用的叢集網絡,您可以按一下建立叢集網路。 選擇群集網路時,虛擬私有雲下拉式功能表中只會顯示配置群集網路的 VPC。 有關詳細信息,請參閱 關於集群網路。網路介面 依預設,會使用單一主要網路介面來建立虛擬伺服器實例。 您可以點擊編輯圖示 來編輯網路介面的詳細信息,例如與該介面關聯的子網路或安全群組。 若要包含額外的輔助網路接口,請按一下 「建立」。 您可以為虛擬伺服器實例建立和分配最多 15 個網路接口,具體取決於實例設定檔中包含的vCPU計數。 有關詳細信息,請參閱關於網路介面。
使用虛擬網路介面功能,您可以選取要使用的網路介面類型。 您可以選擇新選項「虛擬網路介面的網路附件」或傳統選項「實體網路介面」。 無論您在佈建虛擬伺服器時選取哪種類型的網路介面選項,都會在虛擬伺服器的生命週期中持續保存。 您可以按一下 「附加」 以使用現有虛擬網路介面建立網路連線。 有關詳細信息,請參閱 關於虛擬網路介面。 -
對於進階選項,您可以選擇完成更多實例配置。
實例配置進階選項選擇 欄位 值 使用者資料 您可以新增自動執行一般組態工作或執行指令碼的使用者資料。 如需相關資訊,請參閱使用者資料。 如需在建立 IBM Cloud® Hyper Protect Virtual Server for IBM Cloud® Virtual Private Cloud 實例時使用合約來指定使用者資料的相關資訊,請參閱 關於合約。 z/OS 虛擬伺服器實例不支援使用者資料。 Meta 資料 預設已停用。 按一下切換鍵以啟用。 此設定會通知實例收集實例配置資訊及使用者資料。 如需相關資訊,請參閱 關於 VPC 的實例 meta 資料。 IBM Cloud® Hyper Protect Virtual Server for IBM Cloud® Virtual Private Cloud 實例及 z/OS 虛擬伺服器實例不支援 meta 資料。 授信設定檔 (選用) 如果您啟用 meta 資料服務,則可以選取授信設定檔,並將它鏈結至此實例。 按一下選取受信任的設定檔。 在側邊畫面中,選取授信設定檔,然後按一下 選取授信設定檔,將它鏈結至實例。 如果不存在或您沒有鏈結的存取權,則會顯示一則訊息。 如需相關資訊,請參閱 建立授信設定檔。 如需獲得存取權的相關資訊,請參閱 用於鏈結授信設定檔的 IAM 授權。 新增至專用主機 此選項預設為停用。 若要在單一承租戶空間中建立虛擬伺服器實例,請按一下切換鍵以啟用專用主機。 若要佈建專用實例,您必須具有專用主機可用或 建立專用主機。 新增至放置群組 依預設會停用放置群組。 按一下切換鍵以啟用放置群組。 然後,選取或建立實例的放置群組。 如果您新增放置群組,則會根據放置群組原則放置實例。 如需相關資訊,請參閱 關於放置群組。 新增至保留 如果您有作用中的保留,請按一下切換,將虛擬伺服器實例新增至該保留。 如需相關資訊,請參閱 關於 VPC 的預約。 主機故障自動重新啟動 依預設會啟用這個設定。 若要停用主機失敗自動重新啟動,請按一下切換。 如需詳細資訊,請參閱 主機故障復原政策 -
當您準備好佈建時,請按一下建立虛擬伺服器實例。
在主控台中建立實例後的下一步
建立實例之後,您需要 將浮動 IP 位址與實例相關聯。 然後您便可以連接至實例。 如需相關資訊,請參閱 連接至 Linux 實例、連接至 Windows 實例 或 連接至 z/OS 實例。
如果您的現有實例具有浮動 IP 位址,則不需要將第二個浮動 IP 指派給另一個實例。 您可以使用浮動 IP 連接至第一個實例,然後使用自動指派給它的專用子網路 IP 位址,透過 SSH 連接至第二個實例。
使用 CLI 建立虛擬伺服器實例
您可以使用指令行介面 (CLI) 來建立實例。 如果您想要使用使用者標籤或存取管理標籤來管理資源,請參閱 使用標籤。
IBM Cloud CLI 在 LinuxONE (s390x 處理器架構) 上不受支援。 不過,您可以在另一個支援的平台上安裝 CLI,並將它與 LinuxONE (s390x 處理器架構) 虛擬伺服器實例搭配使用。
開始之前
-
下載、安裝及起始設定下列 CLI 外掛程式。
- IBM Cloud CLI
- infrastructure-service 外掛程式
如需相關資訊,請參閱 設定 API 和 CLI 環境。
-
確定您 已建立 VPC。
收集資訊以使用 CLI 建立實例
準備好要建立實例了嗎? 在執行 ibmcloud is instance-create
指令之前,您需要知道實體的詳細資訊,例如您要使用的設定檔或映像。
使用相關聯的指令來收集下列資訊。
實例詳細資料 | 列出選項 | VPC CLI 參考文件 |
---|---|---|
影像 | ibmcloud is images |
列出所有映像檔 |
開機磁區 | ibmcloud is volumes |
列出所有磁區 |
設定檔 | ibmcloud is instance-profiles |
列出所有虛擬伺服器實體設定檔 |
金鑰 | ibmcloud is keys |
列出所有鍵
如果您沒有任何可用的 SSH 金鑰,請使用建立密鑰創建一個。 筆記: RSA 和ED25519是您可以使用的兩種類型的 SSH 金鑰。 但是,您不能使用ED25519 Windows 的 SSH 金鑰類型或VMware圖片。 您只能對這些映像使用 RSA SSH 金鑰。 |
VPC | ibmcloud is vpcs |
列出所有 VPC |
子網路 | ibmcloud is subnets |
列出所有子網路 |
區域 | ibmcloud is zones |
列出目標區域中的所有區域 |
放置群組 | ibmcloud is placement-groups |
列出所有放置群組 |
使用下列指令來決定建立新實例所需的資訊。
-
列出與您帳戶相關聯的地區。
ibmcloud is regions
請參閱下列範例。
$ ibmcloud is regions Listing regions under account Test Account as user test.user@ibm.com... Name Endpoint Status au-syd https://au-syd.iaas.cloud.ibm.com available br-sao https://br-sao.iaas.cloud.ibm.com available ca-tor https://ca-tor.iaas.cloud.ibm.com available eu-de https://eu-de.iaas.cloud.ibm.com available eu-es https://eu-es.iaas.cloud.ibm.com available eu-gb https://eu-gb.iaas.cloud.ibm.com available jp-osa https://jp-osa.iaas.cloud.ibm.com available jp-tok https://jp-tok.iaas.cloud.ibm.com available us-east https://us-east.iaas.cloud.ibm.com available us-south https://us-south.iaas.cloud.ibm.com available
-
切換至目標地區。
ibmcloud target -r <region-name>
-
列出與目標區域相關的區域。
ibmcloud is zones
在下列範例中,指令在
us-south
地區中執行,且輸出會顯示地區中的可用區域。$ ibmcloud is zones Listing zones in target region us-south under account Test Account as user test.user@ibm.com... Name Region Status us-south-1 us-south available us-south-2 us-south available us-south-3 us-south available
-
列出與您帳戶相關聯的 IBM Cloud VPC。
ibmcloud is vpcs
在這個範例中,您會看到類似以下輸出的回應。
ID Name Status Classic access Default network ACL Default security group Resource group r006-35b9cf35-616e-462e-a145-cf8db4062fcf my-vpc available false immortality-casing-extoll-exit enhance-corsage-managing-jinx Default
如果您沒有可用的 VPC,可以使用
ibmcloud is vpc-create
指令來建立一個。 如需建立 VPC 的相關資訊,請參閱 ibmcloud is vpc-create。 -
列出與 IBM Cloud VPC 相關聯的子網路。
ibmcloud is subnets
在這個範例中,您會看到類似以下輸出的回應。
ID Name Status Subnet CIDR Addresses ACL Public Gateway VPC Zone Resource group 0717-198db988-3b9b-4cfa-9dec-0206420d37d0 my-subnet available 10.240.64.0/28 7/16 immortality-casing-extoll-exit - my-vpc us-south-2 Default
如果您沒有可用的子網路,可以使用
ibmcloud is subnet-create
命令來建立一個子網路。 如需建立子網路的相關資訊,請參閱 ibmcloud is subnet-create。 -
列出可用來建立實例的設定檔。
ibmcloud is instance-profiles
在這個範例中,您會看到類似以下輸出的回應。
Name vCPU Manufacturer Architecture Family vCPUs Memory(GiB) Bandwidth(Mbps) Volume bandwidth(Mbps) GPUs Storage(GB) Min NIC Count Max NIC Count bx2-2x8 intel amd64 balanced 2 8 4000 1000 - - 1 5 bx2a-2x8 amd amd64 balanced 2 8 2000 500 - - 1 5 bx2d-2x8 intel amd64 balanced 2 8 4000 1000 - 1x75 1 5 bx2-4x16 intel amd64 balanced 4 16 8000 2000 - - 1 5 bx2a-4x16 amd amd64 balanced 4 16 4000 1000 - - 1 5 bx2d-4x16 intel amd64 balanced 4 16 8000 2000 - 1x150 1 5
如需可用設定檔的相關資訊,請參閱 x86 實例設定檔 及 s390x 實例設定檔。
現在可以使用已啟用安全執行的設定檔,並由設定檔名稱的第四個字元識別,例如 bz2e。 如需相關資訊,請參閱 使用 LinuxONE進行機密運算。
已啟用安全執行的設定檔可用於「平衡」、「運算」及「記憶體」系列。 當您使用 IBM Hyper Protect Container Runtime 映像檔時,請確定您使用已啟用安全的設定檔。 在設定檔驗證過程中,任何設定檔不匹配都會導致與以下範例相似的錯誤訊息。
FAILED Response HTTP Status Code: 400 Error code: bad_field Error message: Image OS IBM Hyper Protect is not supported by the instance profile <profile_name> Error target name: profile, type: field
-
列出從專用型錄中與帳戶共用以建立實例的可用庫存映像檔、自訂映像檔或映像檔。 如果您要從現有開機磁區建立實例,請跳過此步驟。
-
若要列出所有可用的庫存或自訂影像,請執行下列指令。
ibmcloud is images
在這個範例中,您會看到類似以下輸出的回應。
ID Name Status Arch OS name OS version File size(GB) Visibility Encryption Resource group Catalog Offering User Data Format Remote Account ID r006-24d856e2-6aec-41c2-8f36-5a8a3766f0d6 my-test-image available amd64 centos-7-amd64 7.x - Minimal Install 1 private none Default - cloud_init r006-9768bb7f-c75d-4408-ba34-61015632f907 ibm-debian-10-13-minimal-amd64-2 available amd64 debian-10-amd64 10.x Buster/Stable 1 public none Default - cloud_init 811f8abfbd32425597dc7ba40da98fa6 r006-f83ce520-00b5-40c5-9938-a5c82a273f91 ibm-debian-11-3-minimal-amd64-4 available amd64 debian-11-amd64 11.x Bullseye/Stable 1 public none Default - cloud_init 811f8abfbd32425597dc7ba40da98fa6
如需指令選項的完整清單,請參閱 ibmcloud is images。
已淘汰的映像檔不包含最新支援。
-
若要列出從專用型錄共用的所有可用映像檔,請執行下列指令:
如果您選取屬於不同帳戶的型錄映像檔,則需要檢閱額外的考量及限制。 請參閱 在 CLI 中使用專用型錄中的跨帳戶映像檔參照
-
若要列出所有可用的專用型錄映像檔供應項目,請執行下列指令。
ibmcloud is catalog-image-offerings
此指令會傳回每一個映像檔供應項目的 ID,以及映像檔所在之專用型錄的 ID。 將
offering_id
和catalog_id
儲存在變數中,稍後會使用這些變數來佈建實例。offering_id=6bf79f7b-de48-4ce8-8cae-866b376f2889 catalog_id=71306253-8444-4cae-a45d-64d35e5393ec
-
若要取得供應項目的
offering_crn
及供應項目中每一個版本的offering_version_crn
,請執行下列指令。ibmcloud is catalog-image-offering $catalog_id $offering_id
當您佈建實例時,可以使用
offering_crn
值從型錄產品供應項目中最新版本的專用型錄管理映像檔佈建實例,或使用offering_version_crn
值從型錄產品供應項目中的特定版本佈建實例。將
offering_crn
和offering_version_crn
儲存在變數中,稍後會使用這些變數來佈建實例。offering_crn="crn:v1:bluemix:public:globalcatalog-collection:global:a/a1234567:0b322820-dafd-4b5e-b694-6465da6f008a:offering:136559f6-4588-4af2-8585-f3c625eee09d" offering_version_crn="crn:v1:bluemix:public:globalcatalog-collection:global:a/a1234567:0b322820-dafd-4b5e-b694-6465da6f008a:version:136559f6-4588-4af2-8585-f3c625eee09d/8ae92879-e253-4a7c-b09f-8d30af12e518"
-
-
-
列出可用於建立您的實體的開機磁碟區。 如果您要從映像建立實例,請跳過此步驟要從現有磁碟區建立實例,您必須使用與先前選取的實例選項相容的磁碟區。 相容磁碟區與正在設定的執行個體位於相同區域,未附加,並且具有與步驟 5 中選取的設定檔相容的作業系統。 請使用
volumes
次指令來查看相容磁區。 例如,若要在us-south-1
中查看具有 x64 作業系統架構的未連接磁區:ibmcloud is volumes --attachment-state unattached --operating-system-architecture amd64 --zone us-south-1
-
您可以選擇性地 從可開機 Snapshot 建立開機磁區,並將其用於映像檔。 若要列出磁碟區的所有快照,請參閱 檢視從 Block Storage for VPC區建立的所有快照。 如果您打算使用其他帳戶的快照,請先確認已取得正確的 IAM 授權。 然後,聯絡快照的擁有者以取得快照的 CRN。
-
列出可以與實例相關聯的可用 SSH 金鑰。
ibmcloud is keys
在這個範例中,您會看到類似以下輸出的回應。
ID Name Type Length FingerPrint Resource group r006-89ec781c-9630-4f76-b9c4-a7d204828d61 my-key rsa 4096 gtnf+pdX2PYI9Ofq.. Default
如果您沒有可用的 SSH 金鑰,可以使用 ibmcloud is key-create 指令建立 SSH 金鑰。 如需相關資訊,請參閱 SSH 金鑰。
-
列出可與您的實例關聯的所有可用安置群組。
ibmcloud is placement-groups
在這個範例中,您會看到類似以下輸出的回應。
ID Name State Strategy Resource Group
c5f1f366-b92a-4080-991a-aa5c2e33d96b placement-group-region-us-south stable power_spread Default
使用 CLI 建立實例
請使用下列資訊,以使用 CLI 來建立實例。
從庫存或自訂映像檔供應
在您知道所需的值之後,請使用它們來執行 ibmcloud is instance-create
指令。 您也需要指定實例的唯一名稱。
使用下列步驟,以使用 CLI 從庫存映像檔建立基本虛擬伺服器實例。 依預設,建立實例時,會將開機磁區連接至實例。 對於大部分虛擬伺服器實例,預設開機磁區大小為 100 GB。 z/OS 虛擬伺服器實例的預設開機磁區大小是 250 GB。
-
使用以下指令建立一個實例。
ibmcloud is instance-create \ INSTANCE_NAME \ VPC \ ZONE_NAME \ PROFILE_NAME \ SUBNET \ --image IMAGE \ --keys KEYS \
例如,下列
instance-create
指令使用在 收集資訊 區段中找到的範例值。ibmcloud is instance-create \ my-instance \ r006-35b9cf35-616e-462e-a145-cf8db4062fcf \ us-south-2 \ bx2-2x8 \ 0717-198db988-3b9b-4cfa-9dec-0206420d37d0 \ --image r006-f83ce520-00b5-40c5-9938-a5c82a273f91 \ --keys r006-89ec781c-9630-4f76-b9c4-a7d204828d61 \
使用下列引數及選項值
- INSTANCE_NAME:
my-instance
- VPC:
r006-35b9cf35-616e-462e-a145-cf8db4062fcf
- ZONE_NAME:
us-south-2
- PROFILE_NAME:
bx2-2x8
- 子網路:
0717-198db988-3b9b-4cfa-9dec-0206420d37d0
- 影像:Debian 11 個影像
r006-f83ce520-00b5-40c5-9938-a5c82a273f91
- 鑰匙:
r006-89ec781c-9630-4f76-b9c4-a7d204828d61
回應會根據您使用的選項值而有所不同。
ID 0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0 Name my-instance CRN crn:v1:public:is:us-south-2:a/a1234567::instance:0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0 Status pending Availability policy on host failure restart Startable true Profile bx2-2x8 Architecture amd64 vCPU Manufacturer intel vCPUs 2 Memory(GiB) 8 Bandwidth(Mbps) 4000 Volume bandwidth(Mbps) 1000 Network bandwidth(Mbps) 3000 Lifecycle Reasons Code Message - - Lifecycle State pending Metadata service Enabled Protocol Response hop limit false http 1 Image ID Name r006-f83ce520-00b5-40c5-9938-a5c82a273f91 ibm-debian-11-3-minimal-amd64-4 VPC ID Name r006-35b9cf35-616e-462e-a145-cf8db4062fcf my-vpc Zone us-south-2 Resource group ID Name cdc21b72d4e647b195de988b175e3d82 Default Created 2023-03-23T21:50:24+00:00 Boot volume ID Name Attachment ID Attachment name - - 0717-7ccd4284-e59d-45d8-932a-9e52f62f187a landing-faucet-prankish-sprout
建立實例之後,不會傳回為新實例建立之網路介面的相關資訊。 您可以使用
ibmcloud is instance INSTANCE
指令來檢視資訊,如下列步驟中所述。 在建立實體之前,狀態顯示為待定。如需您可以在
instance-create
指令上併入作為指令選項的部分其他特性的相關資訊,請參閱下列主題: 建立磁區連接 JSON、啟用或停用 meta 資料服務 及 建立放置群組。如需指令選項的完整清單,請參閱 ibmcloud is instance-create。
- INSTANCE_NAME:
-
接下來,執行下列
instance
詳細資料指令,以驗證您可以查看新實例,並檢視為新實例建立的網路介面。0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0
是在前一個步驟中建立實例時指派的虛擬伺服器實例 ID。ibmcloud is instance 0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0
在這個範例中,您會看到以下回應。 現在狀態顯示 執行中。 請檢查「網路介面」區段,以找出網路介面的 ID。
ID 0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0 Name my-instance CRN crn:v1:public:is:us-south-2:a/a1234567::instance:0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0 Status running Availability policy on host failure restart Startable true Profile bx2-2x8 Architecture amd64 vCPU Manufacturer intel vCPUs 2 Memory(GiB) 8 Bandwidth(Mbps) 4000 Volume bandwidth(Mbps) 1000 Network bandwidth(Mbps) 3000 Lifecycle Reasons Code Message - - Lifecycle State stable Metadata service Enabled Protocol Response hop limit false http 1 Image ID Name r006-f83ce520-00b5-40c5-9938-a5c82a273f91 ibm-debian-11-3-minimal-amd64-4 VPC ID Name r006-35b9cf35-616e-462e-a145-cf8db4062fcf my-vpc Zone us-south-2 Resource group ID Name cdc21b72d4e647b195de988b175e3d82 Default Created 2023-03-23T21:50:24+00:00 Network Interfaces Interface Name ID Subnet Subnet ID Floating IP Security Groups Allow source IP spoofing Reserved IP Primary primary 0717-4db768bb-65c3-4045-8712-523e62eeabd2 my-subnet 0717-198db988-3b9b-4cfa-9dec-0206420d37d0 - enhance-corsage-managing-jinx false 10.240.64.10 Boot volume ID Name Attachment ID Attachment name r006-7a1d72d1-56ac-438e-bf85-6c0173e3f9a6 expend-anger-whiff-jackknife 0717-7ccd4284-e59d-45d8-932a-9e52f62f187a landing-faucet-prankish-sprout
-
使用下列指令,要求浮動 IP 位址與您的實例相關聯。 指定給浮動 IP 的名稱是
my-floatingip
。0717-4db768bb-65c3-4045-8712-523e62eeabd2
是前一個步驟中所顯示虛擬伺服器實例的網路介面 ID。ibmcloud is floating-ip-reserve \ my-floatingip \ --nic 0717-4db768bb-65c3-4045-8712-523e62eeabd2
在這個範例中,您會看到類似以下輸出的回應。
ID r006-9b79b9bc-a2dc-4337-865a-57d9b9198b76 Address 169.59.214.164 Name my-floatingip CRN crn:v1:public:is:us-south-2:a/a1234567::floating-ip:r006-9b79b9bc-a2dc-4337-865a-57d9b9198b76 Status available Zone us-south-2 Created 2023-03-23T22:13:07+00:00 Target ID Target type Instance ID Target interface name Target interface private IP 0717-4db768bb-65c3-4045-8712-523e62eeabd2 network_interface 0726_67b1179a-8b25-4ac9-8bc0-7f3027466ed0 primary - Resource group ID Name cdc21b72d4e647b195de988b175e3d82 Default
記錄浮動 IP
Address
以供稍後使用。如需指令選項的完整清單,請參閱 ibmcloud is floating-ip-reserve。
需要更多協助嗎? 您隨時可以執行 ibmcloud is instance-create --help
來顯示建立實例的說明。
從專用型錄映像檔佈建
在您知道所需的值之後,請使用它們來執行 ibmcloud is instance-create
指令。 您也需要指定實例的唯一名稱。
請使用下列步驟,利用 CLI 從專用型錄供應項目或型錄供應項目版本建立虛擬伺服器實例。
-
使用以下指令建立一個實例。
ibmcloud is instance-create \ INSTANCE_NAME \ VPC \ ZONE_NAME \ PROFILE_NAME \ SUBNET \ --catalog-offering <CRN for the IBM Cloud catalog offering> or --catalog-offering-version <The CRN for the version of an IBM Cloud catalog offering> \ --keys KEYS \ --placement-group PLACEMENT_GROUP_NAME \
例如,如果您在 us-south-2 中建立一個稱為 my-instance 的實例,並使用 bx2-2x8 設定檔和型錄供應項目,則
instance-create
指令看起來類似於下列範例。ibmcloud is instance-create\ my-instance\ r006-35b9cf35-616e-462e-a145-cf8db4062fcf\ us-south-2\ bx2-2x8\ 0717-198db988-3b9b-4cfa-9dec-0206420d37d0\ --catalog-offering crn:v1:public:globalcatalog-collection:global:a/efe5afc483594adaa8325e2b4d1290df:0b322820-dafd-4b5e-b694-6465da6f008a:offering:136559f6-4588-4af2-8585-f3c625eee09d --keys r006-89ec781c-9630-4f76-b9c4-a7d204828d61\ --placement-group c5f1f366-b92a-4080-991a-aa5c2e33d96b\
其中使用下列引數及選項值。
- INSTANCE_NAME:
my-instance
- VPC:
r006-35b9cf35-616e-462e-a145-cf8db4062fcf
- ZONE_NAME:
us-south-2
- PROFILE_NAME:
bx2-2x8
- 子網路:
0717-198db988-3b9b-4cfa-9dec-0206420d37d0
- CATALOG-OFFERING: IS
crn:v1:public:globalcatalog-collection:global:a/efe5afc483594adaa8325e2b4d1290df:0b322820-dafd-4b5e-b694-6465da6f008a:offering:136559f6-4588-4af2-8585-f3c625eee09d
- 鑰匙:
r006-89ec781c-9630-4f76-b9c4-a7d204828d61
- placement_group:
c5f1f366-b92a-4080-991a-aa5c2e33d96b
建立實例之後,不會傳回為新實例建立之網路介面的相關資訊。 您可以使用
ibmcloud is instance INSTANCE
指令來檢視資訊,如下列步驟中所述。虛擬伺服器實例的狀態會顯示 pending,直到建立實例為止。
如需指令選項的完整清單,請參閱 ibmcloud is instance-create。
- INSTANCE_NAME:
-
接下來,執行下列
instance
詳細資料指令,以驗證您可以查看新實例,並檢視為新實例建立的網路介面。 對於INSTANCE
,指定在前一個步驟中指派給新虛擬伺服器實例的 ID。ibmcloud is instance INSTANCE
現在狀態顯示 執行中。 請檢查「網路介面」區段,以找出網路介面的 ID。
-
使用下列指令,要求浮動 IP 位址與您的實例相關聯。 對於
FLOATING_IP_NAME
,請指定浮動 IP 的名稱,對於TARGET_INTERFACE
,請指定您在前一個步驟中識別的網路介面 ID。ibmcloud is floating-ip-reserve \ FLOATING_IP_NAME \ --nic TARGET_INTERFACE
記錄浮動 IP
Address
以供稍後使用。如需指令選項的完整清單,請參閱 ibmcloud is floating-ip-reserve。
需要更多協助嗎? 您隨時可以執行 ibmcloud is instance-create --help
來顯示建立實例的說明。
從現有磁區供應
知道需要的值後,使用這些值執行 instance-create
指令。 您也需要指定實例的唯一名稱。
請使用下列步驟,從可啟動的磁區建立虛擬伺服器實例,其中包括磁區連接。
-
使用以下指令建立一個實例。
ibmcloud is instance-create \ INSTANCE_NAME \ VPC \ ZONE_NAME \ PROFILE_NAME \ SUBNET \ --boot-volume VOLUME_ID \ --keys KEYS \ --volume-attach VOLUME_ATTACH_JSON \
例如,如果您在 us-south-1 中建立一個稱為 my-instance 的實例,並使用 bx2-2x8 設定檔和現有的開機磁區,則您的
instance-create
指令類似於下列範例。ibmcloud is instance-create\ my-instance\ r006-35b9cf35-616e-462e-a145-cf8db4062fcf\ us-south-1\ bx2-2x8\ 0717-198db988-3b9b-4cfa-9dec-0206420d37d0\ --boot-volume r006-feec3e99-995e-4e8f-896b-48b42c7d05a7\ --keys r006-89ec781c-9630-4f76-b9c4-a7d204828d61\ --volume-attach @/Users/myname/myvolume-attachment_create.json\
如需範例磁區連接 JSON 檔案,請參閱建立磁區連接 JSON。 您也可以在磁區連接中包括 磁區的使用者標籤。
建立實例之後,不會傳回為新實例建立之網路介面的相關資訊。 您可以依照下一步的說明,使用
ibmcloud is instance INSTANCE
指令來檢視資訊。在建立實體之前,狀態顯示為待定。
如需指令選項的完整清單,請參閱 ibmcloud is instance-create。
-
接下來,執行下列
instance
詳細資料指令,以驗證您可以查看新實例,並檢視為新實例建立的網路介面。 對於INSTANCE
,指定在前一個步驟中指派給新虛擬伺服器實例的 ID。ibmcloud is instance INSTANCE
現在狀態顯示 執行中。 請檢查「網路介面」區段,以找出網路介面的 ID。
-
使用下列指令,要求浮動 IP 位址與您的實例相關聯。 對於
FLOATING_IP_NAME
,請指定浮動 IP 的名稱,對於TARGET_INTERFACE
,請指定您在前一個步驟中識別的網路介面 ID。ibmcloud is floating-ip-reserve \ FLOATING_IP_NAME \ --nic TARGET_INTERFACE
記錄浮動 IP
Address
以供稍後使用。如需指令選項的完整清單,請參閱 ibmcloud is floating-ip-reserve。
需要更多協助嗎? 您隨時可以執行
ibmcloud is instance-create --help
來顯示建立實例的說明。
從快照建立啟動磁碟區並使用它從 CLI 調配新實例
您可以從可啟動的 Snapshot 建立開機磁區,並將該磁區用於映像檔。 執行 ibmcloud is instance-create
指令時,請指定啟動磁碟區 JSON 中的 source_snapshot
子屬性以及可啟動快照的
ID、名稱或 CRN。 如需範例,請參閱 透過 CLI 從新執行個體的快照建立啟動磁碟區。
建立具有機密運算的實例
選取可用性
使用適用於 VPC 的 Intel SGX 的機密運算僅在美國南部(達拉斯)區域可用。
知道需要的值後,使用這些值執行 ibmcloud is instance-create
指令。 您也需要指定實例的唯一名稱。
對於 confidential-compute-mode
,您需要為該選項指定 sgx
或 tdx
。
使用下列步驟建立支援機密運算的基本虛擬伺服器實例。
使用以下指令建立一個實例。
ibmcloud is instance-create \
INSTANCE_NAME \
VPC \
ZONE_NAME \
PROFILE_NAME \
SUBNET \
--image IMAGE \
--confidential-compute-mode sgx \
--keys KEYS \
例如,下列 instance-create
指令使用在 收集資訊 區段中找到的範例值。
ibmcloud is instance-create \
my-instance \
r006-35b9cf35-616e-462e-a145-cf8db4062fcf \
us-south-2 \
bx2-2x8 \
0717-198db988-3b9b-4cfa-9dec-0206420d37d0 \
--image r006-f83ce520-00b5-40c5-9938-a5c82a273f91 \
--confidential-compute-mode sgx \
--keys r006-89ec781c-9630-4f76-b9c4-a7d204828d61 \
使用下列引數及選項值
* INSTANCE_NAME: `my-instance`
* VPC: `r006-35b9cf35-616e-462e-a145-cf8db4062fcf`
* ZONE_NAME: `us-south-2`
* PROFILE_NAME: `bx2-2x8`
* SUBNET: `0717-198db988-3b9b-4cfa-9dec-0206420d37d0`
* IMAGE: Debian 11 image `r006-f83ce520-00b5-40c5-9938-a5c82a273f91`
* KEYS: `r006-89ec781c-9630-4f76-b9c4-a7d204828d61`
建立安全啟動實例
選取可用性
使用適用於 VPC 的英特爾 SGX 的機密計算僅在達拉斯(美國南部)和法蘭克福(歐盟-德國)區域提供。
知道需要的值後,使用這些值執行 ibmcloud is instance-create
指令。 您也需要指定實例的唯一名稱。
對於 enable-secure-boot
,您需要指定 true
或 false
。 預設值為 false
。
使用下列步驟建立支援安全啟動的基本虛擬伺服器執行個體。
使用以下指令建立一個實例。
ibmcloud is instance-create \
INSTANCE_NAME \
VPC \
ZONE_NAME \
PROFILE_NAME \
SUBNET \
--image IMAGE \
--enable-secure-boot true \
--keys KEYS \
例如,下列 instance-create
指令使用在 收集資訊 區段中找到的範例值。
ibmcloud is instance-create \
my-instance \
r006-35b9cf35-616e-462e-a145-cf8db4062fcf \
us-south-2 \
bx2-2x8 \
0717-198db988-3b9b-4cfa-9dec-0206420d37d0 \
--image r006-f83ce520-00b5-40c5-9938-a5c82a273f91 \
--enable-secure-boot true \
--keys r006-89ec781c-9630-4f76-b9c4-a7d204828d61 \
使用下列引數及選項值
* INSTANCE_NAME: `my-instance`
* VPC: `r006-35b9cf35-616e-462e-a145-cf8db4062fcf`
* ZONE_NAME: `us-south-2`
* PROFILE_NAME: `bx2-2x8`
* SUBNET: `0717-198db988-3b9b-4cfa-9dec-0206420d37d0`
* IMAGE: Debian 11 image `r006-f83ce520-00b5-40c5-9938-a5c82a273f91`
* KEYS: `r006-89ec781c-9630-4f76-b9c4-a7d204828d61`
從 CLI 建立實例之後的後續步驟
會寄送一系列的電子郵件給您的管理者:確認虛擬伺服器實例訂單、訂單核准及處理中,以及建立實例的訊息。
如果您選擇 GPU 設定檔,請參閱 管理 GPU。
建立實例之後,請將浮動 IP 位址與實例產生關聯。 然後您便可以連接至實例。 如需相關資訊,請參閱連接至 Linux 實例或連接至 Windows 實例。
使用 API 建立虛擬伺服器實例
您可以使用 API 建立實體。
開始之前
確保您擁有所需的存取權限。 若要呼叫這些方法,您必須獲指派一個以上包含下列動作的 IAM 存取角色,視任何列出的條件而定。 您可以移至 Cloud Identity and Access Management 儀表板的 使用者 頁面來檢查您的存取權。
使用 API 收集資訊以建立實例
在可以建立實例之前,您需要知道實例的詳細資料,例如您要使用的實例設定檔或映像檔。 透過進行下列 API 呼叫來收集資訊:
實例詳細資料 | 列出選項 | API 規格文件 |
---|---|---|
影像 | GET /images |
列出所有映像檔 |
設定檔 | GET /instance/profiles
|
列出所有實例設定檔 |
索引鍵 | GET /keys |
列出所有金鑰 |
VPC | GET /vpcs |
列出所有 VPC |
子網路 | GET /subnets |
列出所有子網路 |
區域 | GET /regions/<region>/zones |
列出地區中的所有區域 |
放置群組 | GET /placement_groups |
列出所有放置群組 |
如果您打算使用其他帳戶的快照,請確保先具備正確的 IAM 授權。 然後,聯絡快照的擁有者以取得快照的 CRN。
使用 API 建立實例
擷取所需的資訊之後,您可以執行 POST /instances
方法來建立實例。
使用 API 從庫存或自訂映像檔佈建實例
您可以透過將映像檔的 id
子內容指定為 image
內容的值,來佈建具有庫存或自訂映像檔的實例。
curl -X POST "$vpc_api_endpoint/v1/instances?version=$api_version&generation=2" \
-H "Authorization:$iam_token" \
-d '{
"name": "my-instance",
"zone": {
"name": "us-south-3"
},
"vpc": {
"id": "'$vpc'"
},
"primary_network_interface": {
"subnet": {
"id": "'$subnet'"
}
},
"keys":[{"id": "'$key'"}],
"profile": {
"name": "'$profile_name'"
},
"image": {
"id": "'$image_id'"
}
}'
使用 API 從專用型錄映像檔佈建實例
您可以透過指定映像檔的 offering_crn
或 version_crn
子內容作為 catalog_offering
內容的值,來佈建具有專用型錄映像檔的實例。
-
使用型錄產品供應項目最新版本中的專用型錄映像檔來建立實例。
curl -X POST "$vpc_api_endpoint/v1/instances?version=$api_version&generation=2" \ -H "Authorization:$iam_token" \ -d '{ "name": "my-instance", "zone": { "name": "us-south-3" }, "vpc": { "id": "'$vpc'" }, "primary_network_interface": { "subnet": { "id": "'$subnet'" } }, "keys":[{"id": "'$key'"}], "profile": { "name": "'$profile_name'" }, "catalog_offering": { "offering": { "crn": "'$offering_crn'" } }'
-
使用型錄產品供應項目特定版本的專用型錄映像檔來建立實例。
curl -X POST "$vpc_api_endpoint/v1/instances?version=$api_version&generation=2" \ -H "Authorization:$iam_token" \ -d '{ "name": "my-instance", "zone": { "name": "us-south-3" }, "vpc": { "id": "'$vpc'" }, "primary_network_interface": { "subnet": { "id": "'$subnet'" } }, "keys":[{"id": "'$key'"}], "profile": { "name": "'$profile_name'" }, "catalog_offering": { "version": { "crn": "'$version_crn'" } }'
從現有磁區供應
重複使用現有可開機磁區比從 Snapshot 或映像檔建立新磁區更快。
您可以透過指定現有磁區的 id
或 crn
子內容作為 boot_volume_attachment
內容的值,來佈建具有現有磁區的實例。
現有的可開機磁碟區必須是未連接的可開機磁碟區,其架構與實體設定檔相同。 使用 列出磁區 過濾器並參照 attachment_state
內容及 operating_system
內容,以檢視磁區的資格。
例如,查看 us-south-1
中具有 x86 作業系統的未連接磁區。
curl -X GET "$vpc_api_endpoint/v1/volumes?version=2023-02-08&generation=2?attachment_state=unattached&zone.name=us-south-1&operating_system.architecture=amd64"
-H "Authorization: Bearer $iam_token"
依預設,在佈建虛擬伺服器實例時建立的開機磁區會在刪除實例時刪除。 您可以透過設定來更改此行為 delete_volume_on_instance_delete
財產給 false
當您建立執行個體或更新啟動磁碟區附件時。
使用 POST /instances
方法,以您收集的資訊來建立實例。 下列呼叫是使用現有開機磁區佈建實例的範例。
curl -X POST "$vpc_api_endpoint/v1/instances?version=2023-02-08&generation=2"
-H "Authorization: Bearer $iam_token"
-d '{
"boot_volume_attachment": {
"volume": {
"id": "r006-feec3e99-995e-4e8f-896b-48b42c7d05a7"
}
},
"keys": [
{
"id": "363f6d70-0000-0001-0000-00000013b96c"
}
],
"name": "my-instance",
"placement_target": {
"id": "0787-8c2a09be-ee18-4af2-8ef4-6a6060732221"
},
"primary_network_interface": {
"name": "my-network-interface",
"subnet": {
"id": "bea6a632-5e13-42a4-b4b8-31dc877abfe4"
}
},
"profile": {
"name": "bx2-2x8"
},
"volume_attachments": [
{
"volume": {
"capacity": 1000,
"encryption_key": {
"crn": "crn:[...]"
},
"name": "my-data-volume",
"profile": {
"name": "5iops-tier"
}
}
}
],
"vpc": {
"id": "f0aae929-7047-46d1-92e1-9102b07a7f6f"
},
"zone": {
"name": "us-south-1"
}
}'
如需相關資訊,請參閱 建立實例。
從 Snapshot 還原開機磁區,並使用它來佈建新實例
您可以從可開機 Snapshot 還原 開機磁區,然後在佈建實例時使用該開機磁區。 可開機 Snapshot 必須與實例設定檔具有相同的作業系統及架構。
在 POST /instances
要求中,在 source_snapshot
子內容中指定 boot_volume_attachment
內容及可啟動 Snapshot ID。 或者,您也可以使用快照的名稱或 CRN。 請參閱下列範例。
curl -X POST \
"$vpc_api_endpoint/v1/instances?version=2023-03-07&generation=2" \
-H "Authorization: $iam_token" \
-H "Content-Type: application/json" \
-d '{
"boot_volume_attachment": {
"delete_volume_on_instance_delete": true,
"volume": {
"profile": {
"name": "general-purpose"
},
"source_snapshot": {
"id": "eb373975-4171-4d91-81d2-c49efb033753"
}
}
},
.
.
.
}'
如需使用 API 還原磁區的相關資訊,請參閱 使用 API 從 Snapshot 還原磁區。
建立具有機密運算的實例
選取可用性
使用適用於 VPC 的英特爾 SGX 的機密計算僅在達拉斯(美國南部)和法蘭克福(歐盟-德國)區域提供。
要为实例提供保密计算,请添加 confidential_compute_mode
属性,并将其设置为 sgx
或 tdx
。
curl -X POST "$vpc_api_endpoint/v1/instances?version=$api_version&generation=2" \
-H "Authorization:$iam_token" \
-d '{
"name": "my-instance",
"zone": {
"name": "us-south-3"
},
"vpc": {
"id": "'$vpc'"
},
"primary_network_interface": {
"subnet": {
"id": "'$subnet'"
}
},
"keys":[{"id": "'$key'"}],
"profile": {
"name": "'$profile_name'"
},
"image": {
"id": "'$image_id'"
},
"confidential_compute_mode": "sgx"
}'
建立安全啟動實例
若要為實例配置安全啟動,請新增 enable_secure_boot
屬性並將其設為 true
。
curl -X POST "$vpc_api_endpoint/v1/instances?version=$api_version&generation=2" \
-H "Authorization:$iam_token" \
-d '{
"name": "my-instance",
"zone": {
"name": "us-south-3"
},
"vpc": {
"id": "'$vpc'"
},
"primary_network_interface": {
"subnet": {
"id": "'$subnet'"
}
},
"keys":[{"id": "'$key'"}],
"profile": {
"name": "'$profile_name'"
},
"image": {
"id": "'$image_id'"
},
"enable_secure_boot": "true"
}'
使用 Terraform 建立虛擬伺服器實體
您可以使用 Terraform 來建立實例。 如果您想要使用使用者標籤或存取管理標籤來管理資源,請參閱 使用標籤。
開始之前
請確定您已設定 VPC 的 Terraform。
建立專用型錄
這是選用步驟。 如果您計劃從專用型錄共用映像檔,則必須先建立專用型錄。 如果您選取屬於不同帳戶的型錄映像檔,請檢閱 在 Terraform 的專用型錄中使用跨帳戶映像檔參照,以取得其他考量和限制。 若要建立專用型錄,請參閱指導教學 使用 Terraform 來上線虛擬伺服器映像檔。
使用 Terraform 收集資訊以建立實例
準備好要建立實例了嗎? 在執行 ibm_is_instance
指令之前,您需要知道實體的詳細資訊,例如您要使用的設定檔或映像。
使用 DataSource
指令收集下列資訊。
-
收集實例設定檔詳細資料。 針對您選取的設定檔執行下列指令。 如需可用設定檔的清單,請參閱 x86 實例設定檔。 如需相關資訊,請參閱 ibm_is_instance_profiles 上的 Terraform 文件。 透過參照實例設定檔資料來源來使用實例設定檔。 如需相關資訊,請參閱 ibm_is_instance_profile 上的 Terraform 文件。
data "ibm_is_instance_profile" "example_profile" { name = "bx2-2x8" }
-
列出可用來建立實例的映像檔。 指令視您要使用的映像檔而定。 您可以使用庫存映像檔、帳戶中的自訂映像檔,或專用型錄中與帳戶共用的映像檔。 如需相關資訊,請參閱 ibm_is_image 上的 Terraform 文件。 如果您計劃使用從專用型錄共用的映像檔,請參閱 ibm_cm_version 或 ibm_cm_offering_instance 上的 Terraform 文件。
- 從實例的帳戶中選取庫存映像檔或自訂映像檔。
data "ibm_is_image" "example_image" { name = "ibm-centos-7-6-minimal-amd64-2" }
- 從實例的專用型錄中選取共用的映像檔。 如需相關資訊,請參閱 ibm_is_images 上的 Terraform 文件。 您可以從清單中選取映像檔來建立實例,如 跳至使用 Terraform 區段建立實例 一節中所示。
如果您選取屬於不同帳戶的型錄映像檔,則需要檢閱更多考量及限制。 請參閱 在 Terraform 的專用型錄中使用跨帳戶映像檔參照。
-
若要列出所有可用的專用型錄映像檔供應項目,請執行下列指令。
data "ibm_is_images" "example_images" { catalog_managed = true }
-
透過參照 VPC 資料來源來建立 VPC 資源或使用現有 VPC。 如需相關資訊,請參閱 ibm_is_vpc 上的 Terraform 文件。
resource "ibm_is_vpc" "example_vpc" { name = "example-vpc" }
-
透過參照子網路資料來源來建立子網路資源或使用現有子網路。 如需相關資訊,請參閱 ibm_is_subnet 上的 Terraform 文件。
resource "ibm_is_subnet" "example_subnet" { name = "example-subnet" vpc = ibm_is_vpc.example_vpc.id zone = "us-south-1" ipv4_cidr_block = "10.240.0.0/24" }
-
透過參照 ssh-key 資料來源來建立 ssh-key 資源或使用現有的 ssh-key。 如需相關資訊,請參閱 ibm_is_ssh_keys上的 Terraform 文件。
resource "ibm_is_ssh_key" "example_sshkey" { name = "example-sshkey" type = "rsa" public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCKVmnMOlHKcZK8tpt3MP1lqOLAcqcJzhsvJcjscgVERRN7/9484SOBJ3HSKxxNG5JN8owAjy5f9yYwcUg+JaUVuytn5Pv3aeYROHGGg+5G346xaq3DAwX6Y5ykr2fvjObgncQBnuU5KHWCECO/4h8uWuwh/kfniXPVjFToc+gnkqA+3RKpAecZhFXwfalQ9mMuYGFxn+fwn8cYEApsJbsEmb0iJwPiZ5hjFC8wREuiTlhPHDgkBLOiycd20op2nXzDbHfCHInquEe/gYxEitALONxm0swBOwJZwlTDOB7C6y2dzlrtxr1L59m7pCkWI4EtTRLvleehBoj3u7jB4usR" }
SSH 金鑰可以是 RSA 或 Ed25519。 您可以使用使用者介面來產生新的 RSA 金鑰組。 預先存在的 RSA 和ED25519可以上傳 SSH 金鑰。 只有在作業系統支援此金鑰類型時,才能使用 Ed25519。 Ed25519 無法與 Windows 或 VMware 映像檔搭配使用。
-
透過參照 subnet_reserved_ip 資料來源,建立 subnet_reserved_ip 資源或使用現有 subnet_reserved_ip。 如需相關資訊,請參閱 ibm_is_subnet_reserved_ip 上的 Terraform 文件
resource "ibm_is_subnet_reserved_ip" "example_reserved_ip" { subnet = ibm_is_subnet.example_subnet.id name = "example-reserved-ip1" address = "${replace(ibm_is_subnet.example_subnet.ipv4_cidr_block, "0/24", "13")}" }
使用 Terraform 建立實例
要使用 Terraform,請下載 Terraform CLI 並配置 IBM Cloud Provider 外掛程式。 如需詳細資訊,請參閱 Terraform 入門。
使用下列其中一個範例來建立實例。 如需相關資訊,請參閱 ibm_is_instance 上的 Terraform 文件。
根據您計劃使用的映像檔,執行下列其中一個 Terraform 指令。
-
使用實例的帳戶中的庫存映像檔或自訂映像檔來建立實例。
resource "ibm_is_instance" "example_instance" { name = "example-instance-reserved-ip" image = data.ibm_is_image.example_image.id profile = data.ibm_is_instance_profile.example_profile.name primary_network_interface { name = "eth0" subnet = ibm_is_subnet.example_subnet.id primary_ip { reserved_ip = ibm_is_subnet_reserved_ip.example_reserved_ip.reserved_ip } } network_interfaces { name = "eth1" subnet = ibm_is_subnet.example_subnet.id primary_ip { name = "example-reserved-ip1" auto_delete = true address = "${replace(ibm_is_subnet.example_subnet.ipv4_cidr_block, "0/24", "14")}" } } vpc = ibm_is_vpc.example_vpc.id zone = "us-south-1" keys = [ibm_is_ssh_key.example_sshkey.id] }
-
建立使用專用型錄管理映像檔的實例。
resource "ibm_is_instance" "example_instance" { name = "example-instance-reserved-ip" image = data.ibm_is_image.example_image.id profile = data.ibm_is_instance_profile.example_profile.name primary_network_interface { name = "eth0" subnet = ibm_is_subnet.example_subnet.id primary_ip { reserved_ip = ibm_is_subnet_reserved_ip.example_reserved_ip.reserved_ip } } network_interfaces { name = "eth1" subnet = ibm_is_subnet.example_subnet.id primary_ip { name = "example-reserved-ip1" auto_delete = true address = "${replace(ibm_is_subnet.example_subnet.ipv4_cidr_block, "0/24", "14")}" } } vpc = ibm_is_vpc.example_vpc.id zone = "us-south-1" keys = [ibm_is_ssh_key.example_sshkey.id] }