Ubuntu 16.04および18.04クライアントの登録

このセクションでは、Ubuntu 16.04 LTS、18.04 LTSオペレーティングシステムを実行しているSaltクライアントの登録について説明します。

SUSE Managerは、Saltを使用するUbuntu 16.04 LTS、18.04 LTS、および20.04 LTSクライアントをサポートしています。 Ubuntu 20.04を実行しているSaltクライアントを登録する方法の詳細については、Ubuntu 20.04クライアントの登録を参照してください。

Canonicalは、SUSE Managerを保証またはサポートしていません。

UbuntuはSaltクライアントでのみサポートされています。 従来のクライアントはサポートされていません。

ブートストラップは、リポジトリの設定やプロファイルの更新の実行など、Ubuntuクライアントの起動および初期状態の実行のためにサポートされています。 ただし、Ubuntuのrootユーザはデフォルトで無効になっているため、ブートストラップを使用するには、Pythonのsudo特権がある既存ユーザが必要です。

1. ソフトウェアチャンネルの追加

UbuntuクライアントをSUSE Managerサーバに登録する前に、必要なソフトウェアチャンネルを追加して同期する必要があります。

このプロシージャで必要な製品は次のとおりです。

Table 1. Ubuntu製品 - WebUI
OSバージョン 製品名

Ubuntu 16.04

Ubuntu 16.04

Ubuntu 18.04

Ubuntu 18.04

WebUIを使用してUbuntu 18.04チャンネルを追加する場合、Ubuntuチャンネル - CLIに記載されているように、CLIを使用してubuntu-1804-amd64-mainチャンネルおよびubuntu-1804-amd64-main-updatesチャンネルも追加する必要があります。

Ubuntu 16.04はサポート終了になっており、そのリポジトリで提供されるISOイメージは失効しています。 これらのパッケージを使用した新しいUbuntu 16.04クライアントのブートストラップは失敗します。 新しいUbuntu 16.04クライアントをブートストラップする必要がある場合、クライアントのトラブルシューティングのトラブルシューティングプロシージャに従ってください。

プロシージャ: ソフトウェアチャンネルの追加
  1. SUSE ManagerのWeb UIで、管理  セットアップウィザード  製品に移動します。

  2. 検索バーを使用してクライアントのオペレーティングシステムおよびアーキテクチャに適切な製品を探し、適切な製品にチェックを付けます。 こうすることによって、すべての必須チャンネルに自動的にチェックが付きます。 また、include recommendedトグルがオンになっている場合、すべての推奨チャンネルにもチェックが付きます。 矢印をクリックして関連製品の一覧を表示し、必要な追加製品にチェックが付いていることを確認します。

  3. 製品の追加をクリックし、製品の同期が完了するまで待機します。

または、コマンドプロンプトでチャンネルを追加できます。 このプロシージャで必要なチャンネルは次のとおりです。

Table 2. Ubuntuチャンネル - CLI
OSバージョン ベースチャンネル

Ubuntu 16.04

ubuntu-16.04-pool-amd64

Ubuntu 18.04

ubuntu-18.04-pool-amd64

Ubuntu 16.04はサポート終了になっており、そのリポジトリで提供されるISOイメージは失効しています。 これらのパッケージを使用した新しいUbuntu 16.04クライアントのブートストラップは失敗します。 新しいUbuntu 16.04クライアントをブートストラップする必要がある場合、クライアントのトラブルシューティングのトラブルシューティングプロシージャに従ってください。

Ubuntu 16.04はサポート終了になっており、そのリポジトリで提供されるISOイメージは失効しています。 これらのパッケージを使用した新しいUbuntu 16.04クライアントのブートストラップは失敗します。 新しいUbuntu 16.04クライアントをブートストラップする必要がある場合、クライアントのトラブルシューティングのトラブルシューティングプロシージャに従ってください。

手順: コマンドプロンプトからのソフトウェアチャンネルの追加
  1. SUSE Manager サーバのコマンドプロンプトで root になり、 spacewalk-common-channels コマンドを特定のチャンネルに対して実行します:

    spacewalk-common-channels \
    <base_channel_label>
    <child_channel_label_1> \
    <child_channel_label_2> \
    ... <child_channel_label_n>
  2. チャンネルの同期:

    spacewalk-repo-sync -p <base_channel_label>
  3. 続行前に、同期が完了していることを確認してください。

Table 3. Ubuntuチャンネル - CLI
OSバージョン メインチャンネル セキュリティチャンネル チャンネルの更新

