目錄

簡介

背景資訊

CPAR VM例項部署過程

將RHEL影象上傳到水平線

建立新風格

建立主機聚合/可用性區域

啟動新例項

建立和分配浮動IP地址

啟用SSH

建立SSH會話

上傳CPAR軟體和許可證

上傳RHEL/CentOS映像

建立Yum儲存庫

安裝CPAR所需的RPM

核心升級到3.10.0-693.1.1.el7版本

設定網路引數

修改主機名

設定網路介面

安裝CPAR

設定SNMP

設定CPAR SNMP

設定OS SNMP

配置NTP

CPAR配置備份/恢復過程（可選）

從現有CPAR例項獲取CPAR配置備份檔案

在新VM/伺服器中恢復CPAR配置備份檔案

簡介

本檔案將介紹Cisco Prime Access Registrar(CPAR)身份驗證、授權和記帳(AAA)虛擬機器部署。 此過程適用於使用NEWTON版本的OpenStack環境，其中ESC不管理CPAR，並且CPAR直接安裝在OpenStack上部署的虛擬機器(VM)上。

作者：Karthikeyan Dachanamoorthy，思科高級服務。

背景資訊

Ultra-M是經過預先打包和驗證的虛擬化移動資料包核心解決方案，旨在簡化VNF的部署。 OpenStack是適用於Ultra-M的Virtualized Infrastructure Manager(VIM)，包含以下節點型別：

- 計算

- 對象儲存磁碟 — 計算（OSD — 計算）

- 控制器

- OpenStack平台 — 導向器(OSPD)

Ultra-M的高級體系結構及涉及的元件如下圖所示：

本文檔面向熟悉Cisco Ultra-M平台的思科人員，詳細說明了在OpenStack和Redhat作業系統上執行的步驟。

註：為定義本文檔中的過程，需要考慮Ultra M 5.1.x版本。

CPAR VM例項部署過程

登入到Horizon介面。

確保在開始VM例項部署過程之前獲得這些資訊。

- 安全外殼(SSH)與VM或伺服器的連線

- 更新主機名，且主機名應該與/etc/hosts中的主機名相同

- 該清單包括安裝CPAR GUI所需的RPM

步驟 1.從Horizon介面開啟任何Internet瀏覽器和相應的IP地址。

步驟 2.輸入正確的使用者憑據，然後按一下Connect按鈕。

將RHEL影象上傳到水平線

步驟 1.導航到內容儲存庫，然後下載名為rhel-image的檔案。這是用於CPAR AAA專案的自定義QCOW2 Red Hat映像。

步驟 2.返回Horizon頁籤，然後按照路由Admin > Images操作，如下圖所示。

步驟 3.按一下Create Image按鈕。 填寫標籤為Image Name 和Image Description 的檔案，選擇之前在步驟1下載的QCOW2檔案。通過在File 部分按一下Browse ，然後在Format部分選擇QCOW2-QUEMU Emulator 選項。

然後按一下「Create Image」，如下圖所示。

建立新風格

Flavors表示每個例項的體系結構中使用的資源模板。

步驟 1.在「Horizon」頂部選單中，導航到Admin > Flavors，如下圖所示。

圖4 「Horizon Flavors」部分。

步驟 2.按一下Create Flavor按鈕。

步驟 3.在建立風格視窗中，填寫相應的資源資訊。以下是CPAR口味的配置：

vCPUs 36

RAM (MB) 32768

Root Disk (GB) 150

Ephemeral Disk (GB) 0

Swap Disk (MB) 29696

RX/TX Factor 1

步驟 4.在同一視窗中，按一下Flavor Access，然後選擇將使用此風味配置的專案（即Core）。

步驟 5. 按一下Create Flavor。

建立主機聚合/可用性區域

步驟 1.在「Horizon」頂部選單中，導航到Admin > Host Aggregates，如下圖所示。

步驟 2.按一下Create Host Aggregate 按鈕。

步驟 3.在標籤Host Aggregate Information* 中，在Name 和Availability Zone 欄位中填寫對應的資訊。對於生產環境，目前使用此資訊，如下圖所示：

- 名稱：aaa

- 可用區：AZ-aaa

步驟 4.按一下Manage Hosts within Aggregate頁籤，然後為需要新增到新可用區域的主機按一下+ 按鈕。

