仮想マシンとしてのSUSE Multi-Linux Managerプロキシの配備 - KVM

この章では、SUSE Multi-Linux Manager 5.1プロキシをイメージとして配備するための仮想マシンの設定について説明します。このインストールでは、KVMを仮想マシンマネージャ(virt-manager)と組み合わせてサンドボックスとして使用します。

1. 利用可能なイメージ

The preferred method for deploying SUSE Multi-Linux Manager Proxy is to use one of the following available images. All tools are included in these images simplifying deployment.

SUSE Multi-Linux Manager 5.1プロキシのイメージはSUSE Multi-Linux Manager 5.1 VM imagesで入手できます。

Table 1. 利用可能なプロキシイメージ
アーキテクチャ イメージの形式

aarch64

qcow2、vmdk

x86_64

qcow2、vmdk、raw、セルフインストーラ

2. 仮想マシンマネージャ(virt-manager)の設定

virt-managerを使用して、新しい仮想マシンを作成するときに、次の設定を入力します。

This table specifies the minimum requirements. These are suitable for a quick test installation, such as a proxy with one client.

If you want to use a production environment and need background information about disk space, see ハードウェア要件.

KVM Settings

Installation Method

Import Existing Disk Image

OS:

Linux

Version:

SUSE Multi-Linux Manager-Proxy.x86_64-5.1.*.qcow2

Memory:

Minimum *)

CPU’s:

Minimum *)

Storage Format:

.qcow2 40 GB (Default) Root Partition

Name:

test-setup

Network

Bridge br0

/var/lib/containers/storage/volumes 100GB以上。ストレージ要件は、使用するISOディストリビューションイメージ、コンテナ、およびブートストラップリポジトリの数に合わせて計算する必要があります。

3. KVMの初期セットアップ

プロシージャ: 初期セットアップを作成する
  1. ダウンロードしたMinimal KVMイメージを使用して新しい仮想マシンを作成し、[Import existing disk image ](既存のディスクイメージをインポート)を選択します。

  2. Configure RAM and number of CPUs with minimum values. *)

  3. KVMマシンに名前を付け、[Customize configuration before install](インストール前に設定をカスタマイズ)チェックボックスを選択します。

  4. Begin Installation(インストールの開始)をクリックし、イメージからブートします。

  5. [JeOS Firstboot]の画面で、[Start]を選択して続行します。

    jeos firstboot
  6. キーボードレイアウトを選択します。

    select keyboard
  7. ライセンス契約に同意します。

    accept license agreement
  8. タイムゾーンを選択します。

    enter timezone
  9. rootのパスワードを入力します。

    root password
  10. インストールが完了したら、rootとしてログインします。

  11. 次のセクションに進みます。

4. Register SL Micro and SUSE Multi-Linux Manager 5.1 Proxy

Procedure: Registering SL Micro and SUSE Multi-Linux Manager 5.1 Proxy
  1. 仮想マシンをブートします。

  2. rootとしてログインします。

  3. SCCでSL Microを登録します。

    transactional-update register -r <REGCODE> -e <your_email>
  4. 再起動します。

  5. SUSE Customer CenterでSUSE Multi-Linux Manager 5.1プロキシを登録します。

    transactional-update register -p SUSE-Manager-Proxy/5.1/x86_64 -r <REGCODE>
  6. 再起動します。

  7. システムを更新します。

    transactional-update
  8. 更新が適用されていた場合は再起動します。

  9. このステップはオプションです。ただし、ご使用のインフラストラクチャにカスタム永続ストレージが必要な場合は、mgr-storage-proxyツールを使用します。

    • 詳細については、mgr-storage-proxy --helpを参照してください。このツールを使用すると、コンテナボリュームの作成が容易になります。

    • このコマンドは次のように使用します。

      mgr-storage-proxy <storage-disk-device>

      例:

      mgr-storage-proxy /dev/nvme1n1

      このコマンドは、/var/lib/containers/storage/volumesにある永続ストレージボリュームを指定されたストレージデバイスに移動します。

      詳細については、以下を参照してください。

