このドキュメントで説明されているソフトウェアはサポートされなくなったか、または拡張サポートされています。
Oracleでは、現在サポートされているリリースにアップグレードすることをお薦めします。

機械翻訳について

第10章 クライアント・システムの制御と構成

リモート・クライアント・システムでコマンド・スクリプトを実行するには、Spacewalk Webインタフェースまたはspacecmdコマンドを使用します。 チャネルを使用してコンフィギュレーション・ファイルをデプロイすることによって、構成チャネルを構成し、これらのチャネルにクライアント・システムをサブスクライブし、クライアント・システムをカスタマイズすることもできます。

10.1  Spacewalk Webインタフェースを使用したリモート・クライアント・システムでのコマンド・スクリプトの実行


ノート

クライアント・システムは、Spacewalkサーバーがリモート・コマンドを実行できるようにする必要があります。 7.1項、「Spacewalk Webインタフェースを使用したキックスタート・プロファイルでのリモート構成の有効化」7.3項、「リモート構成の手動による有効化」を参照してください。

リモート・クライアントでコマンドを実行するには:

  1. システムに移動し、リストからクライアント・システムを選択します。

  2. 詳細を選択し、リモート・コマンドタブを選択します。

  3. 必要に応じて、コマンドを実行するユーザーのユーザーIDとグループID、コマンドのタイムアウト、およびコマンド・ラベルを最大10文字変更します。

  4. スクリプトテキスト・ボックスに、実行するコマンド・スクリプトを入力します。 次の例では、whoコマンドを実行します:

    #!/bin/sh
    who
  5. 必要に応じて、コマンドのスケジュールを変更します。

  6. スケジュールをクリックして、指定したスケジュールに従ってコマンド・スクリプトを実行します。

    スケジュールを編集しておらず、クライアント上でOSAデーモンを使用可能にした場合、OSAデーモンは通常、すぐにコマンドを実行します。

  7. イベントを選択し、保留中または履歴タブを選択して、スケジュールされたアクションまたは完了したアクションを表示します。 サマリー名をクリックすると、スクリプトおよびクライアント上で既に実行されているすべての出力の詳細が表示されます。

10.2  spacecmdコマンドを使用したリモート・クライアント・システムでのコマンド・スクリプトの実行

ノート

クライアント・システムは、Spacewalk Serverがリモート・コマンドを実行できるようにする必要があります。 7.1項、「Spacewalk Webインタフェースを使用したキックスタート・プロファイルでのリモート構成の有効化」7.3項、「リモート構成の手動による有効化」を参照してください。

クライアント・システムでコマンドを実行するには、次の例に示すように、system_runscriptコマンドを使用します:

spacecmd {SSM:0}> system_runscript group:group3 -s 20150617T0130 -t 60 -f /root/myscript

User:       root
Group:      root
Timeout:    60 seconds
Start Time: 20150617T01:30:00

Script Contents
---------------
#!/bin/sh
yum update

Systems
-------
svr2.mydom.com
svr3.mydom.com

Is this ok [y/N]: y
INFO: Action ID: 343
INFO: Scheduled: 2 system(s)

イベントを開始する日時を指定するには、-sオプションとともにYYYYMMDD [hhmm]の形式を使用します。 開始時間を指定しないと、Spacewalkは0000(深夜)とみなします。

-tオプションは、クライアントがコマンドを実行したことを確認するタイムアウトを定義します。 この時間が経過すると、Spacewalkはコマンドが失敗したとみなします。

10.3 スケジュールされたイベントの処理

完了イベント、失敗イベント、および保留イベントのリストを表示するには、schedule_listコマンドを使用します:

spacecmd {SSM:0}> schedule_list
ID      Date                 C    F    P     Action
--      ----                ---  ---  ---    ------
...
343     20150617T01:30:00     0    0    2    Run an arbitrary script
...

CF、およびP列には、イベントが完了、失敗、保留中のシステムの数が表示されます。 完了、失敗、または保留中のイベントのみを表示するには、schedule_listcompletedschedule_listfailed、またはschedule_listpendingコマンドを使用します。

保留中のイベントの詳細を表示するには、schedule_detailsコマンドを使用します:

