一般常見問題解答

有關 IBM Cloud Schematics 常見問題的解答分類如下。

何謂 IBM Cloud Schematics?它是如何運作的?

IBM Cloud Schematics 提供強大的工具,讓您的雲端基礎架構佈建與管理流程自動化。 以及雲端資源的設定、運作和應用程式工作負載的部署。

若要這樣做,Schematics 會使用開放程式碼專案 (例如 Terraform、Ansible、Red Hat OpenShift、Operators 及 Helm),並將這些功能作為受管理服務提供給您。 而不是在系統上安裝每一個開放程式碼專案,並學習 API 或 CLI。 您可以宣告要在 IBM Cloud 中執行的作業,並監看 Schematics 為您執行這些作業。

如需 Schematics 如何運作的相關資訊,請參閱 關於 IBM Cloud Schematics

何謂基礎架構即程式碼?

「基礎架構即代碼」( IaC )讓您能夠將雲端環境以代碼形式定義,從而實現雲端資源的自動配置與管理。 與其手動配置和設定基礎架構資源,或使用腳本来調整雲端環境,您可改用高階腳本語言來定義資源及其設定。 Terraform 等工具可透過其 API 在雲端提供這些資源。 由於您的基礎架構程式碼與應用程式程式碼受到同等對待,因此您可以套用「DevOps」的實務做法,例如版本控制、測試以及持續監控。

我可以使用 Terraform IBM 模組與 Schematics 來佈建所需的基礎結構嗎?

是的,您可以使用 Terraform IBM 模組(TIM) 搭配 Schematics 來佈建基礎結構。 Terraform IBM 模組是預先建立、經過驗證且適用於企業的模組,遵循 IBM Cloud 最佳實務。 這些模組可直接在您的 Terraform 設定中引用,並與 Schematics 工作區搭配使用,以有效率地佈建 IBM Cloud 資源。 如需更多資訊和可用模組,請查看 Terraform 註冊表

使用 Schematics 的費用是多少?

IBM Cloud Schematics 工作空間免費提供。 然而,當您決定在 IBM Cloud 中套用 Terraform 範本時(無論是透過在工作區詳細資訊頁面上點擊「Apply plan」,還是執行 ibmcloud schematics apply 指令),系統將針對 Terraform 範本中所述的雲端資源向您收費。 請檢閱即將建立的每個資源的可用服務方案和定價資訊。 部分服務具有每個 IBM Cloud 帳戶的限制。 如果您即將到達帳戶的服務限制,在您增加服務配額或先移除現有服務之前並不會佈建資源。

Schematics ibmcloud terraform 指令用法在您的指令中會顯示警告和廢止訊息,如同 Alias Terraform are deprecated. Use schematics or sch

如何在作業之間儲存檔案?

Schematics 會持續保存在動作和工作區作業期間寫入路徑 /tmp/.schematics 的檔案。 在工作區上執行下一個作業時,檔案會還原至相同的路徑。 檔案限制為 10 MB。

工作失敗,因為工作區中移除或遺漏檔案,或動作 (Ansible) 範本儲存庫

在匯入或複製套件到 Schematics 後,由於 Git 範本套件庫中的檔案被移除或遺漏,因此會發生工作失敗。

檔案在執行時可能會遺失,原因有幾種: - 檔案透過使用檔案系統 symlinks 引用至儲存庫中的不同檔案或資料夾,或引用至外部檔案系統。 - repo 的內容是以 TGZ 的形式上傳,而被 Git 子模組或 symlinks 引用的檔案並未包含在 TGZ 中。 - 這些檔案被 Schematics 視為脆弱或惡意。

使用 Terraform 或 Ansible 模板 repos 移除的檔案