5. プロキシのアクティベーションキーの作成

プロシージャ: アクティベーションキーの作成
  1. Navigate to Systems  Activation Keys , and click Create key.

  2. SLE Micro 6.1を親チャンネルとして使用して、プロキシホストのアクティベーションキーを作成します。このキーには、推奨されるすべてのチャンネルと、拡張機能としてのプロキシの子チャンネルが含まれる必要があります。

  3. 続行して、プロキシホストをデフォルトクライアントとしてブートストラップします。

6. クライアントとしてのプロキシホストのブートストラップ

プロシージャ: プロキシホストのブートストラップ
  1. システム  ブートストラップを選択します。

  2. プロキシホストのフィールドに入力します。

  3. ドロップダウンから、前のステップで作成したアクティベーションキーを選択します。

  4. Click ブートストラップをクリックします。

  5. ブートストラッププロセスが完了するまで待ちます。Saltメニューをチェックし、Saltキーが一覧表示されていて受け入れられていることを確認します。

  6. プロキシホストを再起動します。

  7. すべてのイベントが終了したら、システムの一覧からホストを選択して2回目の再起動をトリガし、オンボーディングを完了します。

プロシージャ: プロキシホストの更新
  1. システムの一覧からホストを選択し、すべてのパッチを適用してホストを更新します。

  2. プロキシホストを再起動します。

7. Generate Proxy Configuration

SUSE Multi-Linux Managerプロキシの設定アーカイブはSUSE Multi-Linux Managerサーバによって生成されます。追加のプロキシごとに専用の設定アーカイブが必要です。

Podmanの配備では、このプロキシ設定を生成する前に、SUSE Multi-Linux ManagerプロキシのコンテナホストをSUSE Multi-Linux Managerサーバにクライアントとして登録する必要があります。

プロキシFQDNを使用して、登録済みのクライアントではないプロキシコンテナ設定を生成すると(Kubernetesのユースケースと同様)、新しいシステムエントリがシステム一覧に表示されます。この新しいエントリは、以前に入力されたプロキシFQDN値の下に表示され、外部システムタイプになります。

7.1. Web UIを使用したプロキシ設定の生成

Procedure: Generating a Proxy Container Configuration Using Web UI
  1. Web UIで、システム  プロキシの設定に移動し、必要なデータを入力します。

  2. プロキシFQDN]フィールドに、プロキシの完全修飾ドメイン名を入力します。

  3. 親FQDN]フィールドに、SUSE Multi-Linux Managerサーバまたは別のSUSE Multi-Linux Managerプロキシの完全修飾ドメイン名を入力します。

  4. プロキシSSHポート]フィールドに、SSHサービスがSUSE Multi-Linux ManagerプロキシでリスンしているSSHポートを入力します。デフォルトの8022を維持することをお勧めします。

  5. In the Max Squid cache size [MB] field type maximal allowed size for Squid cache. Recommended is to use at most 80% of available storage for the containers.

    2 GBはプロキシSquidのデフォルトのキャッシュサイズを表します。これは、環境に合わせて調整する必要があります。

  6. SSL証明書]選択リストで、SUSE Multi-Linux Managerプロキシ用に新しいサーバ証明書を生成するか、既存のサーバ証明書を使用するかを選択します。 生成された証明書は、SUSE Multi-Linux Manager組み込みの(自己署名)証明書とみなすことができます。

    選択に応じて、新しい証明書を生成するための署名CA証明書へのパス、またはプロキシ証明書として使用される既存の証明書とそのキーへのパスのいずれかを指定します。

    サーバによって生成されたCA証明書は、/var/lib/containers/storage/volumes/root/_data/ssl-buildディレクトリに保存されます。

    既存の証明書またはカスタム証明書、および企業証明書と中間証明書の概念の詳細については、SSL証明書のインポートを参照してください。

  7. 生成をクリックして、SUSE Multi-Linux Managerサーバに新しいプロキシFQDNを登録し、コンテナホストの詳細を含む設定アーカイブ(config.tar.gz)を生成します。

  8. しばらくすると、ダウンロードするファイルが表示されます。このファイルをローカルに保存します。