spacecmd {SSM:0}> schedule_details 343
ID:        343
Action:    Run an arbitrary script
User:      swadmin
Date:      20150617T01:30:00

Completed:   0
Failed:      0
Pending:     2

Pending Systems
---------------
svr2.mydom.com
svr3.mydom.com

保留中のイベントを取り消すには、schedule_cancelコマンドを使用します:

spacecmd {SSM:0}> schedule_cancel 343
INFO: Canceled action 343
Canceled 1 action(s)

失敗したイベントを再実行するには、schedule_rescheduleコマンドを使用します:

spacecmd {SSM:0}> schedule_reschedule 382
Rescheduled 1 action(s)

10.4 構成チャネルの使用

ノート

クライアント・システムは、Spacewalkサーバーがファイルをデプロイできるようにする必要があります。 7.1項、「Spacewalk Webインタフェースを使用したキックスタート・プロファイルでのリモート構成の有効化」7.3項、「リモート構成の手動による有効化」、および第3章、「Spacewalkのアクティベーション・キーの操作」を参照してください。

Spacewalkのソフトウェア・チャネルに複数のクライアント・システムにインストールするパッケージが含まれているのと同じように、構成チャネルにはクライアント・システムを構成するためのファイルが含まれています。 たとえば、ファイルにはサービス、アプリケーション、またはユーザーの構成情報が含まれている可能性があります。

10.4.1 カスタム情報キーの使用

カスタム情報キーを使用すると、クライアントから構成情報を抽出できます。

カスタム情報キーを使用するには、次のステップを実行します:

  1. 第10.4.2項、「Spacewalk Webインタフェースの使用によるカスタム情報キーの定義」および第10.4.3項、「spacecmdコマンドを使用したカスタム情報キーの定義」の説明に従って、Spacewalkでカスタム情報キーを定義します。

    たとえば、uptrack-unameという名前のカスタム情報キーを定義して、Kspliceの有効カーネル・バージョンの値を格納することができます。

  2. キーを使用する各クライアントにrhn-custom-infoパッケージをインストールします。

  3. rhn-custom-infoコマンドを使用して、キーの値をSpacewalkで使用できるようにします:

    # rhn-custom-info uptrack-uname `uptrack-uname -r`

    このコマンドは、uptrack-uname -rによって返された値をuptrack-unameキーの値として使用可能にします。 次に、rhn.system.custom_info(uptrack-uname)マクロを使用して、構成ファイル内のuptrack-nameの値を抽出することができます。

10.4.2  Spacewalk Webインタフェースを使用したカスタム情報キーの定義

カスタム情報キーを定義してシステムに割り当てるには、次のステップを実行します:

  1. システムに行き、カスタム・システム情報を選択して下さい。

  2. +新しいキーを作成をクリックします。

  3. 「カスタム情報キーを作成」ページで、キー・ラベル(例:asset_tag)と説明を入力し、キーを作成をクリックします。

  4. システムに移動し、キーに値を割り当てるシステムの名前をクリックします。

  5. カスタム情報タブを選択します。

  6. 「カスタム・システム情報」ページで、+新しい価値を創造をクリックします。

  7. 「カスタム情報キーを編集」ページで、値を割り当てるキーを選択します。

    ページが更新され、キーとテキスト・ボックスに関する情報が表示されます。

  8. テキスト・ボックスにキー値を入力し、更新キーをクリックします。

    「カスタム・システム情報」ページには、システムに関連付けられているキーと値のペアが表示されます。 値を変更するには、関連するこの値を編集リンクを選択します。

ノート

また、システムのキックスタート・プロファイルのカスタム情報タブを使用して、システムのカスタム情報キーを定義することもできます。

システムには必要な数のキーと値のペアを定義できます。

10.4.3  spacecmdコマンドを使用してカスタム情報キーを定義

カスタム情報キーを作成するには、次のようにcustominfo_createkeyコマンドを使用します:

spacecmd {SSM:0}> custominfo_createkey admin_user "Email of admin contact"

利用可能なカスタム情報キーを一覧表示するには、custominfo_listkeysコマンドを使用します:

spacecmd {SSM:0}> custominfo_listkeys
asset_tag
admin_user

