概要
このドキュメントでは、Cisco Policy Suite(CPS)で/ETC/HOSTSエントリを追加、削除、または変更する手順について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
注:シスコでは、CPS CLIへの特権Rootアクセス権が必要であることを推奨します。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- CPS 20.2
- MongoDB v3.6.17
- Unified Computing System(UCS)-B
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
ネットワークトラフィックをホストに送信するには、そのホストの数値IPアドレスを知っている必要があります。IPアドレスは、従来はxxx.xxx.xxx.xxxと表記されています。各xxxは、IPv4ネットワークアドレスの0 ~ 255の値を表します。コンピュータはこれらのアドレスを必要としますが、人間は数値を覚えるのが難しいと感じています。Linuxシステムでは、これらの読み取り可能な名前は、libresolve.soファイルに含まれているResolver Libraryによって数値のIPに変換されます。名前の数字のIPアドレスを検索する必要があるプログラムは、このライブラリへの呼び出しを発行します。
ホスト名とそのIPアドレスは、さまざまな場所で見つけることができます。そのうちの一つは/ETC/HOSTSファイルです。
/ETC/HOSTSファイルには、ローカルホストとインターネットネットワーク内の他のホストのIPホスト名とアドレスが含まれています。このファイルは、名前をアドレスに解決するために使用されます(つまり、ホスト名をインターネットアドレスに変換するために)。
[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およびその他のファイルのバックアップ。
Cluster Managerから次のコマンドを実行します。
# 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 callコマンドを実行し、必要なホストの詳細を/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:クラスタマネージャにログインし、要件に従って、ローカルホストの詳細を/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:このコマンドを実行して、新しい設定をCluster Managerにインポートします。
#/var/qps/install/current/scripts/import/import_deploy.sh
ステップ3:このコマンドを実行して、Cluster Manager/ETC/HOSTSの変更を確認します。
#cat /etc/hosts
ステップ4:Cluster Managerからこのコマンドを実行して、CPSパッケージを再構築します。
[root@installer ~]# /var/qps/install/current/scripts/build_all.sh
ステップ5:このコマンドを実行して、すべてのPuppetスクリプト、CPSソフトウェア、/ETC/HOSTSファイルをダウンロードし、Cluster Managerから各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