Introducción
Este documento describe el procedimiento para agregar, eliminar o modificar entradas /ETC/HOSTS en un Cisco Policy Suite (CPS).
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
Nota: Cisco recomienda que tenga acceso de privilegio a la raíz de CPS CLI.
Componentes Utilizados
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
- CPS 20.2
- MongoDB v3.6.17
- Unified Computing System (UCS)-B
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Antecedentes
Para enviar tráfico de red a un host, se debe conocer la dirección IP numérica para ese host. La dirección IP se escribe tradicionalmente como xxx.xxx.xxx.xxx, donde cada xxx representa un valor entre 0 y 255 para una dirección de red IPv4. Los ordenadores requieren estas direcciones, pero a los seres humanos les resulta difícil recordar los valores numéricos. En un sistema Linux, estos nombres legibles son convertidos a sus equivalentes numéricos de IP por la biblioteca Resolver, contenida en los archivos libresolsde.so que se proporcionan como parte del paquete glibc RPM. Los programas que necesitan buscar la dirección IP numérica para un problema de nombre llaman a esta biblioteca.
Los nombres de host y sus direcciones IP se pueden encontrar en varios lugares. Uno de ellos es el archivo /ETC/HOSTS.
El archivo /ETC/HOSTS contiene los nombres y direcciones de host IP para el host local y otros hosts en la red de Internet. Este archivo se utiliza para resolver un nombre en una dirección (es decir, para traducir un nombre de host a su dirección de 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 ~]#
Problema
Siempre que haya un requisito para agregar, eliminar o actualizar la información de los hosts o pares locales a CPS, los detalles del host deben ser agregados, eliminados o modificados en /ETC/HOSTS.
Procedimiento para agregar, eliminar o modificar entradas /ETC/HOSTS
1. Enfoque para CPS alojado en OpenStack.
Paso 1. Copia de seguridad de /ETC/HOSTS y otros archivos.
Ejecute estos comandos desde el Administrador de Cluster:
# 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
Paso 2. Verifique el estado del sistema.
Ejecute este comando desde el Administrador de clústeres:
#curl -s http://installer:8458/api/system
Expected Output:
{"state":"deployed"}
Paso 3. Copia de seguridad de la configuración de hosts adicionales actuales.
Ejecute este comando desde el Administrador de clústeres:
$ curl -k -X GET http://installer:8458/api/system/config/additional-hosts > /var/tmp/additional_hosts_$(date +%Y-%m-%d).yaml
Paso 4. Preparación del archivo yaml con detalles adicionales requeridos de los hosts.
Ejecute este comando desde el Administrador de clústeres:
# cp /var/tmp/additional_hosts_$(date +%Y-%m-%d).yaml /var/tmp/additional_hosts_new.yaml
Agregue, elimine o modifique la entrada en Additional_hosts_new.yaml.
Por ejemplo:
$ 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"
Paso 5. Ejecute el comando de llamada PUT API desde el Administrador del clúster para agregar los detalles de hosts requeridos en /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"
Nota: Este comando se debe ejecutar desde el mismo directorio donde se coloca el archivo extra_hosts_new.yaml.
Paso 6. Verificación de los detalles del host en glibc /ETC/HOSTS.
Ejecute este comando desde las máquinas virtuales (VM) Load Balancer (LB) y verifique los detalles del host.
#cat /etc/hosts
Paso 7. Reinicie todos los procesos Qns en ambos LB.
Ejecute este comando para reiniciar el proceso LB Qns.
Command Syntax:
#monit stop {Process Name}
#monit start {Process name}
Command example:
#monit stop qns-1
#monit start qns-1
2. Enfoque para CPS alojado en VMware.
Paso 1. Inicie sesión en Cluster Manager y agregue, elimine o modifique los detalles del host local en /var/qps/config/deploy/csv/Hosts.csv y los detalles del peer en /var/qps/config/deploy/csv/AdditionalHosts.csv respectivamente según los requerimientos.
Ejecute este comando para agregar, eliminar o modificar los detalles del host local en el archivo Hosts.csv.
#vi /var/qps/config/deploy/csv/Hosts.csv.
Ejecute este comando para agregar, eliminar o modificar detalles de peer en el archivo AdditionalHosts.csv.
#vi /var/qps/config/deploy/csv/AdditionalHosts.csv.
Paso 2. Ejecute este comando para importar la nueva configuración al Administrador de clústeres.
#/var/qps/install/current/scripts/import/import_deploy.sh
Paso 3. Ejecute este comando para verificar el cambio en el Cluster Manager /ETC/HOSTS.
#cat /etc/hosts
Paso 4. Ejecute este comando desde el Administrador de clústeres para reconstruir el paquete CPS.
[root@installer ~]# /var/qps/install/current/scripts/build_all.sh
Paso 5. Ejecute este comando para descargar todos los scripts Puppet, el software CPS, los archivos /ETC/HOSTS y actualice cada VM con el nuevo software del Cluster Manager.
[root@installer ~]# /var/qps/install/current/scripts/upgrade/reinit.sh
Paso 6. Ejecute este comando para verificar el cambio tanto en LB /ETC/HOSTS.
#cat /etc/hosts
Paso 7. Reinicie todos los procesos Qns en ambos LB.
Ejecute este comando para reiniciar el proceso LB Qns.
Command Syntax:
#monit stop {Process Name}
#monit start {Process name}
Command exampls:
#monit stop qns-1
#monit start qns-1