Ubuntu 16.04

ubuntu-1604-amd64-main

ubuntu-1604-amd64-security

ubuntu-1604-amd64-updates

Ubuntu 18.04

ubuntu-1804-amd64-main

ubuntu-1804-amd64-main-security

ubuntu-1804-amd64-main-updates

このメソッドを使用して追加されたチャンネルはデフォルトでは定期的に同期されません。 SUSE Manager Web UIを使用して同期スケジュールを設定できます。 ソフトウェア  管理  チャンネルに移動し、追加したチャンネルをクリックし、リポジトリ  同期サブタブを選択します。 同期スケジュールを毎日または毎週に設定し、スケジュールをクリックします。

spacewalk-common-channelsによって提供されるクライアントツールのチャンネルの提供元はUyuniです。SUSEではありません。

2. 同期ステータスの確認

手順: Web UIからの同期の進捗状況の確認
  1. SUSE ManagerのWeb UIで、管理  セットアップウィザードに移動し、[製品]タブを選択します。 このダイアログには、同期中の各製品の完了バーが表示されます。

  2. 代わりに、ソフトウェア  管理  チャンネルに移動し、リポジトリに関連付けられているチャンネルをクリックします。 [リポジトリ]タブに移動し、[同期]をクリックし、[同期状態]をクリックします。

プロシージャ: コマンドプロンプトから同期の進捗状況を確認する
  1. SUSE Managerサーバのコマンドプロンプトで、rootとして、tailコマンドを使用して同期ログファイルを確認します。

    tail -f /var/log/rhn/reposync/<channel-label>.log
  2. それぞれの子チャンネルは、同期の進捗中にそれぞれのログを生成します。 同期が完了したことを確認するには、ベースチャンネルと子チャンネルのログファイルをすべて確認する必要があります。

Ubuntuチャンネルは非常に大きいことがあります。 同期に数時間かかる場合があります。

3. rootアクセス

UbuntuのrootユーザはデフォルトでSSHアクセスが無効になっています。

標準ユーザを使用してオンボードできるようにするには、sudoersファイルを編集する必要があります。

この問題は、自己インストールされたバージョンのUbuntuで発生します。 インストール時にデフォルトのユーザが管理特権を付与されている場合、sudoを使用して特権エスカレーションを実行するにはパスワードが必要です。 クラウドインスタンスでは、cloud-init/etc/sudoers.dの下にファイルを自動的に作成し、パスワードを必要とせずにsudoを介して特権エスカレーションを付与するため、この問題は発生しません。

プロシージャ: rootユーザーアクセスの許可
  1. クライアントで、sudoersファイルを編集します。

    sudo visudo

    この行をsudoersファイルの末尾に追加してsudoアクセス権をユーザに付与します。 Web UIでクライアントをブートストラップしているユーザの名前で<user>を置き換えます。

    <user>  ALL=NOPASSWD: /usr/bin/python, /usr/bin/python2, /usr/bin/python3, /var/tmp/venv-salt-minion/bin/python

このプロシージャによりrootアクセス権が付与されます。クライアントの登録に必要なパスワードは不要です。 クライアントは正常にインストールされると、root特権で実行されるため、アクセス権は不要です。 クライアントを正しくインストールした後、sudoersファイルからこの行を削除することをお勧めします。

4. クライアントの登録

Ubuntuクライアントを登録するには、ブートストラップリポジトリが必要です。 デフォルトでは、ブートストラップリポジトリは自動的に作成され、すべての同期製品に対して毎日再生成されます。 次のコマンドを使用して、コマンドプロンプトからブートストラップリポジトリを手動で作成できます。

mgr-create-bootstrap-repo

クライアントの登録については、クライアント登録の概要を参照してください。

5. トラブルシューティング: spacecmd Ubuntu 18.04クライアントのインストール

デフォルトの構成設定では、spacecmdのインストールが次のように失敗することがあります。

次のパッケージは依存関係が満たされていません 。
    spacecmd : 依存: python3-rpm。ただしインストールはできません

python3-rpmはUbuntuユニバースリポジトリの一部です。 このパッケージを使用可能にするには、クライアントでユニバースリポジトリを有効にします。

プロシージャ: ユニバースリポジトリの有効化
  1. Ubuntu 18.04クライアントで、/etc/apt/sources.listファイルを開き、ユニバースリポジトリをコメントアウトします。

  2. コマンドapt-get updateを実行します。

これで、spacecmdがインストール可能になりました。