検索

第29章 RHEL システムロールを使用した時刻同期の設定

download PDF

Network Time Protocol (NTP) と Precision Time Protocol (PTP) は、ネットワーク経由でコンピューターのクロックを同期するための規格です。一部のサービスは時刻同期に依存しているため、ネットワークで正確に時刻を同期することが重要です。たとえば、Kerberos では、リプレイ攻撃を防ぐため、サーバーとクライアント間のごくわずかな時間のずれしか許容されません。

Playbook の timesync_ntp_provider 変数で時刻サービスを設定できます。この変数を設定しなかった場合、ロールによって次の要素に基づいて時刻サービスが決定されます。

  • RHEL 8 以降の場合: chronyd
  • RHEL 6 および 7 の場合: chronyd (デフォルト)、またはすでにインストールされている場合は ntpd

29.1. timesync RHEL システムロールを使用した NTP による時刻同期の設定

Network Time Protocol (NTP) は、ネットワーク経由でホストの時刻を NTP サーバーと同期します。IT ネットワーク内では、複数のサービスが、セキュリティーやロギングなどのために、正確なシステム時刻に依存しています。timesync RHEL システムロールを使用すると、ネットワーク内の Red Hat Enterprise Linux NTP クライアントの設定を自動化し、時刻を同期させることができます。

警告

timesync RHEL システムロールは、管理対象ホスト上の指定または検出されたプロバイダーサービスの設定を置き換えます。したがって、設定が Playbook で指定されていない場合、すべての設定が失われます。

前提条件

手順

  1. 次の内容を含む Playbook ファイル (例: ~/playbook.yml) を作成します。

    ---
    - name: Managing time synchronization
      hosts: managed-node-01.example.com
      tasks:
        - name: Configuring NTP with an internal server (preferred) and a public server pool as fallback
          ansible.builtin.include_role:
            name: rhel-system-roles.timesync
          vars:
            timesync_ntp_servers:
            - hostname: time.example.com
              trusted: yes
              prefer: yes
              iburst: yes
            - hostname: 0.rhel.pool.ntp.org
              pool: yes
              iburst: yes

    サンプル Playbook で指定されている設定は次のとおりです。

    pool: <yes|no>
    ソースを個々のホストではなく NTP プールとしてフラグ付けします。この場合、時間経過で変わる可能性のある複数の IP アドレスに名前が解決されることがサービスで想定されています。
    iburst: yes
    高速な初期同期を可能にします。

    Playbook で使用されるすべての変数の詳細は、コントロールノードの /usr/share/ansible/roles/rhel-system-roles.timesync/README.md ファイルを参照してください。

  2. Playbook の構文を検証します。

    $ ansible-playbook --syntax-check ~/playbook.yml

    このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。

  3. Playbook を実行します。

    $ ansible-playbook ~/playbook.yml

検証

  • 時刻ソースの詳細を表示します。

    • 管理対象ノードが chronyd サービスを実行している場合は、次のように入力します。

      # ansible managed-node-01.example.com -m command -a 'chronyc sources'
      MS Name/IP address         Stratum Poll Reach LastRx Last sample
      ===============================================================================
      ^* time.example.com              1  10   377   210   +159us[  +55us] +/-   12ms
      ^? ntp.example.org               2   9   377   409  +1120us[+1021us] +/-   42ms
      ^? time.us.example.net           2   9   377   992   -329us[ -386us] +/-   15ms
      ...
    • 管理対象ノードが ntpd サービスを実行している場合は、次のように入力します。

      # ansible managed-node-01.example.com -m command -a 'ntpq -p'
           remote           refid      st t when poll reach   delay   offset  jitter
      ==============================================================================
      *time.example.com .PTB.           1 u    2   64   77   23.585  967.902   0.684
      - ntp.example.or 192.0.2.17       2 u    -   64   77   27.090  966.755   0.468
      +time.us.example 198.51.100.19    2 u   65   64   37   18.497  968.463   1.588
      ...

関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.