步驟 5.最後，按一下Create Host Aggregate按鈕。

啟動新例項

步驟 1.在「水準」頂部選單中，導航到「專案」>「例項」，如下圖所示。

步驟 2.按一下Launch Instance按鈕。

步驟 3.在Details頁籤中，為新虛擬機器輸入正確的Instance Name，選擇對應的Availability Zone（即AZ-aaa），並將Count設定為1，如下圖所示。

步驟 4.按一下Source頁籤，然後選擇並執行下列步驟之一：

1.基於RHEL映像啟動例項。

按如下所示設定配置引數：

- 選擇引導源：映像

- 創建新卷：否

- 從Available 選單中選擇相應的影象（即redhat-image）

2.基於快照啟動例項。

按如下所示設定配置引數：

- 選擇引導源：例項快照

- 創建新卷：否

- 從「可用」選單中選擇相應的快照(即aaa09-snapshot-June292017)

步驟 5.按一下Flavor頁籤，然後選擇Create a New Flavor部分中建立的Flavor。

步驟 6.點選Networks頁籤，然後選擇將用於新例項/VM的每個乙太網介面的相應網路。此安裝程式當前正用於生產環境：

- eth0 = tb1-mgmt

- eth1 = diameter-routable1

- eth2 = radius-routable1

步驟 7.最後，按一下Launch Instance按鈕以開始部署新例項。

建立和分配浮動IP地址

浮動IP地址是可路由地址，這意味著可以從Ultra M/OpenStack架構的外部訪問，並且能夠與網路中的其他節點通訊。

步驟 1.在Horizon頂部選單中，導航到Admin > Floating IPs。

步驟 2.按一下Allocate IP to Project按鈕。

步驟 3.在「Allocate Floating IP」視窗中，選擇新浮動IP所屬的池、將分配它的Project以及新的Floating IP地址本身。

舉例來說：

步驟 4.按一下Allocate Floating IP 按鈕。

步驟 5.在「水準」頂部選單中，導航到「專案」>「例項」。

步驟 6.在「Action」列中，按一下Create Snapshot按鈕中指向下方的箭頭，此時將顯示一個選單。選擇關聯浮動IP選項。

步驟 7.在IP Address 欄位中選擇要使用的相應浮動IP地址，並從將在要關聯的埠中分配此浮動IP的新例項中選擇相應的管理介面(eth0)，如下圖所示。

步驟 8.最後，按一下Associate按鈕。

啟用SSH

步驟 1.在「水準」頂部選單中，導航到「專案」>「例項」。

步驟 2.按一下在啟動新例項一節中建立的例項/VM的名稱。

步驟 3.按一下Console頁籤。這將顯示VM的命令列介面。

步驟 4.顯示CLI後，輸入適當的登入憑證：

使用者名稱：xxxxx

密碼：xxxxx

步驟 5.在CLI中，輸入命令vi /etc/ssh/sshd_config以編輯SSH配置。

步驟 6.開啟SSH配置檔案後，按I以編輯該檔案。然後查詢此處顯示的部分，並將第一行從PasswordAuthentication no 更改為PasswordAuthentication yes。

步驟 7.按ESC並輸入:wq!以儲存sshd_config檔案更改。

步驟 8.執行命令service sshd restart。

步驟 9.為了測試已正確應用SSH配置更改，請開啟任何SSH客戶端，並嘗試與分配給例項的浮動IP（即10.145.0.249）和使用者root建立遠端安全連線。

建立SSH會話

使用將安裝應用程式的相應VM/伺服器的IP地址開啟SSH會話。

上傳CPAR軟體和許可證

步驟 1.從思科軟體平台下載相應的CPAR版本安裝指令碼(CSCOar-x.x.x.x-lnx26_64-install.sh):https://software.cisco.com/download/release.html?mdfid=286309432&flowid=&softwareid=284671441&release=7.2.2.3&relind=AVAILABLE&rellifecycle=&reltype=latest

步驟 2.將CSCOar-x.x.x.x-lnx26_64-install.sh檔案上載到VM/Server(位於/tmp目錄)。

步驟 3.將相應的許可證檔案上傳到/tmp目錄下的新VM/服務器。

上傳RHEL/CentOS映像

將相應的RHEL或CentOS .iso文件上載到VM/server/tmp目錄。