為了保護使用者不受惡意行為者的侵害,Schematics 會從使用者複製的 Git 儲存庫中移除可能影響服務安全性或完整性的檔案。 其目的是保護使用者免於執行可能影響服務的未授權模組或執行。 包裝為壓縮檔的檔案,例如 zip,或 tar 檔案,會自動從使用者 repos 中排除。 tar 檔案內容不會被檢查。 同樣地,在模板 repos 中不支援 (允許) 使用高於 500KB 的檔案,典型的 IaC 配置檔案是 KB。

如果要使用檔案,可以在執行時匯入 Schematics 到 /tmp 或持久化到 /tmp/.schematics。 只有小於 10 MB 的檔案才會在作業執行之間持續儲存。

建立 Schematics 工作區或動作 IBM Cloud Schematics 會從 Git 儲存庫複製 Terraform 或 Ansible 範本的副本,並儲存在安全的位置。 在儲存範本檔案之前,Schematics 會分析內容,並移除視為惡意或有漏洞的檔案。 允許清單用於只允許已授權的檔案。 檔案移除是根據下列準則:

  • 容許的副檔名為 .cer, .cfg, .conf, .crt, .der, .gitignore, .html, .j2, .jacl, .js, .json, .key, .md, .netrc, .pem, .properties, .ps1, .pub, .py, .service, .sh, .tf, .tf.json, .tfvars, .tmpl, .tpl, .txt, .yaml, .yml, .zip, _rsa, license
  • 容許的影像副檔名為 .bmp, .gif, .jpeg, .jpg, .png, .so .tif, .tiff
  • 明確移除的檔案為 .asa, .asax, .exe, .php5, .pht, .phtml, .shtml, .swf, .tfstate, .tfstate.backup, .xap, .zip, .tar
  • 會移除所有大於 500 KB 的檔案。 此檔案限制不適用於容許的影像檔類型。
  • 若資料夾名稱以(句點)開頭,.,則視為惡意並將其移除。

在每個版本中,都會持續監視並更新容許的延伸清單。 您可以提出 支援問題單,並有理由將副檔名新增至清單。

Git repos 或 TGZ 檔案是否支援使用 Git 子模組?

只有複製的 Git 儲存庫才支援使用 Git 子模組。 當 Schematics 複製 Git 儲存庫時,會匯入 Git 子模組。 當 repos 以 TGZ 檔案形式上傳時,Schematics 不會使用 clone 作業,且 Git 子模組引用的檔案或資料夾不會包含在內。 使用 TGZ 檔案時,Git 子模組或 symlinks 所需的所有檔案都必須包含在 TGZ 中。

是否有速率限制?

IBM Cloud Schematics 支援每分鐘、每個地區及每個使用者 50 個 API 要求。 區域為 us-eastus-southeu-gbeu-de。 等待再次啟動指令。

為什麼工作會在執行佇列中等待?

IBM Cloud Schematics 會將所有使用者工作排入單一佇列。 根據使用者的工作量和執行工作的時間,使用者可能會遇到延遲。 如需相關資訊,請參閱 工作佇列狀態

如果使用用戶端 ID bx,如何產生 IAM 存取記號?

若要建立 IAM 存取記號,請使用 export IBMCLOUD_API_KEY=<ibmcloud_api_key> 並執行指令。

curl -X POST "https://iam.cloud.ibm.com/identity/token" -H "Content-Type: application/x-www-form-urlencoded" -d "grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=$IBMCLOUD_API_KEY" -u bx:bx.

如需相關資訊,請參閱 IAM 存取記號建立 API 金鑰。 您可以設定環境值 export ACCESS_TOKEN=<access_token>export REFRESH_TOKEN=<refresh_token>

克隆 Git 倉庫失敗時,可能找不到遠端參考或 heads 或 master,最有可能是傳入了無效的分支名稱,該如何糾正?

使用 https://github.com/guruprasad0110/tf_cloudless_sleepy_13/ 儲存庫的分支,在 2020 年 10 月 1 日之後,可以看到此錯誤訊息。

