2022-01-20 05:52 PM 2022-01-20 05:55 PM 更新
Redundancy Configuration Manager(以下 RCM)は、Cisco 独自の Network Function で、5G ソリューションにおける StarOS ベースの UP/UPF に対して冗長機能を提供します。UP/UPF の冗長機能についてはレガシーな ICSR を利用した 1:1 の冗長モデルがありますが、RCM を使うと N:M の冗長モデルを実現できます。以下の図のように、1:1 の場合に比べて Standby ノードの数を減らせるので、より効率的にコンピュートリソースやラックスペースを活用できるというメリットがあります。
RCM は Kubernetes 上に Deploy される Cloud Native アプリケーションです。以下のコンポーネントが含まれます。
RCM Ops Center にアクセスして CLI を操作してみます。なお、本環境では RCM 21.24.1 build 81219 を使用しています。
RCM は Kubernetes 上に Deploy されていますので、kubectl コマンドで pod を確認します。
ubuntu@rcm-host:~$ kubectl get pod -n rcm
NAME READY STATUS RESTARTS AGE
documentation-f99b4b778-wcg5n 1/1 Running 0 38m
etcd-rcm-etcd-cluster-0 2/2 Running 0 35m
etcd-rcm-etcd-cluster-1 2/2 Running 0 35m
etcd-rcm-etcd-cluster-2 2/2 Running 0 35m
ops-center-rcm-ops-center-647cfc498f-5hzdm 5/5 Running 0 37m
rcm-bfdmgr-bdfc95d9b-lf22l 1/1 Running 0 35m
rcm-checkpointmgr-0 1/1 Running 0 35m
rcm-checkpointmgr-1 1/1 Running 0 35m
rcm-checkpointmgr-2 1/1 Running 0 35m
rcm-checkpointmgr-3 1/1 Running 0 35m
rcm-checkpointmgr-4 1/1 Running 0 34m
rcm-checkpointmgr-5 1/1 Running 0 34m
rcm-checkpointmgr-6 1/1 Running 0 34m
rcm-checkpointmgr-7 1/1 Running 0 34m
rcm-configmgr-866f995cbb-6rbm4 1/1 Running 0 35m
rcm-controller-878d58bf-v99cj 1/1 Running 0 35m
rcm-monitor-5758497b47-sjq7q 1/1 Running 0 35m
smart-agent-rcm-ops-center-7b4ccf9ccb-nslhg 1/1 Running 2 38m
Ops Center のアドレスを確認してログインします。
ubuntu@rcm-host:~$ kubectl get svc -n rcm | grep ops-center-rcm
ops-center-rcm-ops-center ClusterIP 10.43.187.239 <none> 8008/TCP,8080/TCP,2024/TCP,2022/TCP,7681/TCP 39m
ubuntu@rcm-host:~$ ssh admin@10.43.187.239 -p 2024
admin@10.43.187.239's password:
Welcome to the rcm CLI on unknown
Copyright © 2016-2020, Cisco Systems, Inc.
All rights reserved.
admin connected from 10.255.1.31 using ssh on ops-center-rcm-ops-center-647cfc498f-5hzdm
[unknown] rcm#
コンフィグは show running-config で確認できます。本環境では 2 Active + 1 Standby の構成になっています。
[unknown] rcm# show running-config
--- 省略 ---
k8 smf profile rcm-config-ep rcm-upfinfo group 1
host-id active Active1 management-ip 192.168.100.1
host-id active Active2 management-ip 192.168.100.2
host-id standby Standby1 management-ip 192.168.100.3
upf mgmt-ip 192.168.100.1
upf mgmt-ip 192.168.100.2
upf mgmt-ip 192.168.100.3
exit
k8 smf profile rcm-bfd-ep bfd-monitor group 1
endpoint ipv4 192.168.100.1
endpoint ipv4 192.168.100.2
endpoint ipv4 192.168.100.3
min-tx-int 100000
min-rx-int 100000
multiplier 10
standby 1
exit
RCM の show コマンドは以下のものがあります。
rcm show-statistics controller で状態を確認してみます。2つの UP が Active、1つの UP が Standby になっていることが分かります。
[unknown] rcm# rcm show-statistics controller
message :
{
"keepalive_version": "4b9e89215d8596e9a7c1253d3129907968089209df8558ef4cc9543df6873b59",
"keepalive_timeout": "2s",
"num_groups": 1,
"groups": [
{
"groupid": 1,
"endpoints_configured": 3,
"standby_configured": 1,
"pause_switchover": false,
"active": 2,
"standby": 1,
"endpoints": [
{
"endpoint": "192.168.100.1",
"bfd_status": "STATE_UP",
"upf_registered": true,
"upf_connected": true,
"upf_state_received": "UpfMsgState_Active",
"bfd_state": "BFDState_UP",
"upf_state": "UPFState_Active",
"route_modifier": 32,
"pool_received": true,
"echo_received": 183,
"management_ip": "192.168.100.1",
"host_id": "Active1",
"ssh_ip": ""
},
{
"endpoint": "192.168.100.2",
"bfd_status": "STATE_UP",
"upf_registered": true,
"upf_connected": true,
"upf_state_received": "UpfMsgState_Standby",
"bfd_state": "BFDState_UP",
"upf_state": "UPFState_Standby",
"route_modifier": 50,
"pool_received": false,
"echo_received": 182,
"management_ip": "192.168.100.2",
"host_id": "",
"ssh_ip": ""
},
{
"endpoint": "192.168.100.3",
"bfd_status": "STATE_UP",
"upf_registered": true,
"upf_connected": true,
"upf_state_received": "UpfMsgState_Active",
"bfd_state": "BFDState_UP",
"upf_state": "UPFState_Active",
"route_modifier": 32,
"pool_received": true,
"echo_received": 182,
"management_ip": "192.168.100.3",
"host_id": "Active2",
"ssh_ip": ""
}
]
}
]
}
以下のコマンドで RCM の状態を確認することができます。
[local]saegw-up1# show rcm info
Redundancy Configuration Module:
-------------------------------------------------------------------------------
Context: rcm
Bind Address: 192.168.100.1
Chassis State: Active
Session State: SockActive
Route-Modifier: 32
RCM Controller Address: 192.168.100.100
RCM Controller Port: 9200
RCM Controller Connection State: Connected
Ready To Connect: Yes
Management IP Address: 192.168.100.1
Host ID: Active1
SSH IP Address: (Deactivated)
SSH IP Installation: Enabled
ここで Standby UP のコンフィグを見てみます。
[local]saegw-up2# show rcm info
Redundancy Configuration Module:
-------------------------------------------------------------------------------
Context: rcm
Bind Address: 192.168.100.2
Chassis State: Standby
Session State: SockStandby
Route-Modifier: 50
RCM Controller Address: 192.168.100.100
RCM Controller Port: 9200
RCM Controller Connection State: Connected
Ready To Connect: Yes
Management IP Address: 192.168.100.2
Host ID:
SSH IP Address: (Deactivated)
SSH IP Installation: Enabled
[local]saegw-up2# show configuration
--- 省略 ---
gtpu-service sx-u1
bind ipv4-address 30.30.3.14
exit
gtpu-service sx-u2
bind ipv4-address 30.30.3.24
exit
sx-service sx-c-up1
instance-type userplane
bind ipv4-address 30.30.3.15
exit
sx-service sx-c-up2
instance-type userplane
bind ipv4-address 30.30.3.25
exit
複数のサービスが設定されていることが分かります。Standby UP は全ての Active UP のサービスが設定されています。スイッチオーバーが発生した際に切り替わりが発生する Active UP の設定だけ残して残りのサービス設定は削除されます。これは、スイッチオーバーの時間を短縮するための仕様です。
試しに Ops Center からマニュアルスイッチーバーを実施してみます。
[local]saegw-up1# show subscribers all
vvvvvv CALLID MSID USERNAME IP TIME-IDLE
------ -------- --------------- ---------------------- ----------------------------- ---------
y.C.AI 0098e4a9 123456123456792 - 11.11.0.55 00h00m00s
y.C.AI 0098e4aa 123456123456793 - 11.11.0.56 00h00m00s
y.C.AI 00e52fea 123456123456789 - 11.11.0.54 00h00m00s
現在 UP1 に 3 セッション存在しています。Ops Center で UP1 から UP2 にスイッチオーバーしてみます。
[unknown] rcm# rcm switchover-mgmt-ip source 192.168.100.1 destination 192.168.100.2
message :
{"message":"Switchover Triggered"}
UP2 を見てみると、Active に遷移しています。
[local]saegw-up2# show rcm info
Redundancy Configuration Module:
-------------------------------------------------------------------------------
Context: rcm
Bind Address: 192.168.100.2
Chassis State: Active
Session State: SockActive
Route-Modifier: 30
RCM Controller Address: 192.168.100.100
RCM Controller Port: 9200
RCM Controller Connection State: Connected
Ready To Connect: Yes
Management IP Address: 192.168.100.2
Host ID: Active1
SSH IP Address: (Deactivated)
SSH IP Installation: Enabled
セッションも引き継がれています。
[local]saegw-up2# show subscribers all
vvvvvv CALLID MSID USERNAME IP TIME-IDLE
------ -------- --------------- ---------------------- ----------------------------- ---------
y.C.AI 0098e4a9 123456123456792 - 11.11.0.55 00h00m01s
y.C.AI 0098e4aa 123456123456793 - 11.11.0.56 00h00m01s
y.C.AI 00e52fea 123456123456789 - 11.11.0.54 00h00m00s
不要な UP2 に関する設定は削除されています。
[local]saegw-up2# show configuration
--- 省略 ---
gtpu-service sx-u1
bind ipv4-address 30.30.3.14
exit
sx-service sx-c-up1
instance-type userplane
bind ipv4-address 30.30.3.15
exit
UP1 は Standby として起動してきました。
[local]qvpc-si# show rcm info
Redundancy Configuration Module:
-------------------------------------------------------------------------------
Context: rcm
Bind Address: 192.168.100.1
Chassis State: Standby
Session State: SockStandby
Route-Modifier: 50
RCM Controller Address: 192.168.100.100
RCM Controller Port: 9200
RCM Controller Connection State: Connected
Ready To Connect: Yes
Management IP Address: 192.168.100.1
Host ID:
SSH IP Address: (Deactivated)
SSH IP Installation: Enabled
5G NSA では RCM を VM として Deploy することができ、また 5G SA では SMI をベースとした Cloud Native 環境に Deploy することができます。上述のとおり、ユースケースによっては大きなメリットがありますので、検討してみてください。以下のドキュメントでさらに詳細を確認できます。
Redundancy Configuration Manager - Configuration and Administration
https://www.cisco.com/c/dam/en/us/td/docs/wireless/ucc/upf/2021-01/RCM/ucc-5g-rcm-config-and-admin-guide_2021-01.pdf
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします