目錄

簡介

必要條件

需求

採用元件

背景資訊

什麼是SMI Cluster Manager?

什麼是Insight Server?

問題

維護程式

確定主機

從啟動伺服器確定群集詳細資訊

卸下虛擬驅動器以清除伺服器上的作業系統

運行群集同步

監視群集同步同步日誌

驗證

簡介

本文檔介紹從雲本地部署平台(CNDP)設定中的初始伺服器中恢復集群管理器的過程。

必要條件

需求

思科建議您瞭解以下主題：

- 思科使用者微服務基礎架構(SMI)

- 5G CNDP或SMI裸機(BM)架構

- 分散式複製區塊裝置(DRBD)

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- SMI 2020.02.2.35

- Kubernetes v1.21.0

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

背景資訊

什麼是SMI Cluster Manager?

集群管理器是一個雙節點保持連線的集群，用作控制平面和使用者平面集群部署的初始點。它運行一個單節點Kubernetes群集和一組POD，它們負責整個群集設定。只有主群集管理器處於活動狀態，輔助群集管理器僅在出現故障或因維護而手動關閉時進行接管。

什麼是Insight Server?

此節點執行作為基礎的群集管理器(CM)的生命週期管理，您可以在此處推送第0天配置。

此伺服器通常按區域部署或與頂層協調功能（例如NSO）位於同一資料中心，通常作為VM運行。

問題

群集管理器託管在帶有分散式複製塊裝置(DRBD)的2節點群集中，並保留為Cluster Manager主群集和Cluster Manager輔助群集。在這種情況下，在UCS中初始化/安裝作業系統時，Cluster Manager輔助伺服器會自動進入關閉狀態，這表示作業系統已損壞。

cloud-user@POD-NAME-cm-primary:~$ drbd-overview status

0:data/0 WFConnection Primary/Unknown UpToDate/DUnknown /mnt/stateful_partition ext4 568G 369G 170G 69%

維護程式

此過程有助於在CM伺服器上重新安裝作業系統。

確定主機

登入到Cluster-Manager並確定主機：

cloud-user@POD-NAME-cm-primary:~$ cat /etc/hosts | grep 'deployer-cm'

127.X.X.X POD-NAME-cm-primary POD-NAME-cm-primary

X.X.X.X POD-NAME-cm-primary

X.X.X.Y POD-NAME-cm-secondary

從啟動伺服器確定群集詳細資訊

登入到Insight伺服器並進入Deployer，然後從Cluster-Manager使用hosts-IP驗證群集名稱。

成功登入初始伺服器後，請登入運行中心，如下所示。

user@inception-server: ~$ ssh -p 2022 admin@localhost

從群集管理器SSH-IP中驗證群集名稱（ssh-ip =節點SSH IP地址= ucs-server cimc ip地址）。

[inception-server] SMI Cluster Deployer# show running-config clusters * nodes * k8s ssh-ip | select nodes * ssh-ip | select nodes * ucs-server cimc ip-address | tab

SSH

NAME             NAME          IP     SSH IP           IP ADDRESS

------------------------------------------------------------------------------

POD-NAME-deployer     cm-primary    -      X.X.X.X          10.X.X.X ---> Verify Name and SSH IP if Cluster is part of inception server SMI.

cm-secondary  -      X.X.X.Y          10.X.X.Y

檢查目標群集的配置。

[inception-server] SMI Cluster Deployer# show running-config clusters POD-NAME-deployer

卸下虛擬驅動器以清除伺服器上的作業系統

連線到受影響主機的CIMC，清除引導驅動器並刪除虛擬驅動器(VD)。

a) CIMC > Storage > Cisco 12G Modular Raid Controller > Storage Log > Clear Boot Drive

b) CIMC > Storage > Cisco 12G Modular Raid Controller > Virtual drive > Select the virtual drive > Delete Virtual Drive

運行群集同步

從初始伺服器運行Cluster-Manager的預設群集同步。

[inception-server] SMI Cluster Deployer# clusters POD-NAME-deployer actions sync run debug true

This will run sync. Are you sure? [no,yes] yes

message accepted

[inception-server] SMI Cluster Deployer#

如果預設群集同步失敗，請使用force-vm redeploy選項執行群集同步，以完成重新安裝（群集同步活動可能需要約45-55分鐘才能完成，具體取決於群集上託管的節點數）

[inception-server] SMI Cluster Deployer# clusters POD-NAME-deployer actions sync run debug true force-vm-redeploy true

This will run sync. Are you sure? [no,yes] yes

message accepted

[inception-server] SMI Cluster Deployer#

監視群集同步同步日誌

[inception-server] SMI Cluster Deployer# monitor sync-logs POD-NAME-deployer

2023-02-23 10:15:07.548 DEBUG cluster_sync.POD-NAME: Cluster name: POD-NAME

2023-02-23 10:15:07.548 DEBUG cluster_sync.POD-NAME: Force VM Redeploy: true

2023-02-23 10:15:07.549 DEBUG cluster_sync.POD-NAME: Force partition Redeploy: false

2023-02-23 10:15:07.549 DEBUG cluster_sync.POD-NAME: reset_k8s_nodes: false

2023-02-23 10:15:07.549 DEBUG cluster_sync.POD-NAME: purge_data_disks: false

2023-02-23 10:15:07.549 DEBUG cluster_sync.POD-NAME: upgrade_strategy: auto

2023-02-23 10:15:07.549 DEBUG cluster_sync.POD-NAME: sync_phase: all

2023-02-23 10:15:07.549 DEBUG cluster_sync.POD-NAME: debug: true

...

...

...

伺服器通過成功的群集同步重新調配和安裝。

PLAY RECAP *********************************************************************

cm-primary :   ok=535 changed=250 unreachable=0 failed=0 skipped=832 rescued=0 ignored=0

cm-secondary : ok=299 changed=166 unreachable=0 failed=0 skipped=627 rescued=0 ignored=0

localhost :    ok=59  changed=8   unreachable=0 failed=0 skipped=18  rescued=0 ignored=0

Thursday 23 February 2023 13:17:24 +0000 (0:00:00.109) 0:56:20.544 *****. ---> ~56 mins to complete cluster sync

===============================================================================

2023-02-23 13:17:24.539 DEBUG cluster_sync.POD-NAME: Cluster sync successful

2023-02-23 13:17:24.546 DEBUG cluster_sync.POD-NAME: Ansible sync done

2023-02-23 13:17:24.546 INFO cluster_sync.POD-NAME: _sync finished. Opening lock

驗證

檢查受影響的Cluster Manager是否可訪問，以及主群集管理器和輔助群集管理器的DRBD概述處於UpToDate狀態。

cloud-user@POD-NAME-cm-primary:~$ ping X.X.X.Y

PING X.X.X.Y (X.X.X.Y) 56(84) bytes of data.

64 bytes from X.X.X.Y: icmp_seq=1 ttl=64 time=0.221 ms

64 bytes from X.X.X.Y: icmp_seq=2 ttl=64 time=0.165 ms

64 bytes from X.X.X.Y: icmp_seq=3 ttl=64 time=0.151 ms

64 bytes from X.X.X.Y: icmp_seq=4 ttl=64 time=0.154 ms

64 bytes from X.X.X.Y: icmp_seq=5 ttl=64 time=0.172 ms

64 bytes from X.X.X.Y: icmp_seq=6 ttl=64 time=0.165 ms

64 bytes from X.X.X.Y: icmp_seq=7 ttl=64 time=0.174 ms

--- X.X.X.Y ping statistics ---

7 packets transmitted, 7 received, 0% packet loss, time 6150ms

rtt min/avg/max/mdev = 0.151/0.171/0.221/0.026 ms

cloud-user@POD-NAME-cm-primary:~$ drbd-overview status

0:data/0 Connected Primary/Secondary UpToDate/UpToDate /mnt/stateful_partition ext4 568G 17G 523G 4%

受影響的群集管理器已安裝，並且已成功重新調配到網路。

2.2從群集管理器SSH-IP驗證群集名稱。

[presence-server] SMI Cluster Deployer# show running-config clusters *節點* k8s ssh-ip | 選擇節點* ssh-ip | select nodes * ucs-server cimc ip-address | 頁籤

SSH

名稱名稱IP SSH IP IP地址

------------------------------------------------------------------------------

POD-NAME cm-primary - 192.X.X.X 10.192.X.X

cm-secondary - 192.X.X.Y 10.192.X.Y

*SSH IP =節點SSH IP

*IP ADDRESS = ucs-server cimc ip-address

2.3檢查目標群集的配置。

[presence-server] SMI Cluster Deployer# show running-config clusters POD-NAME登入到Presence伺服器並進入Deployer，然後從Cluster-Manager使用hosts-IP驗證cluster-name。 登入到Insight伺服器並進入Deployer，然後從Cluster-Manager使用hosts-IP驗證cluster-name。