カスタム情報キーをシステムまたはシステム・グループに割り当てるには、system_addcustomvalue:

spacecmd {SSM:0}> system_addcustomvalue asset_tag "fc01568a" svr3.mydom.com
spacecmd {SSM:0}> system_addcustomvalue admin_user "an.admin@mydom.com" group:group3

システムまたはシステム・グループのカスタム情報キーを表示するには、system_listcustomvaluesコマンドを使用します:

spacecmd {SSM:0}> system_listcustomvalues svr3.mydom.com
asset_tag = fc01568a
admin_user = an.admin@mydom.com
spacecmd {SSM:0}> system_listcustomvalues group:group3
System: svr3.mydom.com

asset_tag = fc01568a
admin_user = an.admin@mydom.com

##############################

System: svr4.mydom.com

asset_tag = aa10889f
admin_user = an.admin@mydom.com

10.4.4  Spacewalk Webインタフェースを使用して構成チャネルを操作


構成チャネルを作成するには:

  1. 構成に行き、構成チャネルを選択して下さい

  2. 「中央管理された構成チャネル」ページで、+新しい構成チャネルを作成をクリックします。

  3. チャネルの名前、ラベル、および説明を入力します。 ラベルは、ターゲット・オペレーティング・システム、アーキテクチャ(必要に応じて)、およびチャネルの目的(たとえば、ol6_generic_configuration)の短い表現でなければなりません。

  4. 構成チャネルの作成をクリックします。

  5. 構成チャネルにファイルを追加するには、「新しいチャネル」ページで追加ファイルタブを選択します。

    • テキスト・ファイル、ディレクトリ、シンボリック・リンクを作成するには:

      1. ファイルの作成タブを選択します。

      2. 「新しい構成ファイルを作成」ページでは、テキスト・ファイル、ディレクトリ、またはシンボリック・リンクを作成できます。

        たとえば、クライアントに関する構成情報を含むメッセージ・メッセージ・ファイルを設定するには、次の情報を入力します:

        ファイル・タイプ

        テキスト・ファイルを選択します。

        ファイル名/パス

        /etc/motdと入力します。

        所有権

        ユーザー名とグループの両方にrootと入力します。 これらはデフォルトのエントリです。

        ファイル許可モード

        644と入力します。 (これはデフォルトのモードです。)

        File Contents

        ドロップダウン・リストからファイル・タイプをシェルとして選択し、テキスト・フィールドにファイルの内容を入力します。

        たとえば、次のファイルでは、Spacewalkがファイルがデプロイされているシステムの適切な値で置き換えられるマクロが使用されます:

        System Information
        ==================
        Client system: {|rhn.system.hostname|}
        Spacewalk SID: {|rhn.system.sid|}
        Asset tag:     {|rhn.system.custom_info(asset_tag) = 'Asset tag missing'|}
        Profile:       {|rhn.system.profile_name|}
        Description:   {|rhn.system.description|}
        IP address:    {|rhn.system.ip_address(eth0)|}
        MAC address:   {|rhn.system.net_interface.hardware_address(eth0)|}

        カスタム・マクロrhn.system.custom_infoは、システムの「カスタム情報」タブに割り当てられているasset_tagという名前のカスタム・システム情報キーの値で置き換えられます。 それ以外の場合は、値Asset tag missingを挿入します。

        10.4.2項、「Spacewalk Webインタフェースを使用したカスタム情報キーの定義」を参照してください。

        付録C、「構成ファイルのマクロ」を参照してください。

      3. ファイルの詳細を入力したら、構成ファイルの作成をクリックします。

    • ファイルをインポートするには:

      1. ファイルのインポートタブを選択します。

        「別のチャネル」からの構成ファイルのインポート・ページで、他の構成チャネルから構成ファイルをインポートできます。

      2. インポートする構成ファイルのチェックボックスをオンにします。

      3. 構成ファイルのインポートをクリックします。

    • ファイルをアップロードするには:

      1. ファイルをアップロードタブを選択します。

      2. 「新しい構成ファイルをアップロード」ページで、Browse...をクリックし、アップロードするファイルのパスを選択します。

      3. ファイルのタイプを選択: テキスト・ファイルまたはバイナリ・ファイル

      4. 必要に応じて、所有権やアクセス許可など、ファイルのその他の詳細を入力します。

      5. アップロード構成ファイルをクリックします。