7.2. Generate Proxy Configuration With spacecmd and Self-Signed Certificate

spacecmdを使用してプロキシ設定を生成できます。

プロシージャ: spacecmdと自己署名証明書を使用してプロキシ設定を生成する
  1. SSHでコンテナホストに接続します。

  2. 次のコマンドを実行してサーバとプロキシFQDNを置き換えます。

    mgrctl exec -ti 'spacecmd proxy_container_config_generate_cert -- dev-pxy.example.com dev-srv.example.com 2048 email@example.com -o /tmp/config.tar.gz'
  3. 生成された設定をサーバコンテナからコピーします。

    mgrctl cp server:/tmp/config.tar.gz .

7.3. Generate Proxy Configuration With spacecmd and Custom Certificate

デフォルトの自己署名証明書ではなくカスタム証明書に対してspacecmdを使用して、プロキシ設定を生成できます。

プロシージャ: spacecmdとカスタム証明書を使用してプロキシ設定を生成する
  1. サーバコンテナホストにSSHで接続します。

  2. 次のコマンドを実行してサーバとプロキシFQDNを置き換えます。

    for f in ca.crt proxy.crt proxy.key; do
      mgrctl cp $f server:/tmp/$f
    done
    mgrctl exec -ti 'spacecmd proxy_container_config -- -p 8022 pxy.example.com srv.example.com 2048 email@example.com /tmp/ca.crt /tmp/proxy.crt /tmp/proxy.key -o /tmp/config.tar.gz'
  3. 生成された設定をサーバコンテナからコピーします。

    mgrctl cp server:/tmp/config.tar.gz .

8. プロキシ設定の転送

Web UIによって設定アーカイブが生成されます。このアーカイブをプロキシコンテナホストで利用できるようにする必要があります。

プロシージャ: プロキシ設定をコピーする
  1. まだ実行していない場合は、前のステップで生成された設定アーカイブ (config.tar.gz)をサーバコンテナからサーバホストにコピーします。

    mgrctl cp server:/root/config.tar.gz .
  2. まだ実行していない場合は、サーバホストからプロキシホストにファイルをコピーします。

    scp config.tar.gz <proxy-FQDN>:/root
  3. プロキシホストで、次のコマンドを使用してプロキシをインストールします。

    mgrpxy install podman config.tar.gz

9. SUSE Multi-Linux Manager 5.1プロキシの起動

mgrpxyコマンドを使用してコンテナを起動できます。

プロシージャ: プロキシを起動してステータスを確認する
  1. 次のコマンドを呼び出してプロキシを起動します。

    mgrpxy start
  2. 次のコマンドを呼び出してコンテナのステータスを確認します。

    mgrpxy status

    5つのSUSE Multi-Linux Managerプロキシコンテナが存在し、また、proxy-podコンテナポッドの一部である必要があります。

    • proxy-salt-broker

    • proxy-httpd

    • proxy-tftpd

    • proxy-squid

    • proxy-ssh

9.1. サービスにカスタムコンテナイメージを使用する

デフォルトでは、SUSE Multi-Linux Managerプロキシスイートは、その各サービスに対して同じイメージバージョンとレジストリパスを使用するように設定されています。ただし、末尾に-tagおよび-imageを指定してインストールパラメータを使用し、特定のサービスのデフォルト値を上書きすることは可能です。

たとえば、次のように使用します。

mgrpxy install podman --httpd-tag 0.1.0 --httpd-image registry.opensuse.org/uyuni/proxy-httpd /path/to/config.tar.gz

これは、httpdサービスの設定ファイルを調整してから再起動します。registry.opensuse.org/uyuni/proxy-httpdsは使用するイメージ、0.1.0はバージョンタグです。

値をデフォルトにリセットするには、これらのパラメータを指定せずにもう一度installコマンドを実行します。

mgrpxy install podman /path/to/config.tar.gz

このコマンドは、すべてのサービスの設定をグローバルデフォルトにリセットして再ロードします。