SUSE Managerイメージを使用して仮想マシン環境でSUSE Managerをインストールする
1. 仮想マシンマネージャ(virt-manager)の設定
この章では、SUSE Managerに必要なカーネル仮想マシン(KVM)設定について説明します。 仮想マシンマネージャ(virt-manager)と組み合わせたKVMはこのインストールのサンドボックスとして使用されます。
SUSE Manager 4.3のVMイメージはさまざまな形式で提供されています。 これには、基礎となるOSビット(SUSE Linux Enterprise Server_15 SP4)とビルド時の最新のSUSE Managerソフトウェアが含まれます。 https://download.suse.com/から、環境に適したSUSE Managerイメージをダウンロードしてください。
次の表では、最低要件を指定しています。 これらは、1つのクライアントがあるサーバなど、クイックテストインストールに適しています。 運用環境を使用する場合、ハードウェア要件にリストされている要件を確認してください。 |
仮想マシン設定の概要 | |
---|---|
インストール方法 |
既存のディスクイメージのインポート |
OS: |
SUSE Linux Enterprise 15 SP4 |
メモリ: |
16GB |
CPU数: |
4 |
仮想ディスク: |
|
VirtIOディスク1 |
SUSE-Manager-Server.x86_64-4.3.10-KVM.qcow2 |
VirtIOディスク2 |
101GB( |
VirtIOディスク3 |
50GB( |
VirtIOディスク4 |
4GB(スワップ用) |
CDROM |
IgnitionまたはCloud Init設定ディスク |
名前: |
suse-manager-test-setup |
ネットワーク |
Bridge br0 |
SUSE Linux Enterprise仮想化ガイドの詳細については、https://documentation.suse.com/sles/15-SP4/html/SLES-all/book-virtualization.htmlを参照してください。 |
SUSE Manager VMイメージは、 |
2. Ignition
を使用したSUSE Managerの基本設定
Ignition
は、最初のブート時に仕様に従ってシステムを設定できるようにするプロビジョニングツールです。 システムが初めてブートされると、Ignition
がinitramfsの一部としてロードされ、特定のディレクトリ(USBフラッシュディスク上、またはURLを指定することもできます)内で設定ファイルを検索します。
Ignition
はJSON形式の設定ファイルを使用します。 このファイルの名前は config.ign
です。
config.ign
は、Ignitionの規定を提供するJSON設定ファイルです。 このファイルをJSONで手動で作成することも、Fuel Ignitionツールを使用して基本的な規定セットを生成することもできます。 Fuel Ignitionツールにはすべてのオプションが用意されているわけではないので、ファイルを手動で変更する必要がある場合があります。 詳細については、https://ignite.opensuse.org/を参照してください。
インストールする際、設定ファイルconfig.ign
は、ignition
というラベルのついた設定メディア上のignition
サブディレクトリに存在する必要があります。 ディレクトリ構造は次のようになっている必要があります。
<root directory> └── ignition └── config.ign
QEMU/KVM仮想マシンを設定する場合は、qemuコマンドの属性としてconfig.ign
ファイルへのパスを指定します。 例を以下に示します。
-fw_cfg name=opt/com.coreos/config,file=PATH_TO_config.ign
config.ign
ファイルには、オブジェクト、文字列、整数、ブール値、オブジェクトのリストなど、さまざまなデータ型が含まれています。 完全な仕様については、https://coreos.github.io/ignition/configuration-v3_3/を参照してください。
2.1. Ignitionを使用してrootパスワードを設定する
SUSE Manager VMイメージは、rootまたはその他のユーザアカウントをセットアップしません。 ユーザ認証またはroot
認証は、最初のブート時にセットアップする必要があります。 passwd
属性はユーザを追加するために使用されます。 システムにログインする場合は、rootを作成してrootのパスワードを設定するか、Ignition
設定にSSHキーを追加します。 たとえば、opensslコマンドを使用してrootパスワードをハッシュする必要があります。
openssl passwd -6
このコマンドは、選択したパスワードのハッシュを作成します。 このハッシュを、passwordHash
属性の値として使用します。
users属性には、少なくとも1つのname
属性が含まれている必要があります。ssh_authorized_keys
は、ユーザのsshキーのリストです。
root/ignition/config.ign
ファイルを次の内容で作成します。
{ "ignition": { "version": "3.2.0" }, "passwd": { "users": [ { "name": "root", "passwordHash": "$2a$10$qV298UV11u9lCFDjpHpCUe1cErBiVR.G3shukxs3.2PAO1xhJWs0K" } ] } }
次のコマンドを使用して、Ignition
ISOファイルを準備します。
mkisofs -full-iso9660-filenames -o suma_ignition.iso -V ignition root
作成したsuma_ignition.iso
ファイルを初回ブート時に仮想マシンにボリュームとしてアタッチします。 この特定の例では、root
パスワードをlinux
に設定しています。 この例のパスワードハッシュを自分のパスワードハッシュに置き換えてください。
Ignition
の詳細については、https://documentation.suse.com/sle-micro/5.4/single-html/SLE-Micro-deployment/#cha-images-ignitionを参照してください。
3. Cloud Initディスクを使用したSUSE Managerの基本設定
Cloud Init
は、最初のブート時に仕様に従ってシステムを設定できるようにするプロビジョニングツールです。 システムが初めてブートされると、Cloud Init service
がロードされ、特定のディレクトリ(USBフラッシュ ディスク上、またはURLを指定できます)内で設定ファイルを検索します。
Cloud Init
はYAML形式の設定ファイルをいくつか使用します。 使用されるファイルの名前は、meta-data
、network-config
、user-data
です。
Cloud Init
では、設定データを保存する多数のソースを使用できます。このガイドでは、ボリュームIDがcidata
のローカルisoイメージをソースとして使用します。ディレクトリ構造は次のようになっている必要があります。
<root directory> └── meta-data └── network-config └── user-data
QEMU/KVM仮想マシンを設定する場合は、qemuコマンドの属性としてconfig.ign
へのパスを指定します。例を以下に示します。
-fw_cfg name=opt/com.coreos/config,file=PATH_TO_config.ign
Cloud Init
では多くの管理オプションを使用できます。完全な仕様については、Cloud Init仕様(https://cloudinit.readthedocs.io/en/latest/index.html)を参照してください。
3.1. Cloud Initを使用してrootパスワードを設定する
たとえば、opensslコマンドを使用してrootパスワードをハッシュする必要があります。
openssl passwd -6
このコマンドは、選択したパスワードのハッシュを作成します。このハッシュを、password
属性の値として使用します。
次のコマンドを使用して、必要な設定ファイルを準備します。
touch network-config touch meta-data
user-data
という名前のファイルを次の内容で作成します。
#cloud-config chpasswd: expire: false users: - name: root password: $2a$10$qV298UV11u9lCFDjpHpCUe1cErBiVR.G3shukxs3.2PAO1xhJWs0K
次のコマンドを使用して、Cloud Init
ISOファイルを準備します。
mkisofs -rational-rock -joliet -o suma_cloudinit.iso -V cidata network-config meta-data user-data
作成したsuma_cloudinit.iso
ファイルをボリュームとして作成中の仮想マシンにアタッチします。 この特定の例では、root
パスワードをlinux
に設定しています。 この例のパスワードハッシュを自分のパスワードハッシュに置き換えてください。
4. SUSE Manager仮想マシンの設定
SUSE Managerのストレージパーティションに必要な追加の仮想ディスクを3つ作成します。
-
ダウンロードしたSUSE Manager KVMイメージを使用して新しい仮想マシンを作成し、[
Import existing disk image
](既存のディスクイメージをインポート)を選択します。 -
SUSE Linux Enterprise 15 SP4
をインストールされているオペレーティングシステムとして設定します。 -
RAMおよびCPU数を設定します(少なくとも16GBのRAMおよび4つのCPU)。
-
KVMマシンに名前を付け、[
Customize configuration before install
](インストール前に設定をカスタマイズ)チェックボックスを選択します。 -
ハードウェアの追加をクリックし、これらを指定して新しい仮想ディスクを3つ作成します。 これらのディスクは[proc.sumavm.susemgr.pre]でパーティション化され、マウントされます。
ストレージサイズの値は、絶対最小値です。これは小規模なテストまたはデモインストールにのみ適しています。 特に、
/var/spacewalk/
ではさらに大容量がすぐに必要になる場合があります。 Kiwiイメージが保存される/srv
用に別のパーティションを作成することも検討してください。VirtIOストレージディスク 名前 サイズ VirtIOディスク2
spacewalk
500 GB
VirtIOディスク3
pgsql
100 GB
VirtIOディスク4
swap
4 GB
-
ハードウェアの追加 をクリックして、仮想CDROMデバイスを準備した
Ignition
またはCloud Init
ディスクにアタッチします。 -
インストールの開始 をクリックして、SUSE Managerイメージから新しいVMをブートします。ログインプロンプトが表示されるまで待ちます。 設定ディスクによって設定された認証情報を使用してログインします。
5. SUSE Manager仮想マシンの設定 - VMWare
このセグメントでは、VMWare環境内のSUSE Managerストレージパーティションに不可欠な追加の仮想ディスクの作成に重点を置いて、VMWare設定を提供します。
-
SUSE Managerサーバ
.vmdk
ファイルをダウンロードし、コピーをVMwareストレージに転送します。 -
上記の手順を使用して作成した、準備済みのIgnitionまたはCloud Initディスクファイルをアップロードします。
-
ゲストOSファミリ
Linux
およびゲストOSバージョンSUSE Linux Enterprise 15 (64ビット)に基づいて、新しい仮想マシンを作成し、名前を付けます。 -
In
Customize settings
browse to the uploaded.vmdk
usingIDE controller 0
storage device in theController Location
. -
500 GB以上の
Hard Disk 2
を追加します。 -
RAMおよびCPU数を設定します(少なくとも16GBのRAMおよび4つのCPU)。
-
必要に応じてネットワークアダプタを設定します。
アップロードされた設定をDatastore ISO
として使用するように、CD/DVD Drive 1
を設定します。 接続の横のボックスにチェックを入れます。 最初にマシンの電源を入れるときに、このドライブが存在している必要があります。
-
VMの電源を入れ、設定ディスクによって設定された認証情報を使用してログインします。
6. SUSE Manager用の仮想マシンの準備
開始する前に、SUSEカスタマーセンター(https://scc.suse.com)からSUSE Manager登録コードを入手してください。
-
root
としてログインします。 -
SCCでSUSE Managerを登録します(
<productnumber>
を4.3
に置き換えたり、<architecture>
をx86_64
に置き換えるなど)。SUSEConnect -e<EMAIL_ADDRESS> -r<SUSE_MANAGER_CODE> \ -p SUSE-Manager-Server/<productnumber>/<architecture>
-
list extensionsコマンドを実行して、承認された拡張機能を検証します。
SUSEConnect --list-extensions
-
SUSE Managerリポジトリを追加します。
SUSEConnect -p sle-module-basesystem/15.4/x86_64 SUSEConnect -p sle-module-server-applications/15.4/x86_64 SUSEConnect -p sle-module-web-scripting/15.4/x86_64 SUSEConnect -p sle-module-suse-manager-server/<productnumber>/x86_64
-
SUSE Managerストレージを準備します:
suma-storage
コマンドは、SUSE Managerで使用するために以前に作成された外部ストレージを自動的に準備および設定します。 次のコマンドでは、最初のパラメータはSUSE Managerデータ用のデバイス、2番目のパラメータはデータベース用のデバイスです。suma-storage /dev/vdb /dev/vdc
-
これで、仮想マシンでSUSE Managerをセットアップする準備が整いました。
SUSE Managerの設定に進むには、SUSE Managerの設定を参照してください。