简介
本文档介绍在思科策略套件(CPS)中添加、删除或修改/ETC/HOSTS条目的过程。
先决条件
要求
Cisco 建议您了解以下主题:
注意:思科建议您必须拥有对CPS CLI的根访问权限。
使用的组件
本文档中的信息基于以下软件和硬件版本:
- CPS 20.2
- MongoDB v3.6.17
- 统一计算系统(UCS)-B
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
要向主机发送网络流量,必须知道该主机的数字IP地址。IP地址通常写作xxx.xxx.xxx.xxx,其中每个xxx代表IPv4网络地址的0到255的值。计算机需要这些地址,但人们发现很难记住数字值。在Linux系统中,这些可读名称由解析器库转换为其数字IP等效项,该库包含在作为glibc RPM软件包一部分提供的libresolve.so文件中。需要查找数字IP地址以查找此库的名称问题调用的程序。
主机名及其IP地址可在不同位置找到。其中一个是/ETC/HOSTS文件。
/ETC/HOSTS文件包含本地主机和Internet网络中其他主机的IP主机名和地址。此文件用于将名称解析为地址(即将主机名转换为其Internet地址)。
[root@installer ~]# cat /etc/hosts
127.0.0.1 localhost
#BEGIN_QPS_LOCAL_HOSTS
xxx.xxx.xxx.xxx lb01 dc1-lb01
xxx.xxx.xxx.xxx lb02 dc1-lb02
xxx.xxx.xxx.xxx sessionmgr01 dc1-sessionmgr01
xxx.xxx.xxx.xxx sessionmgr02 dc1-sessionmgr02
xxx.xxx.xxx.xxx qns01 dc1-qns01
xxx.xxx.xxx.xxx qns02 dc1-qns02
xxx.xxx.xxx.xxx pcrfclient01 dc1-pcrfclient01
xxx.xxx.xxx.xxx pcrfclient02 dc1-pcrfclient02
#END_QPS_LOCAL_HOSTS
#BEGIN_QPS_OTHER_HOSTS
xxx.xxx.xxx.xxx ntp-primary ntp
xxx.xxx.xxx.xxx ntp-secondary btp
xxx.xxx.xxx.xxx lbvip01 lbvip01
xxx.xxx.xxx.xxx lbvip02 lbvip02
xxx.xxx.xxx.xxx arbitervip arbitervip
#END_QPS_OTHER_HOSTS
xxx.xxx.xxx.xxx installer
[root@installer ~]#
问题
每当需要向CPS添加、删除或更新本地主机或对等体的信息时,必须将其主机详细信息添加、删除或修改到/ETC/HOSTS中。
添加、删除或修改/ETC/HOSTS条目的步骤
1.在OpenStack中托管的CPS方法。
步骤1.备份/ETC/HOSTS和其他文件。
从集群管理器运行以下命令:
# cp /etc/hosts /var/tmp/hosts_bkp_$(date +%Y-%m-%d)
# cp /var/qps/config/deploy/json/AdditionalHosts.js /var/tmp/AdditionalHosts.js_bkp
# cp /qsb_config/features/system/system.json /var/tmp/system.json_bkp
步骤2.检验系统状态。
从集群管理器运行以下命令:
#curl -s http://installer:8458/api/system
Expected Output:
{"state":"deployed"}
步骤3.备份当前其他主机配置。
从集群管理器运行以下命令:
$ curl -k -X GET http://installer:8458/api/system/config/additional-hosts > /var/tmp/additional_hosts_$(date +%Y-%m-%d).yaml
步骤4.准备包含所需其他主机详细信息的yaml文件。
从集群管理器运行以下命令:
# cp /var/tmp/additional_hosts_$(date +%Y-%m-%d).yaml /var/tmp/additional_hosts_new.yaml
添加、删除或修改additional_hosts_new.yaml中的条目。
例如:
$ vi /var/tmp/additional_hosts_new.yaml
---
- name: "ntp-primary"
ipAddress: "xxx.xxx.xxx.xxx"
alias: "ntp-primary"
- name: "ntp-secondary"
ipAddress: "xxx.xxx.xxx.xxx"
alias: "ntp-secondary"
- name: "corporate_nms_ip"
ipAddress: "xxx.xxx.xxx.xxx"
alias: "corporate_nms_ip"
- name: "corporate_syslog_ip"
ipAddress: "xxx.xxx.xxx.xxx"
alias: "corporate_syslog_ip"
步骤5.从集群管理器运行PUT API调用命令,以在/ETC/HOSTS中添加所需的主机详细信息。
curl -i -X PUT http://installer:8458/api/system/config/additional-hosts -H "Content-Type: application/yaml" --data-binary "@additional_hosts_new.yaml"
注意:此命令必须从放置additional_hosts_new.yaml文件的同一目录执行。
步骤6.验证glibc/ETC/HOSTS中的主机详细信息。
从两个负载均衡器(LB)虚拟机(VM)运行此命令并验证主机详细信息。
#cat /etc/hosts
步骤7.在两个LB上重新启动所有Qns进程。
运行此命令以重新启动LB Qns进程。
Command Syntax:
#monit stop {Process Name}
#monit start {Process name}
Command example:
#monit stop qns-1
#monit start qns-1
2. VMware中托管的CPS方法。
步骤1.登录Cluster Manager,并根据要求分别在/var/qps/config/deploy/csv/Hosts.csv和/var/qps/config/deploy/csv/AdditionalHosts.csv中添加、删除或修改本地主机详细信息,以及修改对等详细信息。
运行此命令以添加、删除或修改Hosts.csv文件中的本地主机详细信息。
#vi /var/qps/config/deploy/csv/Hosts.csv.
运行此命令以添加、删除或修改AdditionalHosts.csv文件中的对等体详细信息。
#vi /var/qps/config/deploy/csv/AdditionalHosts.csv.
步骤2.运行此命令将新配置导入集群管理器。
#/var/qps/install/current/scripts/import/import_deploy.sh
步骤3.运行此命令以验证Cluster Manager/ETC/HOSTS中的更改。
#cat /etc/hosts
步骤4.从集群管理器运行此命令以重建CPS包。
[root@installer ~]# /var/qps/install/current/scripts/build_all.sh
步骤5.运行此命令以下载所有Puppet脚本、CPS软件/ETC/HOSTS文件,并使用群集管理器中的新软件更新每个VM。
[root@installer ~]# /var/qps/install/current/scripts/upgrade/reinit.sh
步骤6.运行此命令以验证LB/ETC/HOSTS中的更改。
#cat /etc/hosts
步骤7.在两个LB上重新启动所有Qns进程。
运行此命令以重新启动LB Qns进程。
Command Syntax:
#monit stop {Process Name}
#monit start {Process name}
Command exampls:
#monit stop qns-1
#monit start qns-1