부팅 이미지 구성 툴
SUSE Manager VM 이미지는 JeOS firstboot 구성 대화 상자를 사용하여 준비됩니다. |
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.ign
은 ignition
으로 레이블이 지정된 구성 미디어의 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에서 확인할 수 있습니다.