仮想マシンとしてのSUSE Multi-Linux Managerプロキシの配備 - KVM
この章では、SUSE Multi-Linux Manager 5.1プロキシをイメージとして配備するための仮想マシンの設定について説明します。このインストールでは、KVMを仮想マシンマネージャ(virt-manager)と組み合わせてサンドボックスとして使用します。
1. 利用可能なイメージ
|
SUSE Multi-Linux Managerプロキシを配備する際に推奨される方法は、利用可能な次のイメージの1つを使用することです。これらのイメージにはすべてのツールが含まれており、配備が容易になります。 |
SUSE Multi-Linux Manager 5.1プロキシのイメージはSUSE Multi-Linux Manager 5.1 VM imagesで入手できます。
|
カスタマイズされたSUSE Multi-Linux Manager 5.1 VMイメージは、SL Micro 6.1にのみ提供されます。SUSE Linux Enterprise Server 15 SP7で製品を実行するには、https://www.suse.com/download/sles/で入手可能な標準のSUSE Linux Enterprise Server 15 SP7インストールを使用し、その上でSUSE Multi-Linux Manager 5.1拡張機能を有効にします。 |
| アーキテクチャ | イメージの形式 |
|---|---|
aarch64 |
qcow2、vmdk |
x86_64 |
qcow2、vmdk、raw、セルフインストーラ |
2. 仮想マシンマネージャ(virt-manager)の設定
virt-managerを使用して、新しい仮想マシンを作成するときに、次の設定を入力します。
|
次の表は、最低要件を指定しています。これらは、クライアントが1つある1つのプロキシなど、テスト用の簡易的なインストールに適しています。 運用環境を使用する場合、ディスク容量に関する背景情報が必要な場合は、ハードウェア要件を参照してください。 |
| KVMの設定 | |
|---|---|
インストール方法 |
既存のディスクイメージのインポート |
OS: |
Linux |
バージョン: |
SUSE Multi-Linux Manager-Proxy.x86_64-5.1.*.qcow2 |
メモリ: |
最小*) |
CPU: |
最小*) |
ストレージフォーマット: |
.qcow2 40 GB (デフォルト)ルートパーティション |
名前: |
test-setup |
ネットワーク |
Bridge br0 |
*) 最小値については、installation-and-upgrade:hardware-requirements.adoc#proxy-hardware-requirementsを参照してください。
|
|
3. KVMの初期セットアップ
設定については、仮想マシンマネージャ(virt-manager)の設定を参照してください。
-
ダウンロードしたMinimal KVMイメージを使用して新しい仮想マシンを作成し、[
Import existing disk image](既存のディスクイメージをインポート)を選択します。 -
RAMおよびCPU数を最小値で設定します。*)
-
KVMマシンに名前を付け、[
Customize configuration before install](インストール前に設定をカスタマイズ)チェックボックスを選択します。 -
Begin Installation(インストールの開始)をクリックし、イメージからブートします。
-
[JeOS Firstboot]の画面で、[Start]を選択して続行します。
-
キーボードレイアウトを選択します。
-
ライセンス契約に同意します。
-
タイムゾーンを選択します。
-
rootのパスワードを入力します。
-
インストールが完了したら、rootとしてログインします。
-
次のセクションに進みます。
*) 最小値については、installation-and-upgrade:hardware-requirements.adoc#proxy-hardware-requirementsを参照してください。
4. SL MicroおよびSUSE Multi-Linux Manager 5.1プロキシの登録
-
仮想マシンをブートします。
-
rootとしてログインします。 -
SCCでSL Microを登録します。
transactional-update register -r <REGCODE> -e <your_email>
-
再起動します。
-
SUSE Customer CenterでSUSE Multi-Linux Manager 5.1プロキシを登録します。
transactional-update register -p Multi-Linux-Manager-Proxy/5.1/x86_64 -r <REGCODE>
-
再起動します。
-
システムを更新します。
transactional-update
-
更新が適用されていた場合は再起動します。
-
このステップはオプションです。ただし、ご使用のインフラストラクチャにカスタム永続ストレージが必要な場合は、
mgr-storage-proxyツールを使用します。 詳細については、mgr-storage-proxy --helpを参照してください。このツールを使用すると、コンテナボリュームの作成が容易になります。-
このコマンドは次のように使用します。
mgr-storage-proxy <storage-disk-device>
例:
mgr-storage-proxy /dev/nvme1n1
このコマンドは、
/var/lib/containers/storage/volumesにある永続ストレージボリュームを指定されたストレージデバイスに移動します。詳細については、以下を参照してください。
-
5. プロキシのアクティベーションキーの作成
に移動し、キーの作成をクリックします。
SL Micro 6.1またはSUSE Linux Enterprise Server 15 SP7を親チャンネルとして使用して、プロキシホストのアクティベーションキーを作成します。
このキーには、推奨されるすべてのチャンネルと、拡張機能の子チャンネルとしてのプロキシを含める必要があります。続行して、プロキシホストを
デフォルトクライアントとしてブートストラップします。
6. プロキシ設定の生成
SUSE Multi-Linux Managerプロキシの設定アーカイブはSUSE Multi-Linux Managerサーバによって生成されます。追加のプロキシごとに専用の設定アーカイブが必要です。
コンテナ化されたSUSE Multi-Linux Managerプロキシの場合、変更を有効にするには、新しいプロキシ設定ファイルを構築してから、コンテナを再配備する必要があります。 これは、SSL証明書を含む、設定を更新するためのプロセスです。
|
Podmanの配備では、このプロキシ設定を生成する前に、SUSE Multi-Linux ManagerプロキシのコンテナホストをSUSE Multi-Linux Managerサーバにクライアントとして登録する必要があります。 |
プロキシFQDNを使用して、登録済みのクライアントではないプロキシコンテナ設定を生成すると(Kubernetesのユースケースと同様)、新しいシステムエントリがシステム一覧に表示されます。この新しいエントリは、以前に入力されたプロキシFQDN値の下に表示され、外部システムタイプになります。
|
周辺機器サーバは常にサードパーティSSL証明書を使用しています。 ハブサーバが周辺機器サーバの証明書を生成している場合は、各プロキシの証明書も生成する必要があります。 ハブサーバで、次のコマンドを実行します。
使用するファイルは、
* ルートCAとして、 |
6.1. Web UIを使用したプロキシ設定の生成
Web UIで、に移動し、必要なデータを入力します。
[
プロキシFQDN]フィールドに、プロキシの完全修飾ドメイン名を入力します。[
親FQDN]フィールドに、SUSE Multi-Linux Managerサーバまたは別のSUSE Multi-Linux Managerプロキシの完全修飾ドメイン名を入力します。[
プロキシSSHポート]フィールドに、SSHサービスがSUSE Multi-Linux ManagerプロキシでリスンしているSSHポートを入力します。デフォルトの8022を維持することをお勧めします。[
Squidの最大キャッシュサイズ[MB]]フィールドタイプで、Squidキャッシュの最大許容サイズ。コンテナで使用可能なストレージの最大80%で使用することを推奨します。
2 GBはプロキシSquidのデフォルトのキャッシュサイズを表します。これは、環境に合わせて調整する必要があります。
[
SSL証明書]選択リストで、SUSE Multi-Linux Managerプロキシ用に新しいサーバ証明書を生成するか、既存のサーバ証明書を使用するかを選択します。 生成された証明書は、SUSE Multi-Linux Manager組み込みの(自己署名)証明書とみなすことができます。+
選択に応じて、新しい証明書を生成するための署名CA証明書へのパス、またはプロキシ証明書として使用される既存の証明書とそのキーへのパスのいずれかを指定します。
+
サーバによって生成されたCA証明書は、
/var/lib/containers/storage/volumes/root/_data/ssl-buildディレクトリに保存されます。+
既存の証明書またはカスタム証明書、および企業証明書と中間証明書の概念の詳細については、SSL証明書のインポートを参照してください。
生成をクリックして、SUSE Multi-Linux Managerサーバに新しいプロキシFQDNを登録し、コンテナホストの詳細を含む設定アーカイブ(
config.tar.gz)を生成します。しばらくすると、ダウンロードするファイルが表示されます。このファイルをローカルに保存します。
6.2. spacecmdと自己署名証明書を使用したプロキシ設定の生成
spacecmdを使用してプロキシ設定を生成できます。
SSHでコンテナホストに接続します。
次のコマンドを実行してサーバとプロキシ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'生成された設定をサーバコンテナからコピーします。
mgrctl cp server:/tmp/config.tar.gz .
6.3. spacecmdとカスタム証明書を使用したプロキシ設定の生成
デフォルトの自己署名証明書ではなくカスタム証明書に対してspacecmdを使用して、プロキシ設定を生成できます。
サーバコンテナホストにSSHで接続します。
次のコマンドを実行してサーバとプロキシ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'設定で中間CAを使用する場合は、それもコピーし、
-iオプション付きでコマンドに含めます(必要に応じて複数回指定できます)。mgrctl cp intermediateCA.pem server:/tmp/intermediateCA.pem mgrctl exec -ti 'spacecmd proxy_container_config -- -p 8022 -i /tmp/intermediateCA.pem pxy.example.com srv.example.com 2048 email@example.com /tmp/ca.crt /tmp/proxy.crt /tmp/proxy.key -o /tmp/config.tar.gz'生成された設定をサーバコンテナからコピーします。
mgrctl cp server:/tmp/config.tar.gz .
7. プロキシ設定の転送
Web UIによって設定アーカイブが生成されます。このアーカイブをプロキシコンテナホストで利用できるようにする必要があります。
まだ実行していない場合は、前のステップで生成された設定アーカイブ (
config.tar.gz)をサーバコンテナからサーバホストにコピーします。mgrctl cp server:/root/config.tar.gz .まだ実行していない場合は、サーバホストからプロキシホストにファイルをコピーします。
scp config.tar.gz <proxy-FQDN>:/root
8. SUSE Multi-Linux Manager 5.1プロキシの起動
mgrpxyコマンドを使用してコンテナを起動できます。
-
次のコマンドを呼び出してプロキシを起動します。
mgrpxy start
-
次のコマンドを呼び出してコンテナのステータスを確認します。
mgrpxy status
5つのSUSE Multi-Linux Managerプロキシコンテナが存在し、また、
proxy-podコンテナポッドの一部である必要があります。-
proxy-salt-broker
-
proxy-httpd
-
proxy-tftpd
-
proxy-squid
-
proxy-ssh
-
8.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
このコマンドは、すべてのサービスの設定をグローバルデフォルトにリセットして再ロードします。