設定管理
クライアントそれぞれを手動で設定するのではなく、設定ファイルおよびチャンネルを使用してクライアントの設定を管理できます。
設定パラメータは、スクリプト化され、設定ファイルに保存されます。 SUSE ManagerのWeb UIを使用して設定ファイルを直接書き込むことができます。または、別の場所にあるファイルをアップロードまたはリンクできます。
設定ファイルは一元管理できます。一元管理された設定ファイルはグローバル設定チャンネルによって提供され、SUSE Manager Serverにサブスクライブしている任意のクライアントに適用できます。
設定チャンネルは、設定ファイルの編成に使用されます。 クライアントを設定チャンネルにサブスクライブして、必要に応じて設定ファイルを展開できます。
設定ファイルはバージョン管理されるため、設定を追加し、クライアントで設定をテストし、必要に応じて前のリビジョンにロールバックできます。 設定チャンネルを作成したら、さまざまな設定ファイル間の比較や同じ設定ファイルの異なるリビジョン間の比較も実行できます。
一元管理された設定ファイルはグローバル設定チャンネルによって提供されます。
次の表に、サポートされている機能を示します。各記号の意味は次のとおりです。
-
: この機能はSUSEでサポートされています
-
: この機能はSUSEではサポートされていません
-
: この機能は検討中であり、後日サポートされるかどうかは未定です。
| 機能 | ステータス |
|---|---|
グローバル設定チャンネル |
|
ファイルの展開 |
|
ファイルの比較 |
|
ローカル管理ファイル |
(Salt機能を使用) |
サンドボックスファイル |
|
Highstateの適用 |
|
クライアントからのファイルのインポート |
|
Jinjaテンプレート |
|
設定マクロ |
(Salt機能(grains、pillarデータなど)を使用) |
1. 設定チャンネルの作成
1.1. 一元的な設定チャンネル
新しい一元的な設定チャンネルを作成するには:
-
SUSE ManagerのWeb UIで、に移動し、設定チャンネルの作成をクリックします。
-
チャンネルの名前を入力します。
-
チャンネルのラベルを入力します。 このフィールドには、半角の英字、数字、ハイフン(
-)、および下線(_)のみを含める必要があります。 -
他のチャンネルから区別できるようにチャンネルの説明を入力します。
-
設定チャンネルの作成をクリックして新しいチャンネルを作成します。
1.2. Saltの状態チャンネル
設定チャンネルを使用して、クライアントのSaltの状態を管理することもできます。
-
SUSE ManagerのWeb UIで、に移動し、状態チャンネルの作成をクリックします。
-
チャンネルの名前を入力します。
-
チャンネルのラベルを入力します。 このフィールドには、半角の英字、数字、ハイフン(
-)、および下線(_)のみを含める必要があります。 -
他のチャンネルから区別できるようにチャンネルの説明を入力します。
-
init.slsファイルの[SLSコンテンツ]を入力します。 -
設定チャンネルの作成をクリックして新しいチャンネルを作成します。
2. 設定ファイル、ディレクトリ、またはシンボリックリンクの追加
設定チャンネルを作成済みの場合、設定ファイル、ディレクトリ、またはシンボリックリンクを追加できます。
-
SUSE ManagerのWeb UIで、に移動し、設定ファイルに追加する設定チャンネルの名前をクリックし、サブタブに移動します。
-
[
ファイルタイプ]フィールドで、テキストファイル、ディレクトリ、またはシンボリックリンクを作成するかどうかを選択します。 -
[
ファイル名/パス]フィールドで、ファイルを展開する場所への絶対パスを入力します。 -
シンボリックリンクを作成している場合、[
シンボリックリンクの目的ファイル名/パス]フィールドにターゲットのファイルおよびパスを入力します。 -
[
所有権]フィールドおよび[ファイルアクセス許可モード]にファイルの[ユーザ名]および[グループ名]を入力します。 -
クライアントでSELinuxが有効になっている場合、[
SELinux contexts](SELinuxコンテキスト)を設定して、必要なファイル属性(ユーザ、ロール、ファイルタイプなど)を有効にできます。 -
設定ファイルにマクロが含まれている場合、マクロの先頭および末尾をマークする記号を入力します。
-
[
ファイルの内容]テキストボックスで設定ファイルの内容を入力し、スクリプトドロップダウンボックスを使用して、適切なスクリプト言語を選択します。 -
設定ファイルの作成をクリックします。
3. クライアントを設定チャンネルにサブスクライブする
個々のクライアントを設定チャンネルにサブスクライブできます。そのためには、に移動し、サブスクライブするクライアントを選択し、[設定]タブに移動します。 複数のクライアントを設定チャンネルにサブスクライブするには、システムセットマネージャ(SSM)を使用できます。
-
SUSE ManagerのWeb UIで、に移動し、操作するクライアントを選択します。
-
に移動し、サブタブに移動し、使用できる設定チャンネルの一覧を表示します。
-
オプション: [
現在サブスクライブしているシステム]列で番号をクリックして、設定チャンネルに現在サブスクライブされているクライアントを表示します。 -
サブスクライブ先の設定チャンネルを確認し、続行をクリックします。
-
上下矢印を使用して設定チャンネルをランクします。 設定の競合が設定チャンネルで発生した場合、一覧の上の方にあるチャンネルが優先されます。
-
選択したクライアントにチャンネルを適用する方法を決定します。 最も低い順位でサブスクライブをクリックして、現在サブスクライブしているチャンネルより低い優先度で新しいチャンネルを追加します。 最も高い順位でサブスクライブをクリックして、現在サブスクライブしているチャンネルより高い優先度で新しいチャンネルを追加します。 既存のサブスクリプションを置換をクリックして、既存のチャンネルを削除し、新しいチャンネルに置き換えます。
-
サブスクリプションの適用をクリックします。
|
新しい設定チャンネルの優先度が既存のチャンネルと競合する場合、重複チャンネルが削除され、新しい優先度に応じて置き換えられます。 クライアントの設定優先度をアクションで順序変更する場合、Web UIでは続行する前に変更を確認する必要があります。 |
4. 設定ファイルの比較
システムセットマネージャ(SSM)を使用して、SUSE Managerサーバに保存されている設定ファイルを使用してクライアントに展開された設定ファイルを比較することもできます。
-
SUSE ManagerのWeb UIで、に移動して、比較する設定ファイルにサブスクライブされているクライアントを選択します。
-
に移動し、サブタブに移動し、使用できる設定チャンネルの一覧を表示します。
-
オプション: [
システム]列で番号をクリックして、設定ファイルに現在サブスクライブされているクライアントを表示します。 -
比較する設定ファイルを確認し、ファイルの比較をスケジュールをクリックします。
5. クライアントでのJinjaテンプレート
Jinja templating is possible on Salt clients. Jinja is only evaluated when content is processed by the Salt engine. Jinja provides variables from pillars or grains. They can be used in files managed by Salt (for example, via file.managed) or Salt states.
|
File configuration channels deliver static files without Jinja processing. State channel files are only applied if referenced in a Salt state. |
詳細については、次の例の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
- template: jinja