建立Yum儲存庫

Yum是一種Linux工具，幫助使用者安裝新的RPM及其所有依賴項。此工具用於安裝CPAR強制性RPM以及執行核心升級過程時。

步驟 1. 使用命令cd/mnt導航到/mnt目錄，然後建立一個名為disk1的新目錄，並執行mkdir disk1命令。

步驟 2.使用cd /tmp命令(該命令之前已上載了RHEL或CentOS .iso檔案)導航到/tmp目錄，並按照3.3節中提到的步驟操作。

步驟 3.使用命令mount -o loop <iso檔案的名稱> /mnt/disk1，將RHEL/CentOS映像裝載到在步驟1中建立的目錄中。

步驟 4.在/tmp中，使用命令mkdir repo建立一個名為repo的新目錄。然後，更改此目錄的許可權並執行命令chmod -R o-w+r repo。

步驟 5. 使用命令cd /mnt/disk1導航到RHEL/CentOS映像的Packages目錄（裝載在步驟3中）。使用命令cp -v * /tmp/repo將所有軟體包目錄檔案複製到/tmp/repo。

步驟 6.返回回回退目錄並執行cd /tmp/repo，然後使用以下命令：

rpm -Uhvdeltarpm-3.6-3.el7.x86_64.rpm

rpm-Uvh python-deltarpm-3.6-3.el7.x86_64.rpm

rpm -Uvh createrepo-0.9.9-26.el7.noarch.rpm

這些命令將安裝三個所需的RPM，以便安裝和使用Yum。前面提到的RPM版本可能不同，取決於RHEL/CentOS版本。如果其中任何RPM未包含在/Packages目錄中，請參閱https://rpmfind.net網站，可從該網站下載這些檔案。

步驟 7.使用createrepo /tmp/repo命令建立新的RPM資料檔案庫。

步驟 8. 使用命令cd /etc/yum.repos.d/導航到目錄/etc/yum.repos.d/。使用命令vi myrepo.repo建立一個名為myrepo.repo的新檔案，其中包含此檔案：

[local]

name=MyRepo

baseurl=file:///tmp/repo

enabled=1

gpgcheck=0

按I以啟用插入模式。若要儲存並關閉，請按Esc鍵，然後輸入「：wq！」，然後按Enter鍵。

安裝CPAR所需的RPM

步驟 1. 使用cd /tmp/repo命令導航到/tmp/repo目錄。

步驟 2.安裝CPAR所需的RPM並執行以下命令：

yum install bc-1.06.95-13.el7.x86_64.rpm

yum install jre-7u80-linux-x64.rpm

yum install sharutils-4.13.3-8.el7.x86_64.rpm

yum install unzip-6.0-16.el7.x86_64.rpm

註:RPM的版本可能不同，取決於RHEL/CentOS版本。如果這些RPM中的任一個RPM未包含在/Packages目錄中，請參閱https://rpmfind.net網站，您可以在該網站下載這些檔案。要下載Java SE 1.7 RPM，請參閱http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html並下載jre-7u80-linux-x64.rpm。

核心升級到3.10.0-693.1.1.el7版本

步驟 1. 使用命令cd /tmp/repo導航到/tmp/repo目錄。

步驟 2.安裝kernel-3.10.0-514.el7.x86_64 RPM並執行命令yum install kernel-3.10.0-693.1.1.el7.x86_64.rpm。

步驟 3.使用命令reboot重新啟動VM/伺服器。

步驟 4.電腦再次啟動後，驗證核心版本是否已更新，並執行uname -r命令。輸出應為3.10.0-693.1.1.el7.x86_64。

設定網路引數

修改主機名

步驟 1.以寫入模式開啟檔案/etc/hosts並執行vi /etc/hosts命令。

步驟 2.按I以啟用插入模式並寫入對應的主機網路資訊，然後遵循以下格式：

<Diameter interface IP>           <Host’s FQDN>            <VM/Server’s hostname>

例如：10.178.7.37 aaa07.aaa.epc.mnc30.mcc10.3gppnetwork.org aaa07

步驟 3.按ESC鍵儲存更改並關閉檔案，然後寫入「:wq！」並按Enter鍵。

步驟 4.執行命令hostnamectl set-hostname <Host's FQDN>。例如： hostnamectl set-hostname aaa.epc.mnc.mcc.3gppnetwork.org。

