時刻同期と NTP
シスコ アプリケーション セントリック インフラストラクチャ(ACI)ファブリックにおいて、時刻の同期は、モニタリング、運用、トラブルシューティングなどの多数のタスクが依存している重要な機能です。クロック同期は、トラフィック フローの適切な分析にとって重要であり、複数のファブリック ノード間でデバッグとフォールトのタイム スタンプを関連付けるためにも重要です。
1 つ以上のデバイスでオフセットが生じると、多くの一般的な運用問題を適切に診断して解決する機能がブロックされる可能性があります。また、クロック同期によって、アプリケーションのヘルススコアが依存している ACI の内蔵アトミック カウンタ機能をフル活用できます。時刻同期が存在しない場合や不適切に設定されている場合でも、エラーやヘルススコアの低下が引き起こされるわけではありません。これらの機能を適切に使用できるように、ファブリックやアプリケーションを完全に展開する前に、時刻同期を設定する必要があります。デバイスのクロックを同期させる最も一般的な方法は、ネットワーク タイム プロトコル(NTP)を使用することです。
NTP を 設定する前に、どの管理 IP アドレス スキームを ACI ファブリックに配置するかを検討してください。すべての ACI ノードと Application Policy Infrastructure Controller(APIC)の管理を設定するために、インバンド管理とアウトオブバンド管理の 2 つのオプションがあります。ファブリックに対して選択した管理オプションに応じて、NTP の設定が異なります。時刻同期の展開に関するもう 1 つの考慮事項は、時刻源の場所です。プライベート内部時刻または外部パブリック時刻の使用を決定する際は、時刻源の信頼性について慎重に検討する必要があります。
インバンドおよびアウトオブバンドの管理 NTP
(注) |
インバンド管理アクセスおよびアウトオブバンド管理アクセスについては、本書の「管理アクセスの追加」という項を参照してください。 |
-
アウトオブバンド管理 NTP:ACI ファブリックをアウトオブバンド管理とともに展開する場合、ファブリックの各ノードは、スパイン、リーフ、および APIC クラスタの全メンバーを含めて、ACI ファブリックの外部から管理されます。この IP 到達可能性を活用することで、各ノードは一貫した時刻源として同じ NTP サーバに個々に照会することができます。NTP を設定するには、アウトオブバンド管理のエンドポイント グループを参照する日付時刻ポリシーを作成する必要があります。日付時刻ポリシーは 1 つのポッドに限定され、ACI ファブリック内のプロビジョニングされたすべてのポッドに展開する必要があります。
-
インバンド管理 NTP:ACI ファブリックをインバンド管理とともに展開する場合は、ACI のインバンド管理ネットワーク内から NTP サーバへの到達可能性を検討します。ACI ファブリック内で使用されるインバンド IP アドレッシングには、ファブリックの外部から到達できません。インバンド管理されているファブリックの外部の NTP サーバを使用するには、その通信を可能にするポリシーを作成します。 インバンド管理ポリシーの設定に使用される手順は、アウトオブバンド管理ポリシーの確立に使用される手順と同じです。違いは、ファブリックによる NTP サーバへの接続を許可する方法です。
NTP over IPv6
NTP over IPv6 アドレスは、ホスト名とピア アドレスでサポートされます。gai.conf も、IPv4 アドレスのプロバイダーまたはピアの IPv6 アドレスが優先されるように設定できます。ユーザは、IP アドレス(インストールまたは優先順位よって IPv4、IPv6、または両方)を提供することによって解決できるホスト名を設定できます。
GUI を使用した NTP の設定
手順
ステップ 1 |
メニュー バーで、 を選択します。 |
ステップ 2 |
[Navigation] ペインで、 の順に選択します。 |
ステップ 3 |
[Work] ペインで、 の順に選択します。 |
ステップ 4 |
[Create Date and Time Policy] ダイアログボックスで、次の操作を実行します。 作成するプロバイダーごとに、この手順を繰り返します。 |
ステップ 5 |
[Navigation] ペインで、 の順に選択します。 |
ステップ 6 |
[Work] ペインで、 の順に選択します。 |
ステップ 7 |
[Create Pod Policy Group] ダイアログボックスで、次の操作を実行します。 |
ステップ 8 |
[Navigation] ペインで、 の順に選択します。 |
ステップ 9 |
[Work] ペインで、目的のポッド セレクタ名をダブルクリックします。 |
ステップ 10 |
[Properties] 領域の [Fabric Policy Group] ドロップダウン リストから、作成したポッド ポリシー グループを選択します。[送信(Submit)] をクリックします。 |
NX-OS スタイルの CLI を使用した NTP の設定
ACI ファブリックをアウトオブバンド管理で展開する場合、ファブリックの各ノードは ACI ファブリックの外部から管理されます。アウトオブバンド管理の NTP サーバを設定すると、各ノードは一貫したクロック ソースとして同じ NTP サーバに個々に照会することができます。
手順
ステップ 1 |
configure コンフィギュレーション モードに入ります。 例:
|
ステップ 2 |
template ntp-fabric ntp-fabric-template-name ファブリックの NTP テンプレート (ポリシー) を指定します。 例:
|
ステップ 3 |
[no] server dns-name-or-ipaddress [prefer] [use-vrf {inband-mgmt | oob-default }] [ key key-value] アクティブ NTP ポリシーの NTP サーバを設定します。このサーバをアクティブ NTP ポリシーの優先サーバにするには、prefer キーワードを含めます。NTP 認証が有効になっている場合は、参照キー ID を指定します。To specify the in-band or out-of-band management access VRF, include the use-vrf keyword with the inb-default or oob-default keyword. 例:
|
ステップ 4 |
[no] authenticate NTP 認証を有効または無効にします。 例:
|
ステップ 5 |
[no] authentication-key key-value 認証 NTP 認証を設定します。指定できる範囲は 1 ~ 65535 です。 例:
|
ステップ 6 |
[no] trusted-key key-value 信頼 NTP 認証を設定します。指定できる範囲は 1 ~ 65535 です。 例:
|
ステップ 7 |
exit グローバル コンフィギュレーション モードに戻ります。 例:
|
ステップ 8 |
template pod-group pod-group-template-name ポッドグループ テンプレート(ポリシー)を設定します。 例:
|
ステップ 9 |
inherit ntp-fabric ntp-fabric-template-name 事前に設定した NTP ファブリック テンプレート (ポリシー) を使用するように NTP ファブリックのポッドグループを設定します。 例:
|
ステップ 10 |
exit グローバル コンフィギュレーション モードに戻ります。 例:
|
ステップ 11 |
pod-profile pod-profile-name ポッド プロファイルを設定します。 例:
|
ステップ 12 |
pods {pod-range-1-255 | all } 一連のポッドを設定します。 例:
|
ステップ 13 |
inherit pod-group pod-group-name 事前に設定したポッド グループにポッドプロファイルを関連付けます。 例:
|
ステップ 14 |
end EXEC モードに戻ります。 例:
|
例
次に、優先アウトオブバンド NTP サーバを設定し、その設定および展開を確認する例を示します。
apic1# configure t
apic1(config)# template ntp-fabric pol1
apic1(config-template-ntp-fabric)# server 192.0.20.123 use-vrf oob-default
apic1(config-template-ntp-fabric)# no authenticate
apic1(config-template-ntp-fabric)# authentication-key 12345 md5 abcdef1235
apic1(config-template-ntp-fabric)# trusted-key 12345
apic1(config-template-ntp-fabric)# exit
apic1(config)# template pod-group allPods
apic1(config-pod-group)# inherit ntp-fabric pol1
apic1(config-pod-group)# exit
apic1(config)# pod-profile all
apic1(config-pod-profile)# pods all
apic1(config-pod-profile-pods)# inherit pod-group allPods
apic1(config-pod-profile-pods)# end
apic1#
apic1# show ntpq
nodeid remote refid st t when poll reach delay offset jitter
------ - ------------ ------ ---- -- ----- ----- ----- ------ ------ ------
1 * 192.0.20.123 .GPS. u 27 64 377 76.427 0.087 0.067
2 * 192.0.20.123 .GPS. u 3 64 377 75.932 0.001 0.021
3 * 192.0.20.123 .GPS. u 3 64 377 75.932 0.001 0.021
REST API を使用した NTP の設定
手順
ステップ 1 |
NTP を設定します。 例:
|
ステップ 2 |
デフォルトの日付と時刻のポリシーをポッド ポリシー グループに追加します。 例:
|
ステップ 3 |
ポッド ポリシー グループをデフォルトのポッド プロファイルに追加します。 例:
|
GUI を使用した NTP の動作の確認
手順
ステップ 1 |
メニュー バーで、 を選択します。 |
ステップ 2 |
[Navigation] ペインで、 の順に選択します。 ntp_policy は前に作成したポリシーです。[Host Name] フィールドまたは [IP address] フィールドでは IPv6 アドレスがサポートされます。入力したホスト名に IPv6 アドレスが設定されている場合、IPv6 アドレスが IPv4 アドレスより優先されるように実装する必要があります。 |
ステップ 3 |
[Work] ペインで、サーバの詳細を確認します。 |
NX-OS スタイルの CLI を使用した、各ノードに導入された NTP ポリシーの確認
手順
ステップ 1 |
SSH プロトコルを使用して、ファブリック内の APIC コントローラにログオンします。 |
ステップ 2 |
次に示すように、ノードに接続して NTP ピアのステータスを確認します。
|
ステップ 3 |
ファブリック内のさまざまなノードに対して、ステップ 2 を繰り返します。 |
NTP サーバー
NTP サーバ機能は、クライアントのスイッチも NTPサーバとして動作して、下流のクライアントに NTP の時間情報を提供できるようにします。NTP サーバを有効にすると、スイッチ上の NTP デーモンは、NTP クライアントからのすべてのユニキャスト (IPv4 または IPv6) リクエストに対し、が時間情報によって応答します。NTP サーバの実装は、NTP RFCv3 に準拠しています。NTP RFC に従い、サーバはクライアントに関連する状態情報は維持しません。
-
NTP サーバは、NTP クライアント リクエストを処理するスイッチのインバンド/アウトオブバンド管理 IP を有効にします。
-
NTP サーでは、既存の NTP クライアント機能のように、インバンド/アウトオブバンド管理 VRF でのみ動作します。
-
NTP サーバは、両方の管理 VRF で着信 NTP 要求に応答し、同じ VRF を使用して応答します。
-
NTP サーバはIPv4 と IPv6 の両方をポートします。
-
スイッチは、IPv4 クライアントとして同期して IPv6 サーバとして動作すること、およびその逆が可能です。
-
スイッチは、アウトオブバンド管理 VRF 経由で NTP クライアントとして同期し、インバンド管理 VRF 経由でサーバとして動作すること、およびその逆が可能です。
-
追加契約または IP テーブルの設定は必要ありません。
-
スイッチは上流のサーバと同期すると、サーバとして時間情報をストラタム番号とともに送信します。この番号はシステムのピアのストラタム番号から 1 増えたものになります。
-
スイッチ クロックが非統制 (アップストリーム サーバに同期されていない) の場合、サーバはストラタム 16 で時間情報を送信します。クライアントはこのサーバには同期できません。
デフォルトでは、NTP サーバ 機能は無効になっています。これはポリシーの設定によって明示的に有効にする必要があります。
(注) |
クライアントは、リーフのインバンド、アウトオブ バンドの IP を NTP サーバ IP として使用できます。クライアントはまた、NTPサーバ IP の一部である EPG の BD SVI も、NTP サーバ IP として使用できます。 |
(注) |
ファブリックのスイッチは、同じファブリックの他のスイッチに同期するべきではありません。ファブリック スイッチは常に、外部の NTP サーバに同期するべきです。 |
GUI を使用した NTP サーバの有効化
このセクションでは、APIC GUI で NTP を設定して NTPサーバを有効にする方法について説明します。
手順
ステップ 1 |
メニュー バーで、 を選択します。 |
ステップ 2 |
ナビゲーション ウィンドウで、 を選択します。 Date and Time オプションが Navigation ウィンドウに表示されます。 |
ステップ 3 |
Navigation ウィンドウで、、Date and Time を右クリックして Create Date and Time Policy を選択します。 Create Date and Time Policy ダイアログが Work ウィンドウに表示されます。 |
ステップ 4 |
[Create Date and Time Policy] ダイアログボックスで、次の操作を実行します。 作成するプロバイダーごとに、この手順を繰り返します。 |
ステップ 5 |
Navigation ウィンドウで、Pod Policies を選択し、Policy Groups を右クリックします。 Create Pod Policy Group ダイアログが表示されます。 |
ステップ 6 |
[Work] ペインで、 の順に選択します。 |
ステップ 7 |
[Create Pod Policy Group] ダイアログボックスで、次の操作を実行します。 |
ステップ 8 |
[Navigation] ペインで、 の順に選択します。 |
ステップ 9 |
[Work] ペインで、目的のポッド セレクタ名をダブルクリックします。 |
ステップ 10 |
[Properties] 領域の [Fabric Policy Group] ドロップダウン リストから、作成したポッド ポリシー グループを選択します。 |
ステップ 11 |
[送信(Submit)] をクリックします。 |
CLI を使用した NTP サーバの有効化
このセクションでは、CLI コマンドを使用して、NTP サーバ機能を有効にする方法について説明します。
始める前に
手順
ステップ 1 |
グローバル設定モードに入ります: 例:
|
ステップ 2 |
アクティブな NTP ポリシーのための NTP サーバを設定します。 例:
|
ステップ 3 |
NTP サーバを指定します。 例:
|
ステップ 4 |
NTP サーバとして動作するようにスイッチを有効にします。 例:
|
ステップ 5 |
ストラタム値 10 の NTP マスターモードで動作するようにスイッチを有効にします。 例:
|
ステップ 6 |
グローバル設定モードに戻ります。 例:
|
REST API を使用した NTP サーバの有効化
この例では、REST API を使用した NTP サーバの設定方法を示します。
手順
例:
|