使用 VNC 或序列主控台存取虛擬伺服器實例
您可以透過 IBM Cloud 使用者介面、API 請求或 IBM Cloud 命令列介面 (CLI),連線至 VNC 或序列主控台,以存取您的 IBM Cloud 虛擬伺服器執行個體。 主控台服務是一種快速且輕鬆的方式,可讓您在不使用 Secure Shell 的情況下與實例互動。
僅適用於使用 TDX 機密運算功能的 z/OS 虛擬伺服器及虛擬伺服器執行個體:不支援將 z/OS 或使用 TDX 機密運算功能的虛擬伺服器執行個體連線至 VNC 主控台。
它適用於發生開機失敗或核心損毀的狀況,特別是當您使用自訂映像檔時。 當發生這些狀況時,您可以使用主控台服務來檢查問題。
VNC 主控台提供圖形使用者介面,並同時接受滑鼠和鍵盤輸入。 序列主控台提供接受鍵盤輸入的文字型主控台。
您可以使用主控台來存取 OS 載入及開機程序,例如 GNU GRand Unified Bootloader (GRUB)。
可以使用任何 支援的瀏覽器 來開啟主控台。
開始之前
- 若要連接至主控台,您需要在 IBM Cloud® Identity and Access Management (IAM) 中為虛擬伺服器實例指定
Operator(或更高) 和Console Administrator角色。
Console Administrator 角色不會自動套用。 如果您是帳戶的管理員,您也需要自行指定 Console Administrator 角色才能使用此功能。
若要檢查您是否已獲指派必要的角色,請移至 IBM Cloud 主控台中的 [IAM 使用者](/iam/users){: external} 頁面,並在 **使用者**下選取您的帳戶,然後選取 **存取原則**。 請確定您看到存取原則,將 `Operator` (或更新版本) 角色及 `VirtualServerConsoleAdmin` 角色指派給目標虛擬伺服器實例的 **資源屬性**。 否則,您需要使用下列步驟來聯絡帳戶的管理者,以指派角色給您:
1. 移至 IBM Cloud 主控台中的 [IAM 使用者](/iam/users){: external} 頁面,然後選取目標使用者。
1. Click the **存取** tab, and scroll to **存取政策**.
1. 按一下**指派存取權**。
1. 捲動至 **Create policy** 區段。
1. In the **服務** section, select _VPC 基礎結構服務_. 然後按**下一步**。
1. In the **資源** section, select _所有資源_.
1. 在**角色和操作**中,選擇以下服務存取權限:
- 主控台管理者
1. 接著,請選擇以下其中一種「平台存取」方式:
- 操作員
- 編輯者
- 管理者
1. 按**下一步**。
1. 可選擇加入 Condition。
1. 按一下 **檢閱**。
1. 按一下**新增**。
1. 檢閱 **存取摘要** 側邊窗格,然後按一下 **指派**。
如需進一步了解 IAM 角色的相關資訊,請參閱 [《IAM 入門指南》](/docs/vpc?topic=vpc-iam-getting-started)。
{: tip}
-
IBM Cloud 提供的映像檔通常沒有密碼。 若要使用主控台順利存取實例,您可能需要為 Linux 映像檔建立密碼,或提前擷取 Windows 映像檔的密碼。
-
若為 Linux 映像檔,請連接至 連接至 Linux 實例 之後的實例。 在實例上,使用下列指令建立本端密碼:
sudo passwd $(whoami) -
若為 Windows 映像檔,請在 連接至 Windows 實例 之後取得密碼。
-
若為 z/OS 映像檔,請在 連接至 z/OS 實例 之後取得密碼。
-
對於序列主控台,您可以使用 -a root 旗標,將 getty 配置成在沒有密碼的情況下自動登入。
若要為自訂的 Linux 映像啟用串列主控台服務,請確保核心命令列中包含參數 console=ttyS0。 如需更多資訊,請參閱《 建立 Linux 自訂映像 》中的「步驟 1 - 從單一 qcow2 或VHD格式的映像檔案開始」。
使用 IBM Cloud 使用者介面來連接至主控台
請遵循下列步驟,使用 IBM Cloud 使用者介面來連接至主控台。
- 在 IBM Cloud 控制台中,請依序點選 「導覽」
>「基礎架構」
>「運算」>「虛擬伺服器執行個體」。
- 在 VPC 的虛擬伺服器實例 清單中,按一下您需要存取之實例的溢位按鈕,然後按一下 開啟 VNC 主控台 或 開啟序列主控台。 或者,在實例詳細資料頁面上,按一下右上方的 動作,然後按一下 開啟 VNC 主控台 或 開啟序列主控台。
- (僅限序列主控台) 如果正在使用序列主控台,則系統會提示您確認是否強制開啟階段作業。 這個動作會切斷另一個使用者的階段作業。
- 輸入認證,並遵循提示來登入您的實例。
您可以按一下主控台視窗右上方的 關閉實例 或 重新開機實例,以停止或重新啟動實例。
使用 API 來連接至主控台
在可以使用 API 要求來連接至 VNC 或序列主控台之前,您需要先取得 IAM 記號,將端點儲存為變數,並驗證您具有 VPC API 服務的存取權。 如需相關資訊,請參閱 API 必要條件。
使用 API 連接至 VNC 主控台
-
為該實例建立一個主控台存取憑證。 在有效負載中指定
"console_type":"VNC"。curl -X POST \ "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2021-01-26&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "console_type": "vnc" }'存取記號將在 3 分鐘之後無效。
-
將 "href" 的值儲存在回應中。
-
在瀏覽器中開啟 noVNC 入口網站。
-
按一下 設定,然後展開 進階> WebSocket。
-
選取 Encrypt,將您在步驟 2 中儲存的URL的 API 端點部分貼到 Host:,不包含“wss://”,將連接埠設定為“443”,將您在步驟 2 中儲存的URL的路徑部分貼到小路。
- 範例 API 端點:
us-south.iaas.cloud.ibm.com - 範例路徑:
v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2
- 範例 API 端點:
-
按一下連接。
-
登入該實例。
使用 API 來連接序列主控台
-
建立實例的主控台存取記號,在有效負載中指定
"console_type": "serial"和"force": true。curl -X POST \ "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2020-01-26&generation=2" \ -H "Authorization: $token" \ -d '{ "console_type":"serial", "force": true }'透過將
"force"指定為true,您可以連接至序列主控台,即使其他使用者使用該主控台也一樣。 預設值為false,表示如果使用主控台,則無法建立連線。 -
將 "href" 的值儲存在回應中。
-
使用URL啟動串列控制台程式。
如果您使用 websocat,請在指令中指定
--binary旗標。 例如,websocat --binary "wss://us-south.iaas.cloud.ibm.com/v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2" -
輸入認證,並遵循提示來登入您的實例。
使用 CLI 連接至主控台
請確保透過遵循 CLI 必要條件 來設定 CLI 環境。
-
執行下列指令,以連接至主控台:
ibmcloud is instance-console $instance_id此指令預設會開啟一個串列主控台。 若要開啟 VNC 主控台,請在命令中加入
[--vnc]參數,以取得主控台的URL。 -
視您使用的主控台而定,執行下列其中一個步驟:
- 若為 VNC 主控台,請遵循 使用 API 連接至 VNC 主控台 中的 步驟 2 至 步驟 7。
- 若為序列主控台,請輸入認證,並遵循提示來登入您的實例。
中斷與主控台的連線
當您完成主控台的使用時,可以透過關閉終端機或瀏覽器來中斷與主控台的連線。
主控台服務的注意事項
-
主控台階段作業會在閒置 10 分鐘之後到期。 不論活動為何,它會在 60 分鐘之後關閉。
某些作業系統在終端機上會顯示閃爍的光標,例如:Ubuntu 18.04。 當您使用 VNC 主控台來存取使用這類作業系統的實例時,閃動游標會導致主控台階段作業在閒置 10 分鐘之後仍保持作用中。 不論活動為何,主控台階段作業仍會在 60 分鐘之後關閉。
-
如果實例已關閉電源,則主控台會中斷連接。 在實例重新啟動之前,您無法重新建立連線。
-
重新啟動、重設或任何未導致重新排程實例的其他作業會維護主控台連線。
-
每個實例的作用中 VNC 主控台數目限制為兩個。 每個實例的作用中序列主控台數目限制為一個。
-
有關使用串行控制台對 Linux虛擬伺服器實例進行故障排除的信息,請參閱如何使用Linux SysRq密鑰從串行控制台對Linux虛擬伺服器實例進行故障排除?。