步驟 5.使用命令service network restart重新啟動網路服務。

步驟 6.驗證是否應用了主機名更改，並執行命令：hostname -a、hostname -f，這些命令應顯示VM/伺服器的主機名及其FQDN。

步驟 7.使用vi /etc/cloud/cloud_config命令開啟/etc/cloud/cloud_config，然後在「-update hostname」行前插入「#」。這是為了防止在重新啟動後更改主機名。檔案應如下所示：

設定網路介面

步驟 1. 使用cd /etc/sysconfig/network-scripts導航到目錄/etc/sysconfig/network-scripts。

步驟 2.使用命令vi ifcfg-eth0開啟ifcfg-eth0。這是管理介面；其配置應如下所示。

DEVICE="eth0"

BOOTPROTO="dhcp"

ONBOOT="yes"

TYPE="Ethernet"

USERCTL="yes"

PEERDNS="yes"

IPV6INIT="no"

PERSISTENT_DHCLIENT="1"

執行任何必需的修改，然後按ESC鍵儲存並關閉檔案，然後輸入:wq!。

步驟 3.使用命令vi ifcfg-eth1建立eth1網路配置檔案。這是直徑的介面。按I進入插入模式並輸入此配置。

DEVICE="eth1"

BOOTPROTO="none"

ONBOOT="yes"

TYPE="Ethernet"

USERCTL="yes"

PEERDNS="yes"

IPV6INIT="no"

IPADDR= <eth1 IP>

PREFIX=28

PERSISTENT_DHCLIENT="1"

修改<eth1 IP>以確定此例項對應的直徑IP。一旦一切就緒，儲存並關閉檔案。

步驟 4.使用commandvi ifcfg-eth2建立eth2網路配置檔案。這是radius interface。按I進入插入模式並輸入以下配置：

DEVICE="eth2"

BOOTPROTO="none"

ONBOOT="yes"

TYPE="Ethernet"

USERCTL="yes"

PEERDNS="yes"

IPV6INIT="no"

IPADDR= <eth2 IP>

PREFIX=28

PERSISTENT_DHCLIENT="1"

修改<eth2 IP>為此例項的對應radius' IP。一旦一切就緒，儲存並關閉檔案。

步驟 5.使用命令service network restart重新啟動網絡服務。使用命令ifconfig驗證是否已應用網路配置更改。根據每個網路介面的網路配置檔案(ifcfg-ethx)，每個網路介面都應有IP。如果eth1或eth2沒有自動引導，請執行命令ifup ethx。

安裝CPAR

步驟 1. 通過執行命令cd /tmp導航到/tmp目錄。

步驟 2.使用chmod 775 ./CSCOar-x.x.x.x.-lnx26_64-install.sh命令更改./CSCOar-x.x.x.x.-lnx26_64-install.sh檔案的許可權。

步驟 3.使用命令./CSCOar-x.x.x.x.-lnx26_64-install.sh啟動安裝指令碼。

步驟 4.對於「Where do you want to install <CSCOar>？（您要在何處安裝<CSCOar>？）」問題[/opt/CSCOar] [?,q]，按Enter選擇預設位置(/opt/CSCOar/)。

步驟 5.在FLEXlm許可證檔案位於何處？[] [?,q]提供許可證的位置，該位置應為/tmp。

步驟 6.對於問題J2RE安裝在何處？[] [?,q]輸入安裝Java的目錄。例如： /usr/java/jre1.8.0_144/。

驗證這是當前CPAR版本的相應Java版本。

步驟 7.由於此部署中未使用Oracle，因此按Enter可跳過Oracle輸入。

步驟 8.按Enter跳過SIGTRAN-M3UA功能。此部署不需要此功能。

步驟 9.對於問題，是否希望以非根使用者身份運行CPAR?[n]: [y，n，?,q]按Enter鍵，使用預設答案n。

步驟 10.對於問題，是否立即安裝示例配置？[n]: [y，n，?,q]按Enter鍵，使用預設答案n。

步驟 11.等待CPAR安裝過程完成，然後驗證所有CPAR進程是否正在運行。 導航到目錄/opt/CSCOar/bin，然後執行命令。/arstatus。輸出應如下所示：

設定SNMP

設定CPAR SNMP

