19. 啟動根管理員叢集

預計完成時間:7 小時

可操作的元件擁有者:KUB/SERV/OBJ/FILE/PNET

技能設定檔:部署工程師

本指南會建立根管理員叢集,做為內部叢集和機構基礎架構叢集的控制層。

19.1. 設定轉送設定

確認在啟動程式伺服器安裝期間已新增靜態路徑。如果缺少靜態路徑,請將靜態路徑新增至啟動程式:

DATA_CIDR=$(kubectl get cidrclaim -n gpc-system instance-external-cidr -o jsonpath={.spec.ipv4Spec.staticCidrBlocks[0]})
DATA_GATEWAY=$(kubectl get subnetclaims -n root control-plane-subnet -o jsonpath={.status.ipv4SubnetStatus.gateway})
ip route replace ${DATA_CIDR} via ${DATA_GATEWAY}

這個路徑可讓您透過啟動程式的資料平面介面,存取根管理員叢集的 API 伺服器。如要進一步瞭解 GDC 中的 API 伺服器,請參閱「全球和區域 API 伺服器」。

19.2. 建立根管理員叢集

下列指令會建立具有三個控制層節點的根管理員叢集。預設的租戶模式為多租戶模式。

gdcloud system admin-cluster install -v=3 \
  --tenant-mode=multi \
  --root-admin-node-count=3 \
  --generate-admin-yaml \
  --addon-manager-manifests-set harbor.postgresqlHA.enabled=true \
  --addon-manager-manifests-set harbor.productionEnvironment.enabled=true \
  --addon-manager-manifests-set storage.mode=ontap \
  --addon-manager-manifests-set gpuFeature.enabled=true \
  --addon-manager-manifests-set rootAdmin.controller.adminLBPoolSize=23 \
  --addon-manager-manifests-set rootAdmin.controller.systemLBPoolSize=60 \
  --addon-manager-manifests-set network.noInternalSubnet=false \
  --addon-manager-manifests-set minStage=FEATURE_THRESHOLD

建立根管理員叢集時,需要叢集 CR 的設定檔。系統預設會自動產生設定。您也可以將 --generate-admin-yaml 標記設為 false,並指定 --admin-yaml-path 指向目標設定路徑,自訂叢集設定。

根管理員叢集安裝完成後,根管理員叢集的 kubeconfig 會儲存在 /root/release/root-admin/root-admin-kubeconfig 中。

叢集安裝完成後,系統會列印使用者管理員使用者介面 (UI) 的網址。請記下這個 ID,以供後續作業使用。您也可以使用下列指令擷取該值:

gdcloud system admin-cluster describe

19.3. 將元件部署至根管理員叢集

下列指令會將可運作的元件生命週期範本部署至根管理叢集。

gdcloud system component deploy --kubeconfig KUBECONFIG --names=* --pivot-from=/root/.kube/config

19.4. 為根管理員設定功能閘道

如果您的功能階段門檻與 production 不同,請按照 OOPS-P0072,更新功能閘道以符合門檻。

19.5. 在啟動程式上設定存根解析程式

使用下列指令在啟動程式上設定 DNS 存根解析程式。您必須使用這個存根解析器,才能存取控制台。

gdcloud system dns install

這項設定可確保所有機構的網域名稱都能從啟動程序解析,如下圖所示:

19.6. 設定 iLO IP 位址