如果在 2020 年 10 月 1 日之後建立儲存庫,則主要分支語法必須是 https://github.com/username/reponame/tree/main。 例如: https://github.com/guruprasad0110/tf_cloudless_sleepy_13/tree/main

您可以增加 null-exec 和 remote-exec 資源的逾時時間嗎?

否,null-exec ( null_resources ) 和 remote-exec 資源的最大超時為 60 minutes。 需要將較長的工作分成較短的區塊,以更快速地佈建基礎架構。 否則,執行會在 60 minutes 之後自動逾時。

如何透過 Terraform 模組儲存使用者定義檔案,並在多個 Terraform 指令中使用?

IBM Cloud Schematics Schematics Schematics 會定期將狀態檔案儲存於安全位置。 此外,在執行 Schematics 任務或執行 Terraform 指令(如 plan, apply, destroy, refreshimport )之前,會自動還原狀態檔案。

同樣地,IBM Cloud Schematics 支援儲存 Terraform 範本或模組所產生之使用者定義檔的能力。Schematics 預期使用者定義的 Terraform 範本或模組會產生檔案並將檔案放置在預先定義的位置。Schematics 會在執行 Schematics 工作或 Terraform 指令之前及之後自動儲存並還原它們。

您的檔案必須放在 /tmp/.schematics 資料夾中,且限制設為 10 MB。Schematics 備份並還原 /tmp/.schematics 資料夾中的所有檔案。

如何識別將已刪除資源與 Terraform 狀態同步化的最佳方式?

目前,IBM Cloud Schematics 服務不支援將雲端資源狀態匯入或同步到 Schematics 工作區的功能。 它在未來的導覽圖中規劃。

我該如何克服超出任何區域中帳戶的群集資源配額「100」的請求?

Error: Request failed with status code: 403, ServerErrorResponse: {"incidentID":"706efb2c-3461-4b9d-a52c-038fda3929ea,706efb2c-3461-4b9d-a52c-038fda3929ea","code":"E60b6","description":"This request exceeds the 'Cluster' resource quota of '100' for the account in this region. Your account already has '100' of the resource in the region, and the request would add '1'. Revise your request, remove any unnecessary resources, or contact IBM support to increase your quota.","type":"General"}

當超出此區域中帳戶的 Cluster 資源配額 100 時,您會看到此配額驗證錯誤。 您可以考量刪除現有資源,然後重試執行作業。

在建立 Red Hat OpenShift 或 Kubernetes 資源時,我可以將 90 分鐘的時間調得更高嗎?

是,您可以增加 Red Hat OpenShift 或 Kubernetes 資源的逾時值。 如需詳細資訊,請參閱 ibm_container_vpc_cluster 提供下列 t 組態選項。

如何在驗證廣域型錄帳戶中的位置時更正「403 錯誤」?

您可以在帳戶的目錄設定中驗證建立或檢視資源的位置或存取權限。 如需詳細資訊,請參閱 管理全局目錄中的位置設定

我可以根據標籤並透過排程器或 Cron 工作來啟動或停止 Virtual Servers for VPC 嗎?

是,您可以使用 Cloud Functions 來設定受管理作業,例如根據標籤啟動、停止查詢,以及透過排程器或 Cron 工作來觸發 Schematics 動作。 如需詳細資訊,請參閱 VSI 作業與排程解決方案 GitHub 儲存庫。

我可以在現有工作者節點儲存區中建立工作者節點嗎?

是的,您可以透過 Schematics,在 Kubernetes 集群中使用 IBM container worker pool 資源,在現有的 worker 節點池中建立或新增一個 worker 節點。 或使用 IBM 儲存器工作者節點儲存區區域連接資源的 Terraform。 如需相關資訊,請參閱 ibm_container_worker_pool_zone_attachment

我可以在何處檢視 us-southus-easteu-gbeu-de 地區的公用及專用容許 IP 位址清單?

您可以檢視 Schematics 容許的 IP 位址us-southus-easteu-gbeu-de 地區的公用及專用容許 IP 位址清單。