10.4.5  spacecmdコマンドを使用して構成チャネルを操作

構成チャネルを作成するには、次の例に示すように、configchannel_createコマンドを使用します:

spacecmd {SSM:0}> configchannel_create
Name: Oracle Linux 6 Server Configuration
Label: ol6-server-config
Description: Generic configuration channel for Oracle Linux 6 servers

コンフィギュレーション・ファイルをチャネルに追加するには、configchannel_addfileコマンドを使用します:

spacecmd {SSM:0}> configchannel_addfile ol6-server-config
Path: /etc/motd
Symlink [y/N]: N
Directory [y/N]: N
Owner [root]: [Enter]
Group [root]: [Enter]
Mode [0644]: [Enter]
SELinux Context [None]: [Enter]
Revision [next]: [Enter]
Read an existing file [y/N]: y
File: /var/config_file_templates/ol6-server/etc/motd
Path:            /etc/motd
Directory:       False
Owner:           root
Group:           root
Mode:            0644
SELinux Context: 

Contents
--------
System Information
==================
Client system: {|rhn.system.hostname|}
Spacewalk SID: {|rhn.system.sid|}
Asset tag:     {|rhn.system.custom_info(asset_tag) = 'Asset tag missing'|}
Profile:       {|rhn.system.profile_name|}
Description:   {|rhn.system.description|}
IP address:    {|rhn.system.ip_address(eth0)|}
MAC address:   {|rhn.system.net_interface.hardware_address(eth0)|}

Is this ok [y/N]: y

カスタム・マクロrhn.system.custom_infoは、システムの「カスタム情報」タブに割り当てられているasset_tagという名前のカスタム・システム情報キーの値で置き換えられます。 それ以外の場合は、値Asset tag missingを挿入します。

第10.4.3項、「spacecmdコマンドを使用したカスタム情報キーの定義」を参照してください。

付録C、「構成ファイルのマクロ」を参照してください。

構成チャネルの詳細を表示するには、configchannel_detailsコマンドを使用します:

spacecmd {SSM:0}> configchannel_details ol6-server-config
Label:       ol6-server-config
Name:        Oracle Linux 6 Server Configuration
Description: Configuration channel for generic Oracle Linux 6 servers

Files
-----
/etc/motd

10.4.6  Spacewalk Webインタフェースを使用してクライアント・システムを構成チャネルにサブスクライブ

クライアント・システムを構成チャネルにサブスクライブするには:

  1. システムに移動し、システム名をクリックします。

  2. 構成タブ、構成チャネルの管理タブ、最後にチャネルをサブスクライブタブを選択します。

  3. ステップ1: サブスクリプションのチャネル・ページを選択し、システムをサブスクライブするチャネルのチェック・ボックスを選択し、持続をクリックします。

  4. ステップ2で: サブスクリプション・ページのランクのチャネルを選択すると、必要に応じて優先順位に従って構成チャネルの順序を変更できます。 複数のエントリが同じファイルまたはディレクトリを変更できる場合は、上位のエントリは下位のエントリを上書きします。

  5. 変更を保存するには、チャネル・ランキングを更新をクリックします。

10.4.8項、「Spacewalk Webインタフェースを使用したクライアント・システムへの構成ファイルのデプロイ」を参照してください。

10.4.7  spacecmdコマンドを使用してクライアント・システムを構成チャネルにサブスクライブ

使用可能な構成チャネルをリストするには、次のようにconfigchannel_listコマンドを使用します:

spacecmd {SSM:0}> configchannel_list
ol6-dns-server-config
ol6-http-server-config
ol6-nfs-server-config
ol6-server-config

システムまたはシステム・グループを構成チャネルにサブスクライブするには、system_addconfigchannelsコマンドを使用します:

spacecmd {SSM:0}> system_addconfigchannels svr3.mydom.com ol6-nfs-server-config -t
spacecmd {SSM:0}> system_addconfigchannels group:group3 ol6-server-config -b

システムまたはシステム・グループがサブスクライブされている構成チャネルを一覧表示するには、system_listconfigchannelsコマンドを使用します:

spacecmd {SSM:0}> system_listconfigchannels group:group3
System: svr3.mydom.com
ol6-nfs-server-config
ol6-server-config

##############################

System: svr4.mydom.com
ol6-server-config

システムの構成チャネルを編集するには、次のようにsystem_setconfigchannelorderコマンドを使用します:

spacecmd {SSM:0}> system_setconfigchannelorder svr1.mydom.com
Current Selections
------------------
1. ol6-server-config

a[dd], r[emove], c[lear], d[one]: a

Available Configuration Channels
--------------------------------
ol6-dns-server-config
ol6-http-server-config
ol6-nfs-server-config
ol6-server-config

Channel: ol6-dns-server-config
New Rank: 1

Current Selections
------------------
1. ol6-dns-server-config
2. ol6-server-config

a[dd], r[emove], c[lear], d[one]: d

システムを構成チャネルから退会させるには、system_removeconfigchannelsコマンドを使用します:

spacecmd {SSM:0}> system_removeconfigchannels svr3.mydom.com ol6-server-config

10.4.8  Spacewalk Webインタフェースを使用したクライアント・システムへの構成ファイルのデプロイ

ノート

デプロイする構成ファイルの適切な構成チャネルにシステムを事前にサブスクライブしておく必要があります。 10.4.6項、「Spacewalk Webインタフェースを使用したクライアント・システムの構成チャネルへのサブスクリプション」を参照してください。

/var/log/rhncfg-actionsログファイルがクライアント上に存在しない場合、クライアント・システムへの最初のデプロイは失敗する可能性があります。 デプロイメントが失敗すると、ログファイルが自動的に作成され、デプロイメント・イベントを再スケジュールできます。 または、クライアント・システム上でファイルをデプロイする前に、次のコマンドを実行します:

# touch /var/log/rhncfg-actions

構成ファイルを使用して、以前にSpacewalkサーバーによってプロビジョニングされていないSpacewalkクライアントにSSLおよびGPG証明書をデプロイすることをお薦めします。


構成ファイルをクライアント・システムにデプロイするには:

  1. システムに移動し、システム名をクリックします。

  2. 構成タブを選択し、次にファイルをデプロイタブを選択します。

  3. 「ファイルをデプロイ」ページで、デプロイするファイルのチェックボックスをオンにして、ファイルをデプロイをクリックします。

  4. 「ファイルのデプロイを確認」ページで、必要に応じてスケジュールを変更し、スケジュールのデプロイをクリックします。

  5. イベントを選択し、保留中または履歴タブを選択して、スケジュールされたアクションまたは完了したアクションを表示します。 要約名をクリックすると、デプロイメント・イベントの詳細が表示されます。

10.4.9 spacecmdコマンドを使用したクライアント・システムへの構成ファイルのデプロイ

ノート

デプロイする構成ファイルの適切な構成チャネルにシステムを事前にサブスクライブしておく必要があります。 第10.4.7項、「spacecmdコマンドを使用したクライアント・システムの構成チャネルへのサブスクライブ」を参照してください。

/var/log/rhncfg-actionsログファイルがクライアント上に存在しない場合、クライアント・システムへの最初のデプロイは失敗する可能性があります。 デプロイメントが失敗すると、ログファイルが自動的に作成され、デプロイメント・イベントを再スケジュールできます。 または、クライアント・システム上でファイルをデプロイする前に、次のコマンドを実行します:

# touch /var/log/rhncfg-actions

すべての構成ファイルをシステムまたはシステム・グループにデプロイするには、system_deployconfigfilesコマンドを使用します:

spacecmd {SSM:0}> system_deployconfigfiles group:group3
Systems
-------
svr3.mydom.com
svr4.mydom.com

Deploy ALL configuration files to these systems [y/N]: y
INFO: Scheduled deployment for 2 system(s)

保留中のデプロイメント・イベントの詳細を表示するには、schedule_detailsコマンドを使用します。

10.3項、「スケジュールされたイベントの処理」を参照してください。