設定管理

クライアントそれぞれを手動で設定するのではなく、設定ファイルおよびチャンネルを使用してクライアントの設定を管理できます。

設定パラメータは、スクリプト化され、設定ファイルに保存されます。 SUSE ManagerのWeb UIを使用して設定ファイルを直接書き込むことができます。または、別の場所にあるファイルをアップロードまたはリンクできます。

設定ファイルは一元管理できます。一元管理された設定ファイルはグローバル設定チャンネルによって提供され、SUSE Manager Serverにサブスクライブしている任意のクライアントに適用できます。

設定チャンネルは、設定ファイルの編成に使用されます。 クライアントを設定チャンネルにサブスクライブして、必要に応じて設定ファイルを展開できます。

設定ファイルはバージョン管理されるため、設定を追加し、クライアントで設定をテストし、必要に応じて前のリビジョンにロールバックできます。 設定チャンネルを作成したら、さまざまな設定ファイル間の比較や同じ設定ファイルの異なるリビジョン間の比較も実行できます。

一元管理された設定ファイルはグローバル設定チャンネルによって提供されます。

次の表に、サポートされている機能を示します。各記号の意味は次のとおりです。

  • : この機能はSUSEでサポートされています

  • : この機能はSUSEではサポートされていません

  • : この機能は検討中であり、後日サポートされるかどうかは未定です。

Table 1. 設定管理でサポートされる機能
機能 ステータス

グローバル設定チャンネル

ファイルの展開

ファイルの比較

ローカル管理ファイル

(Salt機能を使用)

サンドボックスファイル

Highstateの適用

クライアントからのファイルのインポート

Jinjaテンプレート

設定マクロ

(Salt機能(grains、pillarデータなど)を使用)

1. 設定チャンネルの作成

1.1. 一元的な設定チャンネル

新しい一元的な設定チャンネルを作成するには:

プロシージャ: 一元的な設定チャンネルの作成
  1. SUSE ManagerのWeb UIで、設定  チャンネルに移動し、設定チャンネルの作成をクリックします。

  2. チャンネルの名前を入力します。

  3. チャンネルのラベルを入力します。 このフィールドには、半角の英字、数字、ハイフン(-)、および下線(_)のみを含める必要があります。

  4. 他のチャンネルから区別できるようにチャンネルの説明を入力します。

  5. 設定チャンネルの作成をクリックして新しいチャンネルを作成します。

1.2. Saltの状態チャンネル

設定チャンネルを使用して、クライアントのSaltの状態を管理することもできます。

プロシージャ: Saltの状態チャンネルの作成
  1. SUSE ManagerのWeb UIで、設定  チャンネルに移動し、状態チャンネルの作成をクリックします。

  2. チャンネルの名前を入力します。

  3. チャンネルのラベルを入力します。 このフィールドには、半角の英字、数字、ハイフン(-)、および下線(_)のみを含める必要があります。

  4. 他のチャンネルから区別できるようにチャンネルの説明を入力します。

  5. init.slsファイルの[SLSコンテンツ]を入力します。

  6. 設定チャンネルの作成をクリックして新しいチャンネルを作成します。

2. 設定ファイル、ディレクトリ、またはシンボリックリンクの追加

設定チャンネルを作成済みの場合、設定ファイル、ディレクトリ、またはシンボリックリンクを追加できます。

プロシージャ: 設定ファイル、ディレクトリ、またはシンボリックリンクの追加
  1. SUSE ManagerのWeb UIで、設定  チャンネルに移動し、設定ファイルに追加する設定チャンネルの名前をクリックし、ファイルの追加  ファイルの作成サブタブに移動します。

  2. ファイルタイプ]フィールドで、テキストファイル、ディレクトリ、またはシンボリックリンクを作成するかどうかを選択します。

  3. ファイル名/パス]フィールドで、ファイルを展開する場所への絶対パスを入力します。

  4. シンボリックリンクを作成している場合、[シンボリックリンクの目的ファイル名/パス]フィールドにターゲットのファイルおよびパスを入力します。

  5. 所有権]フィールドおよび[ファイルアクセス許可モード]にファイルの[ユーザ名]および[グループ名]を入力します。

  6. クライアントでSELinuxが有効になっている場合、[SELinux contexts](SELinuxコンテキスト)を設定して、必要なファイル属性(ユーザ、ロール、ファイルタイプなど)を有効にできます。

  7. 設定ファイルにマクロが含まれている場合、マクロの先頭および末尾をマークする記号を入力します。

  8. ファイルの内容]テキストボックスで設定ファイルの内容を入力し、スクリプトドロップダウンボックスを使用して、適切なスクリプト言語を選択します。

  9. 設定ファイルの作成をクリックします。