下列步驟會將管理節點的 ILO IP 位址設為 static

  ADMIN_NODE=NODE NAME
  RACK=$(kubectl --kubeconfig KUBECONFIG get servers -n gpc-system $ADMIN_NODE -o jsonpath='{.metadata.labels.system\.private\.gdc\.goog/rack-name}')
  ILO_IP=$(kubectl --kubeconfig KUBECONFIG get servers -n gpc-system $ADMIN_NODE -o jsonpath='{.spec.bmc.ip}')
  ILO_GATEWAY=$(kubectl --kubeconfig KUBECONFIG get subnetclaims -n root $RACK-mgmtsw01-server-bmc-subnet -o jsonpath='{.status.ipv4SubnetStatus.gateway}')
  BMC_CREDS=$(kubectl --kubeconfig KUBECONFIG get servers -n gpc-system $ADMIN_NODE -o jsonpath='{.spec.bmc.credentialsRef.name}')
  ILO_USER=$(kubectl --kubeconfig KUBECONFIG get secrets -n gpc-system $BMC_CREDS -o jsonpath='{.data.username}' | base64 --decode)
  ILO_PASS=$(kubectl --kubeconfig KUBECONFIG get secrets -n gpc-system $BMC_CREDS -o jsonpath='{.data.password}' | base64 --decode)

  echo Target Server: $ADMIN_NODE
  echo ILO IP: $ILO_IP
  echo ILO Gateway: $ILO_GATEWAY
  echo ILO Username: $ILO_USER
  echo ILO Password: $ILO_PASS

根據叢集中的資訊,確認上述資訊是否正確。如果上述資訊正確無誤,請執行下列指令。

  1. 停用 DHCP。

    curl -k -u ${ILO_USER}:${ILO_PASS} -H "Content-Type: application/json" -H "OData-Version: 4.0" -X PATCH https://${ILO_IP}/redfish/v1/Managers/1/EthernetInterfaces/1 --data '{"DHCPv4": {"DHCPEnabled": false}}' | jq '.'
    

    預期結果:

    MessageId: iLO.2.15.ResetRequired

  2. 設定 IP 位址和閘道。

    curl -k -u ${ILO_USER}:${ILO_PASS} -H "Content-Type: application/json" -H "OData-Version: 4.0" -X PATCH https://${ILO_IP}/redfish/v1/Managers/1/EthernetInterfaces/1 --data '{"IPv4Addresses":[{"Address":"'${ILO_IP}'","Gateway":"'${ILO_GATEWAY}'","SubnetMask":"255.255.255.0"}],"IPv4StaticAddresses": [{"Address": "'${ILO_IP}'", "Gateway": "'${ILO_GATEWAY}'", "SubnetMask": "255.255.255.0"}]}' | jq .
    

    預期結果:

    MessageId: Base.1.4.Success

  3. 重設 iLO 管理員。

    curl -k -u ${ILO_USER}:${ILO_PASS}  -H "Content-Type: application/json" -H "OData-Version: 4.0" https://${ILO_IP}/redfish/v1/Managers/1/Actions/Manager.Reset --data '{"ResetType":"ForceRestart"}' -X POST | jq .
    

    預期結果:

    MessageId: iLO.2.15.ResetInProgress

  4. 確認已套用乙太網路設定。如果回應停滯,表示重設尚未完成,請取消目前的 curl 指令,然後等待 20 秒再試一次。

    curl --insecure -u ${ILO_USER}:${ILO_PASS} https://${ILO_IP}/redfish/v1/Managers/1/EthernetInterfaces/1 -X GET | jq .
    

確認每個步驟的 HTTP 回傳值是否符合預期結果,藉此驗證是否成功。

針對叢集中的所有根管理員節點,重複執行上述步驟。

19.7. 建立 OI 網路和 Google Distributed Cloud (GDC) 氣隙隔離連線

本節說明如何佈建設定檔,供 Operations Suite 基礎架構 (OI) 和 Distributed Cloud 網路建立連線。

這些步驟需要存取部分 Distributed Cloud 檔案,並連線至 Distributed Cloud 執行個體的根管理員叢集,才能擷取執行階段網路資訊。

19.7.1. 事前準備

在部署程序的這個階段,必須符合下列所有條件:

  1. 兩個 OIR 交換器都已接線、開機、升級至適當版本,並套用基本和 ACL 設定。

  2. 兩個 OIF 防火牆都已接上電纜、開機、升級至適當版本、啟用 FIPS-CC 模式,並套用基本設定。

  3. 如要完成整個 Distributed Cloud 連線佈建作業,Distributed Cloud 執行個體必須完成網路啟動程序,並從 kind 叢集移至根管理叢集。

19.7.2. 準備環境

請先收集下列資訊並設定環境變數,為後續步驟做好準備。