步驟 1.使用命令/cisco-ar/ucd-snmp/share/snmp/snmpd.conf 開啟檔案snmpd.conf，以便包含所需的SNMP社群、陷阱社群和陷阱接收器IP地址：插入行trap2sink xxx.xxx.xxx.xxx cparaasnmp 162。

步驟 2.執行命令cd /opt/CSCOar/bin，然後使用命令./aregcmd登入到CPAR CLI並輸入管理員憑據。

步驟 3.移動到/Radius/Advanced/SNMP，然後發出命令set MasterAgentEnabled TRUE。使用save和quit CPAR CLI發出exit命令，儲存更改。

步驟 4.使用snmpwalk -v2c -c public 127.0.0.1 .1命令驗證CPAR OID是否可用。

如果作業系統無法識別snmpwalk命令，請導航到/tmp/repo並執行yum install net-snmp-libs-5.5-49.el6.x86_64.rpm。

設定OS SNMP

步驟 1.編輯檔案/etc/sysconfig/snmpd以指定作業系統SNMP監聽程式的埠50161，否則，將使用當前由CPAR SNMP代理使用的預設埠161。

步驟 2.使用命令service snmpd restart重新啟動SNMP服務。

步驟 3.通過發出命令snmpwalk -v2c -c public 127.0.0.1:50161.1驗證OS OID是否可以查詢。

配置NTP

步驟 1.驗證NTP RPM是否已安裝，請執行命令rpm -qa | grep ntp。輸出應如下所示。

如果未安裝RPM，請使用cd /tmp/repo導航到/tmp/repo目錄，然後執行以下命令：

yum install ntp-4.2.6p5-25.el7.centos.x86_64

yum install ntpdate-4.2.6p5-25.el7.centos.x86:64

步驟 2.使用命令vi /etc/ntp.conf開啟/etc/ntp.conf檔案，並為此VM/伺服器新增相應的NTP伺服器的IP。

步驟 3.關閉ntp.conf檔案，然後使用命令service ntpd restart重新啟動ntpd服務。

步驟 4.使用命令ntpq -p驗證VM/伺服器現在是否已連線到NTP伺服器。

CPAR配置備份/恢復過程（可選）

注意：僅當在此新VM/伺服器中複製現有CPAR配置時，才應執行此部分。此過程僅適用於源例項和目標例項中使用相同CPAR版本的情況。

從現有CPAR例項獲取CPAR配置備份檔案

步驟 1.開啟與相應的VM的新SSH會話，在該會話中使用根憑證獲取備份檔案。

步驟 2.使用命令cd /opt/CSCOar/bin 導航到目錄/opt/CSCOar/bin。

步驟 3.停止CPAR服務並執行命令。/arserver stop即可執行該操作。

步驟 4.使用命令./arstatus驗證CPAR服務是否已停止，並查詢消息Cisco Prime Access Registrar Server Agent not running。

步驟 5.要建立新備份，請執行命令。/mcdadmin -e /tmp/config.txt。當系統詢問時，輸入CPAR管理員憑據。

步驟 6. 使用命令cd /tmp導航到目錄/tmp。名為config.txt的檔案是此CPAR例項配置的備份。

步驟 7.將config.txt檔案上傳到要還原備份的新VM/伺服器。使用命令scp config.txt root@<new VM/Server IP>:/tmp。

步驟 8.使用命令cd /opt/CSCOar/bin 返回目錄/opt/CSCOar/bin ，然後使用命令./arserver start再次啟動CPAR。

在新VM/伺服器中恢復CPAR配置備份檔案

步驟 1.在新的VM/Server中，使用命令cd/tmp導航到目錄/tmp，並驗證是否存在config.txt檔案，該檔案已上載到步驟7。部分從現有CPAR例項獲取CPAR配置備份檔案。如果檔案不存在，請參閱該部分並驗證scp命令是否執行良好。

步驟 2. 使用命令cd /opt/CSCOar/bin 導航到/opt/CSCOar/bin 目錄，然後執行./arserver stop 命令關閉CPAR服務。

步驟 3.若要還原備份，請執行命令。/mcdadmin -coi /tmp/config.txt。

步驟 4.發出命令./arserver start重新開啟CPAR服務。

步驟 5.最後，使用命令./arstatus檢查CPAR狀態。輸出應如下所示。