我可以直接從服務儀表板手動新增或移除資源嗎?

使用 IBM Cloud Schematics 佈建資源時,資源的狀態會儲存在本端 IBM Cloud Schematics 狀態檔案中。 此狀態檔案是 IBM Cloud Schematics 的單一事實來源,可確定在 IBM Cloud 帳戶中佈建的資源。 若您未使用 IBM Cloud Schematics 手動新增資源,該資源將不會儲存於 IBM Cloud Schematics 狀態檔中,因此無法透過 IBM Cloud Schematics 進行管理。

當您手動移除使用 IBM Cloud Schematics 佈建的資源時,狀態檔不會自動更新,因此會變成不同步。 當您建立下一個 Terraform 執行計畫或套用新的範本版本時,Schematics 會驗證狀態檔中的雲端資源是否確實存在於您的 IBM Cloud 帳戶中,且其狀態是否與狀態檔中所記錄的狀態一致。 若未找到該資源,則會更新狀態檔,並修改 Terraform 的執行計畫。

為使您的 IBM Cloud Schematics 狀態檔案與帳戶中的雲端資源保持同步,請使用 IBM Cloud Schematics 來建立或移除資源。

我可以對我的資源進行哪些變更?

您可以透過 GitHub, 在 Terraform 範本中新增、修改或移除基礎架構程式碼,或從 Schematics 的工作區儀表板更新變數值。

如何將雲端資源的必要狀態與資源的實際狀態進行比較?

建立偏差報告,並檢視您在 Terraform 配置檔中指定的基礎架構與平台服務之間的變更。 您可以使用 Terraform 執行計劃。 Terraform 執行計劃彙總 Schematics 需要採取哪些動作來佈建 Terraform 配置檔中說明的雲端環境。 這些動作包括新增、修改或移除雲端資源。

無法偵測到的偏差有哪些?

  • Terraform 執行計劃基於您執行第一個 Schematics 套用動作時建立的 Terraform 狀態檔案
  • 您透過使用 Ansible 等自動化工具在其他 Schematics 工作區佈建的資源,或在沒有 Schematics 的情況下新增的 Chef,都不包含在 Terraform 執行計畫中。

如何使用 IBM Cloud Schematics移除資源?

您可以使用 IBM Cloud Schematics 控制台或命令列介面 (CLI),移除所有透過 Schematics 所配置的資源。 若要保持與 Terraform 範本同步,請確保從 Terraform 範本中移除相關聯的基礎架構程式碼。 如此一來,當您套用新版本的 Terraform 模版時,就不會再新增您的資源。

如果我選擇直接從資源儀表板刪除我的資源,會發生什麼情況?

當您手動移除使用 IBM Cloud Schematics 佈建的資源時,狀態檔不會自動更新,因此會變成不同步。 當您建立下一個 Terraform 執行計劃或套用新的範本版本時。 Schematics 會驗證您的 IBM Cloud 帳戶中是否存在狀態檔案中的雲端資源,以及所擷取的狀態。 若找不到該資源,則會更新狀態檔,並修改 Terraform 的執行計畫。

雖然在對您的雲端資源套用新變更之前,系統會先更新狀態檔案,但請勿手動從資源儀表板中移除資源,以免造成意料之外的結果。 請改為使用 IBM Cloud Schematics 主控台或 CLI 來移除資源,或者從 Terraform 範本中移除關聯的基礎架構程式碼。

Schematics 是否支援 ibmcloud terraform 指令?

從 CLI 版本 v1.8.0 使用 ibmcloud terraform 指令會將警告訊息顯示為 Alias Terraform are deprecated. Use schematics or sch in your commands。 如需相關資訊,請參閱 CLI 版本歷程

我可以透過 Schematics 存取私人網路嗎?

是,從 CLI 版本 v1.8.0 Schematics 支援專用 Schematics 端點來存取您的專用網路。 如需詳細資訊,請參閱 私人 Schematics 端點

透過 IBM Cloud Schematics連接至防禦主機 IP 位址時,如何解決錯誤訊息?

錯誤

timeout - last error: Error connecting to bastion: dial tcp
 2022/03/02 03:59:37 Terraform apply | 52.118.101.204:22: connect: connection timed out
 2022/03/02 03:59:37 Terraform apply |
 2022/03/02 03:59:37 Terraform apply | Error: file provisioner error

您可以使用私人或公共端點位址,存取 Schematics 工作區,並依區域或區域連線至 Bastion host IPs。 如需詳細資訊,請參閱 在防火牆中開啟 IBM Cloud Schematics 的 IP 位址

如何在 IBM Cloud 環境上使用 Terraform 來建立叢集?

請參閱 單一和多區域 Red Hat OpenShift on IBM Cloud 和 Kubernetes Service 叢集 教學。

我可以一律將 Terraform 設為使用現行或預設版本嗎?

是,在 payload 或 JSON 檔案中,如果 typetemplate_type 參數的值未在執行時宣告,則會考慮預設的 Terraform 版本。 如需相關資訊,請參閱 指定 Terraform 的版本限制。 您可以使用 typetemplate_type 參數,在有效負載中指定 Terraform 版本。 不過,請檢查 typetemplate_type 的版本值是否包含相同的版本。

如果我如程式碼區塊所示,在 JSON 檔案中設定 type: = terraform_v1.4,即使 Terraform version 2.0 或更高版本發行,Terraform version 1.4 是否仍會繼續使用?

    //Sample JSON file
    {
    "name": "<workspace_name>",
    "type": "terraform_v1.4",
    "resource_group": "<resource_group>",
    "location": "",
    "description": "<workspace_description>",
    "template_repo": {
    "url": "http://xxxxx.git",
    "branch": "main"
    },
    "template_data": [{
    "folder": "",
    "type": "terraform_v1.4"
    }]
    }

否,如果在有效負載或範本中指定 Terraform 版本,則在佈建期間只會考量 versions.tf 中指定的版本。 若要考量現行 Terraform 版本,您可以將 required_version 參數配置為 required_version = ">=1.4 <2.0"。 如需相關資訊,請參閱 Terraform 的版本限制

我可以在 version 參數中只指定提供者版本嗎? 還是必須在 versions.tf 檔案中提供 required_version 參數?

是,您需要指定 version = "x.x.x",因為它表示 IBM Cloud 提供者版本。 而 required_version = ">1.4, <2.0" 表示要佈建的 Terraform 版本。 如需相關資訊,請參閱 Terraform 的版本限制。 如果 versions.tf 檔中未宣告 version 參數,Schematics會自動使用提供者外掛程式的現行版本。 如需相關資訊,請參閱 Terraform 提供者的版本限制

在 Schematics 中,delete 和 destroy 有什麼不同?

毀損從工作區刪除相關聯的雲端資源。 刪除工作區是用來刪除工作區。 建議先從工作區中銷毀資源,然後再設定刪除工作區。 如需相關資訊,請參閱 刪除工作區

我可以作為一個步驟來刪除及銷毀作業嗎?

否,您無法在一個步驟中 刪除destroy 作業。 您需要遵循 處理程序,以先毀損,然後刪除。

何謂資源群組,以及如何協助我組織團隊?

指派特定 IBM Cloud 服務的存取權是容許使用者在您帳戶中使用特定服務的好方法。 不過,當您在雲端中建置正式作業工作負載時,很可能有多個不同團隊使用的 IBM Cloud 服務和資源。 使用資源群組,您可以組織帳戶中的多個服務,並在一個一般視圖及計費處理程序下組合它們。 若要容許您的團隊使用這些資源,您可以將 IAM 存取原則指派給資源群組,以容許他們檢視及管理資源群組內的資源。