您可以透過本機或遠端連線兩種方式連線至 OI。 本機連線會使用同一資料中心機架間的光纖連線,直接將 OI 連線至 Distributed Cloud。遠端連線會使用長途傳輸連線至不同地點。這項規格可透過 interconnect.yaml 檔案提供,這是佈建 Distributed Cloud 互連設定的必要條件。這個檔案包含設定 GDC 互連所需的所有資訊。

19.7.2.1. 互連 YAML 規格

屬性
說明
範例
zones
[ ] map
OI 部署作業需要連線的 Distributed Cloud 儲存格相關資訊。

如要連線至 Distributed Cloud 儲存格清單,請指定 zones 清單,其中包含每個可用區中每個 Distributed Cloud 儲存格的資訊。
可用區選項
範例:
zones:
- zoneName: kb
- uplinkSpeed: 10
localInstanceIDs: 2

remoteInstanceIDs:
- 1
- cellCfg: path/to/cellcfg

- zoneName: ah
- uplinkSpeed: 100
localInstanceIDs: 3

- cellCfg: path/to/cellcfg

19.7.2.2. 可用區選項

interconnect.yaml 檔案中,攜帶 Distributed Cloud 儲存格的相關資訊:

屬性
說明
用量
zoneName
字串
OI 部署作業需要連線的 Distributed Cloud 儲存格縮寫。
zones:
- zoneName: kb
uplinkSpeed
uint32
(選用) 提供連線的上傳速度:(10100)。 值:10100
預設值:10

