簡介
本檔案將介紹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 欄位中填寫對應的資訊。對於生產環境,目前使用此資訊,如下圖所示:
步驟 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狀態。輸出應如下所示。