例如,您具有負責管理 IBM Cloud Kubernetes Service 叢集的團隊 A,以及另一個使用 IBM Cloud® Functions開發無伺服器應用程式的團隊 B。 兩個團隊都使用 IBM Cloud Schematics 工作空間來管理雲端資源。 為了協助確保工作區和資源的隔離,您會為每個團隊建立一個資源群組。 然後,將必要許可權指派給每一個資源群組。 例如,對資源群組 A 中所有工作區的 管理員 服務存取角色,但對資源群組 B 中工作區的 讀者 存取權。

使用 IAM 存取群組有什麼好處?

為了減少指派給個別使用者的 IAM 存取政策的數量,您可以為每個團隊建立一個 IAM 存取群組,並授予該群組所有必要的權限,以便使用資源群組中的資源。

下圖顯示如何使用 IAM 存取群組和資源群組組織 IBM Cloud 帳戶中的權限。

<img src="../images/schematics-user-flow-rg.png" alt="Using resource groups and IAM access groups to organize access to IBM Cloud Schematics" width="900" style="width: 900px; border-style: none"/>
  1. 帳戶擁有者或授權管理者會定義團隊,並為每一個團隊建立 IAM 存取群組。
  2. IAM 存取群組會獲指派特定資源群組內資源的存取權。 例如,存取群組 A 會接收資源群組 A 中所有資源的編輯者許可權,但只會接收資源群組 B 中資源的檢視者許可權。
  3. 帳戶擁有者或授權管理者會將使用者新增至 IAM 存取群組。 所有使用者都會自動繼承 IAM 存取群組的許可權。

建立和限制細粒度和經典個人存取權限 (PAT) 的步驟是什麼?

啟動 GitHub API 並透過 HTTP 建立 Git 連線,以及建立快速腳本和測試整合 PAT。 如需相關資訊,請參閱 關於 PAT

GitHub 目前支援兩種個人存取權限,組織擁有者可以設定政策,限制個人存取權限對組織的存取:

  • 精細的個人存取記號
  • 個人存取記號 (典型)。 GitHub 建議您盡可能使用精細的個人存取記號,而非個人存取記號 (典型)。

以下是建立及限制 PAT 記號的步驟。

我可以透過 CLI 執行 terraform init -backend-config="KEY=VALUE" 選項嗎?

Schematics 不支援您編輯 Terraform 後端設定的 功能。內部管理的 Schematics 狀態檔,存放在自己的 bucket 中,使用 IBM Cloud Object Storage 信封 加密。

何時指定 GitHub 主要或子目錄分支?

建立工作區

在工作區建立頁面中,針對 Repository URL。 該鏈結可以指向 master 分支、其他任何分支或子目錄。 在工作區「設定」頁面上,輸入編輯圖示以編輯 Repository URL。 如需工作區建立的詳細資料,請參閱 建立工作區。 該鏈結可以指向 master 分支、其他任何分支或子目錄。 - master 分支的範例: https://github.com/myorg/myrepo - 其他分支的範例: https://github.com/myorg/myrepo/tree/mybranch - 子目錄的範例:https://github.com/mnorg/myrepo/tree/mybranch/mysubdirectory

不支援分支名稱包含 / (反斜線)。

動作建立

在操作建立頁面中,URL 可以指向 master 分支、任何其他分支或子目錄。 如果您的儲存庫儲存多個播放簿,請選擇要執行的播放簿。 Schematics 操作一次可以指向一本劇本。 有關使用動作的詳細資訊,請參閱 建立動作 執行多個播放簿,您必須為每個播放簿建立單獨的動作。 - master 分支的範例 - https://github.com/myorg/myrepo - 其他分支的範例 - https://github.com/myorg/myrepo/tree/mybranch - 子目錄範例 - https://github.com/mnorg/myrepo/tree/mybranch/mysubdirectory

沒有您可以使用的教戰手冊嗎? 請試用其中一個 範例教戰手冊