3. クライアントを設定チャンネルにサブスクライブする

個々のクライアントを設定チャンネルにサブスクライブできます。そのためには、システム  システム一覧に移動し、サブスクライブするクライアントを選択し、[設定]タブに移動します。 複数のクライアントを設定チャンネルにサブスクライブするには、システムセットマネージャ(SSM)を使用できます。

プロシージャ: 複数のクライアントを設定チャンネルにサブスクライブする
  1. SUSE ManagerのWeb UIで、システム  システム一覧に移動し、操作するクライアントを選択します。

  2. システム  システムセットマネージャに移動し、設定  チャンネルにサブスクライブサブタブに移動し、使用できる設定チャンネルの一覧を表示します。

  3. オプション: [現在サブスクライブしているシステム]列で番号をクリックして、設定チャンネルに現在サブスクライブされているクライアントを表示します。

  4. サブスクライブ先の設定チャンネルを確認し、続行をクリックします。

  5. 上下矢印を使用して設定チャンネルをランクします。 設定の競合が設定チャンネルで発生した場合、一覧の上の方にあるチャンネルが優先されます。

  6. 選択したクライアントにチャンネルを適用する方法を決定します。 最も低い順位でサブスクライブをクリックして、現在サブスクライブしているチャンネルより低い優先度で新しいチャンネルを追加します。 最も高い順位でサブスクライブをクリックして、現在サブスクライブしているチャンネルより高い優先度で新しいチャンネルを追加します。 既存のサブスクリプションを置換をクリックして、既存のチャンネルを削除し、新しいチャンネルに置き換えます。

  7. サブスクリプションの適用をクリックします。

新しい設定チャンネルの優先度が既存のチャンネルと競合する場合、重複チャンネルが削除され、新しい優先度に応じて置き換えられます。 クライアントの設定優先度をアクションで順序変更する場合、Web UIでは続行する前に変更を確認する必要があります。

4. 設定ファイルの比較

システムセットマネージャ(SSM)を使用して、SUSE Managerサーバに保存されている設定ファイルを使用してクライアントに展開された設定ファイルを比較することもできます。

プロシージャ: 設定ファイルの比較
  1. SUSE ManagerのWeb UIで、システム  システム一覧に移動して、比較する設定ファイルにサブスクライブされているクライアントを選択します。

  2. システム  システムセットマネージャに移動し、設定  ファイルの比較サブタブに移動し、使用できる設定チャンネルの一覧を表示します。

  3. オプション: [システム]列で番号をクリックして、設定ファイルに現在サブスクライブされているクライアントを表示します。

  4. 比較する設定ファイルを確認し、ファイルの比較をスケジュールをクリックします。

5. クライアントでのJinjaテンプレート

Jinjaテンプレートは、Saltクライアントで可能です。 Jinjaはピラーまたはグレインからの変数を提供します。 これらは、設定ファイルまたはSalt状態で使用できます。

詳細については、次の例のhttps://docs.saltproject.io/salt/user-guide/en/latest/topics/jinja.htmlを参照してください。

{% if grains.os_family == 'RedHat' %}
  {% set dns_cfg = '/etc/named.conf' %}
{% elif grains.os_family == 'Debian' %}
  {% set dns_cfg = '/etc/bind/named.conf' %}
{% else %}
  {% set dns_cfg = '/etc/named.conf' %}
{% endif %}
dns_conf:
  file.managed:
    - name: {{ dns_cfg }}
    - source: salt://dns/files/named.conf