uplinkSpeed: 100
localInstance
int
OI 部署網站的 InstanceID (來自 ocit.yaml 檔案)。
本機連線會使用同一資料中心機架間的光纖連線,將 Operations Suite 基礎架構核心機架 (OIR) 站點直接連線至 Distributed Cloud。
zones:
- zoneName: kb
localInstanceIDs: 1
remoteInstance
[ ] int
InstanceID(s) 的 OI 部署網站 (來自 ocit.yaml 檔案
遠端連線會使用長途傳輸連線至不同地點或多個地點。 您可以提供 remoteInstance 值清單,以便為所有 OIR 網站產生設定,連線至指定的 Distributed Cloud 儲存格。
zones:
- zoneName: kb
remoteInstanceIDs:
- 1



zones:
- zoneName: kb
remoteInstanceIDs:
- 1

- 2

- 3



如果是本機連線,請將 interconnect.yaml 檔案設定為:

zones:
  - zoneName: ah
    uplinkSpeed: 100
    localInstanceID: 1
    cellCfg: /path/to/cellcfg

如果是遠端連線,請將 interconnect.yaml 檔案設定為:

zones:
  - zoneName: ah
    uplinkSpeed: 100
      remoteInstanceIDs:
      - 2
    cellCfg: /path/to/cellcfg

如果是多個網站的 OI 部署作業,請將 interconnect.yaml 檔案指定為:

zones:
  - zoneName: ah
    uplinkSpeed: 100
    localInstanceID: 1
    remoteInstanceIDs:
      - 2
    cellCfg: /path/to/cellcfg

19.7.3. 產生交換器設定

這些步驟會產生修補程式設定,以便套用至網路裝置,為 Distributed Cloud 佈建連線。

occonfigtool generate cell config -c /path/to/interconnect.yaml -o path/to/ocit.yaml

這會為每個網站產生下列設定檔:

設定檔 裝置 函式
occoresw101.incremental occoresw101 修補裝置的設定,以便連線至 Distributed Cloud 執行個體
occoresw101.acl occoresw101 設定修補 ACL,透過 Distributed Cloud 網路強制執行流量。
occoresw102.incremental occoresw102 修補裝置的設定,以便連線至 Distributed Cloud 執行個體
occoresw102.acl occoresw102 設定修補 ACL,透過 Distributed Cloud 網路強制執行流量。
ocsw101.incremental ocs1w01 修補裝置的設定,以便連線至 Distributed Cloud 執行個體
ocsw101.acl ocsw101 設定修補 ACL,透過 Distributed Cloud 網路強制執行流量。
ocsw102.incremental ocsw102 修補裝置的設定,以便連線至 Distributed Cloud 執行個體
ocsw102.acl ocsw102 設定修補 ACL,透過 Distributed Cloud 網路強制執行流量。

19.7.4. 產生防火牆政策

如要產生防火牆規則,occonfigtool 需要存取根管理員叢集的 Kubernetes API。確認 KUBECONFIG 環境變數已設為 root-admin-kubeconfig

export KUBECONFIG=/root/release/root-admin/root-admin-kubeconfig
export OCIT_CONFIG_FILE=/path/to/ocit.yaml

執行下列指令來產生防火牆規則:

occonfigtool generate fwrules -o ${OCIT_CONFIG_FILE:?}
設定檔 裝置 函式
firewall-rules.base occorefw01 修補裝置的設定,以便連線至 Distributed Cloud 執行個體

19.7.5. 套用設定

使用輸出檔案,以與上一步驟相同的程序,將設定套用至相應的網路裝置 (交換器防火牆)。

19.8. 更新 Distributed Cloud RoutePolicy 資源

Distributed Cloud 會使用路徑政策,強制規定允許通告至轉送表的網路。

將 OI 新增為外部網路時,我們需要更新 RoutePolicy CR,以預期新網路。

這需要使用 kubectl 存取 root-admin-cluster。確認已設定適當的 KUBECONFIG 變數:

export KUBECONFIG=/root/deploy/root-admin/root-admin-kubeconfig

如要確認,請執行下列操作:

kubectl get routepolicy -n gpc-system

您應該會看到下列或類似的輸出內容:

NAME                                     AGE
customerpeering-routepolicy              19d
datacenter-routepolicy                   19d
mgmtnetworkoperationcenter-routepolicy   19d
networkoperationcenter-routepolicy       19d

在這些步驟中,我們將著重於 networkoperationcenter-routepolicymgmtnetworkoperationcenter-routepolicy

19.8.1.1. 修補資料網路路由政策

ocinfo.opscenter.local.txt 擷取下列子網路 (包括網路和前置字元長度)。

  • OCCORE-SERVERS,在以下範例中用做 $OCCORE_SERVERS_NET
  • OC-WORKSTATIONS,在以下範例中用做 $OC_WORKSTATIONS_NET

填入下列變數,即可使用這些值調整路徑政策:

export OCCORE_SERVERS_NET=$OCCORE_SERVERS_NET
export OC_WORKSTATIONS_NET=$OC_WORKSTATIONS_NET

例如:

export OCCORE_SERVERS_NET=172.21.0.0/24
export OC_WORKSTATIONS_NET=172.21.32.0/24

設定環境變數後,請執行下列 kubectl 指令:

kubectl patch routepolicy/networkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OCCORE_SERVERS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

kubectl patch routepolicy/networkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OC_WORKSTATIONS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

輸出內容範例:

routepolicy.system.private.gdc.goog/networkoperationcenter-routepolicy patched

19.8.1.2. 修補程式管理網路路徑政策

ocinfo.opscenter.local.txt 擷取下列子網路 (包括網路和前置字元長度)。

這些檔案來自列出的網站。
  • OCCORE-JUMPHOSTS,在以下範例中用做 $OCCORE_JUMPHOSTS_NET
  • OCCORE-ILOS,在以下範例中用做 $OCCORE_ILOS_NET

填入下列變數,即可使用這些值調整路徑政策:

export OCCORE_JUMPHOSTS_NET=$OCCORE_JUMPHOSTS_NET
export OCCORE_ILOS_NET=$OCCORE_ILOS_NET

例如:

export OCCORE_JUMPHOSTS_NET=172.21.2.0/27
export OCCORE_ILOS_NET=172.21.2.32/27

設定環境變數後,請執行下列 kubectl 指令:

kubectl patch routepolicy/mgmtnetworkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OCCORE_JUMPHOSTS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

kubectl patch routepolicy/mgmtnetworkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OCCORE_ILOS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

輸出內容範例:

routepolicy.system.private.gdc.goog/mgmtnetworkoperationcenter-routepolicy patched

19.9. 驗證 OI Distributed Cloud 網路連線

在部署作業的此階段,必須符合下列條件:

  • occoresw101occoresw102 都使用 baseaclincrementalincremental-acl 設定檔重新設定。
  • ocsw101ocsw102 都使用 baseaclincrementalincremental-acl 設定檔進行設定。
  • occorefw101occoref102 都是透過 basefirewall-rules.base 設定檔設定。
  • 資料中心和營運中心之間的上行鏈路已連線並運作。
  • 驗證 Distributed Cloud 之間的實體上行連結

如果不符合上述任一條件,下列輸出內容可能會因目前狀態而有顯著差異,且可能無法在實際工作環境中產生預期行為。

19.9.1. 預期的輸出內容:

下列程式碼片段顯示已知良好環境中,下列指令的輸出內容:

  • show ip bgp summary vrf all
  • show ip bgp vrf all
  • show ip route vrf all
  • show lldp neighbors

這些程式碼片段可做為與正式環境比較的基準,只要使用相同指令即可。

19.9.2. 金鑰驗證

請在下列輸出內容中尋找以下重要事項:

  • 沒有任何 BGP 工作階段處於 IdleActiveClosing 狀態。
  • 所有 BGP 工作階段顯示的 State/PrxRcd 值都大於 0
  • 所有 BGP 工作階段都會顯示持續增加的 Up/Down 計時器。
  • Distributed Cloud externalCIDR 前置字元 (位於 CIQ 中) 會出現在 GDCH-DATAGDCH-DATA-TRANSITOC-WORKSTATIONSOCCORE-SERVERS VRF 的路由表和 BGP 表格中。
  • Distributed Cloud oobManagementCIDRs (位於 CIQ 中) 存在於 GDCH-MGMTGDCH-MGMT-TRANSITHW-INFRA VRF 的路由表和 BGP 表中。

19.9.3. OCCORESW

下表顯示每個 Distributed Cloud 互連的預期輸出內容。occore switch您必須先完成所有網路驗證,才能執行這個步驟。 本文討論的 BGP 鄰居和路徑,應與先前提及的 BGP 鄰居和路徑一併存在。 在所有交換器上驗證輸出內容。

VRF
BGP 相鄰路由器
預計從 BGP 鄰居收到的路徑
預期通告給 BGP 鄰居的路由
GDCH-DATA-TRANSIT AGGSW01
  • 使用子網路 /19 匯總 Distributed Cloud Cell 的摘要位址
  • OCCORE-SERVERS 前置字串
  • OC-WORKSTATION 前置字元
GDCH-DATA-TRANSIT AGGSW02
  • 使用子網路 /19 匯總 Distributed Cloud Cell 的摘要位址
  • OCCORE-SERVERS 前置字串
  • OC-WORKSTATION 前置字元
GDCH-DATA-TRANSIT 使用 OCCOREFW 至 OC-DATA VRF 的 HairPinned BGP 工作階段
  • Distributed Cloud Cell 的匯總摘要地址 (含子網路 /19)
OC-DATA OCSW01 BGP 工作階段
  • Distributed Cloud Cell 的匯總摘要地址 (含子網路 /19)
OC-DATA OCSW02 BGP 工作階段
  • Distributed Cloud Cell 的匯總摘要地址 (含子網路 /19)
OC-DATA OCCORESW BGP 工作階段
  • Distributed Cloud Cell 的匯總摘要地址 (含子網路 /19)
GDCH-MGMT-TRANSIT MGMTAGGSW01
  • 所有 GDCH OOB 管理網路的匯總摘要位址 (含子網路 /24)
  • OCCORE-JUMPHOSTS 前置字串
  • OCCORE-ILOS 前置字串
GDCH-MGMT-TRANSIT MGMTAGGSW02
  • 所有 Distributed Cloud OOB 管理網路的匯總摘要位址 (含子網路 /24)
  • OCCORE-JUMPHOSTS 前置字串
  • OCCORE-ILOS 前置字串
GDCH-MGMT-TRANSIT 使用 OCCOREFW 至 HW-INFRA VRF 的 HairPinned BGP 工作階段
  • 所有 Distributed Cloud OOB 管理網路的匯總摘要位址 (含子網路 /24)

19.9.4. OCSW

下表顯示執行 Distributed Cloud 互連程序後,每個 oc switch 的預期輸出內容。您必須先完成所有網路驗證,才能執行這個步驟。 本文討論的 BGP 鄰居和路徑,應與先前提及的 BGP 鄰居和路徑一併存在。 在所有交換器上驗證輸出內容。

VRF
BGP 相鄰路由器
預計從 BGP 鄰居收到的路徑
OC-DATA OCCORESW01 BGP 工作階段
  • GDCH 儲存格的匯總摘要地址 (含子網路 /19)
OC-DATA OCCORESW02 BGP 工作階段
  • GDCH 儲存格的匯總摘要地址 (含子網路 /19)

輸出指令程式碼片段位於「Distributed Cloud 驗證顯示指令」

19.9.5. 多個網站的 OI 部署驗證

以下各節詳細說明如何驗證多個互連 Distributed Cloud 儲存格的多站點部署作業。 此時,具有兩個網站的拓撲結構如下所示:

兩個 OC IT 網站透過 2 個 GDCH 儲存格互連

  • 藍色連線表示網站 1 已連線至 Distributed Cloud cell 01 和 cell 02。
  • 紅色連線表示網站 2 已連線至 Distributed Cloud cell 01 和 cell 02。
  • 綠色連線代表網站 1 和網站 2 之間的互連。

您必須為所有交換器上的所有網站完成這些章節列出的步驟

  1. 網路驗證
  2. 聯播網多網站驗證
  3. 網路 Distributed Cloud 驗證

19.10. 執行 OI 網路的最後步驟

在這個階段,所有設定都必須已產生並套用至所有裝置。

網路存取清單目前的狀態允許特定預期流程,但也有允許所有流量的預設規則。

您現在必須將部署作業交給營運團隊。Operational Suite 的功能、實作方式和服務因客戶而異。因此流量規定也不同。

作業團隊接受部署後,就必須處理 ACL,並充分確保網路流量安全。

我們提供作業 Runbook,協助您執行這些工作。

19.11. 升級物件儲存空間

在物件儲存空間啟動期間,節點安裝了最新支援的 StorageGRID 次要版本。不過,目標版本可能需要更新至最新的熱修補程式版本。

使用下列指令,從發布中繼資料判斷目標 StorageGRID 版本:

kubectl get releasemetadata -o jsonpath='{.items[0].spec.infraComponents.objectStorage.storageGridOSImageVersion}'

如果目前的 StorageGRID 版本不是目標版本,請使用目標版本執行物件儲存空間升級

19.12. 潛在問題

19.12.1. 儲存虛擬機器未完成調解

摘要:建立根管理員叢集時,儲存空間虛擬機器不會準備就緒。

問題:建立根管理員叢集後,Storage Virtual Machine 資源不會進行協調,並顯示類似下列內容的警告事件:

StorageVirtualMachine Reconcile error, retrying: SVM status update failed,
error: failed to get network interface info: Get
"https://172.22.147.128/api/network/ip/interfaces?fields=%2A%2A&max_records=4096&svm.name=root-admin":
EOF

儲存空間叢集設定錯誤,導致系統基於安全考量而禁止使用 SSL,可能會造成這個問題。

解決辦法

使用 SSH 連線至序列埠或儲存空間叢集,然後執行:

security ssl modify -server-enabled true -client-enabled true -vserver
CELL_ID-stge-clus-01

連線後,儲存空間虛擬機器資源就能進行協調。

19.12.2. 防火牆 TLS 伺服器憑證安裝失敗,導致啟動程序失敗

執行步驟 20 所述的根管理員控制平面啟動工作時,可能會遇到 TLSServerCertification 失敗。

解決辦法

如要重新嘗試安裝防火牆伺服器憑證,請參閱 IO 服務手冊 FW-R1008 中的操作說明。成功完成安裝後,請使用 gdcloud 指令搭配 --start-phase 指令,繼續進行根管理員啟動程序。