在工作區設定頁面中,輸入已編輯的圖示來編輯您的 Repository URL。 該鏈結可以指向 master 分支、其他任何分支或子目錄。 - master 分支的範例: https://github.com/myorg/myrepo - 其他分支的範例: https://github.com/myorg/myrepo/tree/mybranch - 子目錄的範例:https://github.com/mnorg/myrepo/tree/mybranch/mysubdirectory

您可以配置 Schematics API 呼叫的作用中嗎?

Schematics 外掛程式允許 您設定 Schematics API 呼叫的逾時至 30 seconds,透過 ibmcloud config --http-timeout 旗標。 例如,ibmcloud config --http-timeout=30。 HTTP 請求的預設值是 60 seconds

Schematics 是否支援區域存取?

是的,Schematics 支援基於區域的存取。 有關詳細信息,請參閱 基於區域的訪問 以及 設置基於區域的訪問以邀請用戶的 步驟。

Workspace and Action 是否支援 Secrets Manager?

是的,當您 建立工作區更新輸入變數 工作區時,工作區和動作支援 Secrets Manager。 您也可以在 建立播放簿編輯動作設定 時,設定 Secrets Manager。

您可以輸入個人存取權標,也可以使用 Secrets Manager,方法是使用 Open reference picker 來選擇您的 Secrets Manager key reference。 如需詳細資訊,請參閱 建立 Secrets Manager 範例。 Secrets Manager 的關鍵值在執行時會用來從 Git 儲存庫複製範本。

為什麼 evaluname 指令受到限制?

eval 指令會帶來安全漏洞,例如程式碼注入風險,而 uname 指令則會暴露系統資訊,讓攻擊者加以利用。

限制有助於在 Schematics 內維護安全的執行環境。

evaluname 指令限制對現有腳本和自動化有何影響?

如果您的腳本或自動化工作流程依賴 uname 指令,在 2025 年 4 月 16 日之後就會失敗。 對於 eval 指令,Schematics 允許執行安全的 eval 運算。 透過 eval 指令在指令碼或自動化流程中執行作業系統層級指令會受到限制。 您需要修改腳本,移除這些指令或以其他方法取代。

有哪些替代解決方案可以取代 evaluname 指令?

eval,而不是使用條件語句、參數替代或內建指令執行方法等更安全的替代方法來考慮指令。 取而代之, uname,使用 IBM Cloud 提供的預定義環境變數或系統元資料服務來擷取必要的系統資訊。 如果您有問題、意見或疑慮,可以隨時透過 IBM Cloud® 支援 與團隊聯絡。

使用 eval 指令的範例

command="ls -l /home/user"
eval $command

不含 eval 指令的範例

command="ls -l /home/user"
$command

evaluname 指令的變更會影響 Schematics 內的 Terraform 執行嗎?

除非您的腳本或模組明確使用 evaluname 等指令,否則 Terraform 的執行不會造成直接影響。 如果明確使用,則必須進行 修改

Schematics 支援哪些端點?

目前,Schematics 只支援 Classic Service Endpoints (CSE),有 publicprivate 兩種類型。 如果您嘗試 update, modify,或 manage IBM Cloud Kubernetes Service 或 Red Hat OpenShift 叢集,您需要使用 publicprivate CSE。

您可以在設定中設定 cluster_config_endpoint_type 值為 private。 如需詳細資訊,請參閱 端點參數

data "ibm_container_cluster_config" "cluster_foo" {
cluster_name_id = "FOO"
config_dir = "/home/foo_config"
admint = "true"
endpoint_type = "private"
}

目前,Schematics 不支援虛擬私人端點 (VPE)。 如果您選擇 endpoint_type 變數為 vpe, Schematics 工作會失敗。 或者,您需要在 IBM Cloud Kubernetes Service 或 Red Hat OpenShift 群集中部署 Schematics Agents,並使用 VPE 執行 Schematics 作業或任務。 如需詳細資訊,請參閱 Schematics Agents