부팅 이미지 구성 툴

SUSE Manager VM 이미지는 JeOS firstboot 구성 대화 상자를 사용하여 준비됩니다. Ignition 같은 부팅 이미지 구성 툴을 사용하는 것은 이제 선택 사항입니다.

1. 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.ignignition으로 레이블이 지정된 구성 미디어의 ignition 하위 디렉토리에 있어야 합니다. 디렉토리 구조는 다음과 같아야 합니다.

<root directory>
└── ignition
    └── config.ign

QEMU/KVM 가상 머신을 구성하려면 config.ign 파일의 경로를 qemu 명령의 특성으로 제공합니다. 예:

-fw_cfg name=opt/com.coreos/config,file=PATH_TO_config.ign

config.ign 파일에는 객체, 문자열, 정수, 부울, 객체 목록의 다양한 데이터 형식이 포함되어 있습니다. 전체 사양은 https://coreos.github.io/ignition/configuration-v3_3/에서 확인할 수 있습니다.

1.1. Ignition을 사용하여 루트 비밀번호 설정

SUSE Manager VM 이미지가 루트 또는 다른 사용자 계정을 설정하지 않습니다. 처음 부팅할 때 사용자 또는 root 인증을 설정해야 합니다. passwd 특성을 사용하여 사용자를 추가할 수 있습니다. 시스템에 로그인하려면 루트를 생성하고 루트의 비밀번호를 설정하거나 Ignition 구성에 SSH 키를 추가합니다. 예를 들어, openssl 명령을 사용하여 루트 비밀번호를 해시해야 합니다.

openssl passwd -6

이 명령은 사용자가 선택한 비밀번호의 해시를 생성합니다. 이 해시를 passwordHash 특성의 값으로 사용합니다.

사용자 특성에는 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 파일을 처음 부팅할 때 가상 머신에 볼륨으로 연결합니다. 이 특정 예제에서는 루트 비밀번호를 linux로 설정합니다. 이 예제의 비밀번호 해시를 본인의 비밀번호 해시로 바꿉니다.

Ignition에 대한 자세한 내용은 https://documentation.suse.com/sle-micro/5.4/single-html/SLE-Micro-deployment/#cha-images-ignition에서 확인할 수 있습니다.