자동 설치 프로파일
SUSE Multi-Linux Manager에서 설치할 클라이언트의 운영 체제에 따라 두 가지 유형의 프로파일을 사용할 수 있습니다:
-
SUSE Linux Enterprise 또는 openSUSE 클라이언트의 경우 AutoYaST를 사용하십시오.
-
Red Hat Enterprise Linux 클라이언트의 경우 Kickstart를 사용하십시오.
자동 설치 프로파일은 운영 체제가 설치되는 방식을 결정합니다. 예를 들어, 설치 프로그램에 전달할 추가 커널 파라미터를 지정할 수 있습니다.
프로파일의 가장 중요한 부분은 *자동 설치 파일*입니다. 설치를 수동으로 수행할 때는 파티셔닝 및 네트워킹 정보와 사용자 세부 정보를 설치 프로그램에 제공해야 합니다. 자동 설치 파일은 이 정보를 스크립트 형식으로 제공하는 방법입니다. 이 유형의 파일은 때때로 *답변 파일*이라고도 합니다.
운영 체제가 다양한 클라이언트를 설치하려는 경우 AutoYaST 및 Kickstart 프로파일을 모두 사용할 수 있습니다.
-
프로파일 선언 방법에 대한 정보는 프로파일 선언을 참조하십시오.
-
AutoYaST 프로파일에 대한 정보는 AutoYaST 프로파일을 참조하십시오.
-
Kickstart 프로파일에 대한 정보는 킥스타트 프로파일을 참조하십시오.
프로파일에 포함된 자동 설치 파일은 변수 및 코드 조각을 포함할 수 있습니다. 변수 및 코드 조각에 대한 정보는 템플릿 구문을 참조하십시오.
1. 프로파일 선언
자동 설치 파일과 배포판을 준비한 후에는 SUSE Multi-Linux Manager 서버에서 자동 설치를 관리하기 위한 프로파일을 생성할 수 있습니다. 프로파일은 선택한 배포판을 설치하는 방법을 결정합니다. 프로파일을 생성하는 한 가지 방법은 AutoYaST 또는 Kickstart 파일을 업로드하는 것입니다. 또는 Kickstart의 경우에만 Web UI 마법사를 사용할 수 있습니다.
-
SUSE Multi-Linux Manager Web UI에서 로 이동합니다.
-
킥스타트/AutoYaST 파일 업로드를 클릭합니다.
-
Label필드에 프로파일의 이름을 입력합니다. 공백을 사용하지 마십시오. -
Autoinstall Tree필드에서 이 프로파일에 사용할 자동 설치 가능한 배포판을 선택합니다. -
Virtualization Type필드에서 이 프로파일에 사용할 가상화 유형을 선택하거나, 새로운 가상 머신을 생성하기 위해 이 프로파일을 사용하고 싶지 않다면 `None`을(를) 선택합니다. -
File Contents필드에 자동 설치 파일의 내용을 복사하거나File to Upload필드를 사용하여 파일을 직접 업로드하십시오.여기에 포함할 세부정보에 대한 자세한 내용은 AutoYaST 프로파일 또는 킥스타트 프로파일을 참조하십시오.
-
생성을 클릭하여 프로파일을 생성합니다.
-
SUSE Multi-Linux Manager Web UI에서 로 이동합니다.
-
킥스타트 프로파일 생성을 클릭합니다.
-
Label필드에 프로파일의 이름을 입력합니다. 공백을 사용하지 마십시오. -
Base Channel필드에서 이 프로파일에 사용할 기본 채널을 선택합니다. 이 필드는 사용 가능한 배포판에서 채워집니다. 필요한 기본 채널이 없으면 배포판을 올바르게 생성했는지 확인하십시오. -
Virtualization Type필드에서 이 프로파일에 사용할 가상화 유형을 선택하거나, 가상화가 필요하지 않다면 `None`을(를) 선택합니다. -
다음을 클릭합니다.
-
`Distribution File Location`에 SUSE Multi-Linux Manager 서버에 설치된 설치 미디어의 경로를 입력합니다.
-
다음을 클릭합니다.
-
클라이언트에서 루트 사용자에게 비밀번호를 제공합니다.
-
완료를 클릭합니다.
-
새 프로파일의 상세 정보를 검토하고 필요에 따라 사용자 정의합니다.
자동 설치 프로파일을 생성할 때 `Always use the newest Tree for this base channel`을(를) 확인할 수 있습니다. 이 설정은 SUSE Multi-Linux Manager가 지정된 기본 채널과 관련된 최신 배포판을 자동으로 선택할 수 있게 합니다. 나중에 새로운 배포판을 추가하면 SUSE Multi-Linux Manager는 가장 최근에 생성되거나 수정된 것을 사용합니다.
Virtualization Type`을(를) 변경하면 일반적으로 프로파일 부트로더 및 파티션 옵션을 변경해야 합니다.
이로 인해 사용자 정의가 덮어씌워질 수 있습니다.
저장하기 전에 `Partitioning 탭으로 이동하여 새로 추가되거나 변경된 설정을 확인하십시오.
배포판 및 프로파일의 커널 옵션은 결합되어 있습니다.
자동 설치 프로파일의 세부정보 및 설정을 변경하려면 로 이동하여 편집할 프로파일의 이름을 클릭하십시오. 또는 으로 이동하여 프로비저닝할 클라이언트를 선택하고 하위 탭으로 이동하십시오.
2. AutoYaST 프로파일
AutoYaST 프로파일은 프로파일을 식별하는 Label, 자동 설치 가능한 배포판을 가리키는 Autoinstall Tree, 여러 옵션 및 가장 중요한 AutoYaST 설치 파일로 구성됩니다.
AutoYaST 설치 파일은 AutoYaST 설치 프로그램에 지침을 제공하는 XML 파일입니다. AutoYaST는 이를 "제어 파일"이라고 부릅니다. AutoYaST 설치 파일의 전체 구문은 https://doc.opensuse.org/projects/autoyast/#cha-configuration-installation-options.를 참조하십시오.
SUSE은 사용자 정의 파일의 시작점으로 사용할 수 있는 AutoYaST 설치 파일의 템플릿을 제공합니다.
템플릿은 https://github.com/SUSE/manager-build-profiles 디렉토리의 AutoYast`에서 찾을 수 있습니다.
이 프로파일 각각은 사용하기 전에 몇 가지 변수를 설정해야 합니다.
어떤 변수가 필요한지 확인하려면 스크립트와 함께 제공된 `README 파일을 확인하십시오.
AutoYaST 스크립트에서 변수를 사용하는 방법에 대한 자세한 내용은 변수를 참조하십시오.
|
제공된 AutoYaST 템플릿은 사용자 비밀번호를 설정하지 않습니다. 루트 사용자 및 기타 사용자 계정과 비밀번호 또는 기타 인증 수단을 설정하는 것을 고려하십시오. AutoYaST 프로파일의 사용자 계정에 대한 자세한 내용은 https://doc.opensuse.org/projects/autoyast/#Configuration-Security-users-and-groups.을 참조하십시오. |
다음은 SUSE Multi-Linux Manager로 설치하기 위한 AutoYaST 설치 파일에서 가장 중요한 부분입니다.
-
`<add-on>`은(는) 설치에 하위 채널을 추가할 수 있습니다. 예를 보려면 https://doc.opensuse.org/projects/autoyast/#Software-Selections-additional.을 참조하십시오.
-
`<general>$SNIPPET('spacewalk/sles_no_signature_checks')</general>`은(는) 서명 확인을 비활성화합니다.
-
`<software>`은(는) Unified Installer에 대한 제품을 지정할 수 있습니다.
-
"<software>" 예제가 포함된 https://doc.opensuse.org/projects/autoyast/#CreateProfile-Software을 참조하십시오.
-
-
`<init-scripts config:type="list">$SNIPPET('spacewalk/minion_script')</init-scripts>`은(는) 클라이언트가 Salt 클라이언트로 SUSE Multi-Linux Manager에 등록할 수 있게 합니다.
AutoYaST에 대한 자세한 내용은 https://doc.opensuse.org/projects/autoyast/.을 참조하십시오.
보다 최근의 Salt 기반 대안은 AutoYaST에 대한 Yomi입니다. Yomi에 대한 정보는 Yomi로 설치을 참조하십시오.
3. 킥스타트 프로파일
Kickstart 프로파일은 많은 구성 옵션을 제공합니다. 이 프로파일을 생성하려면 업로드하거나 전용 마법사를 사용할 수 있습니다.
Kickstart 프로파일은 파일 보관 목록을 사용할 수 있습니다. Kickstart로 재설치하려는 클라이언트에 많은 사용자 정의 구성 파일이 있는 경우, 이를 목록으로 저장하고 해당 목록을 Kickstart 프로파일과 연결할 수 있습니다.
-
SUSE Multi-Linux Manager Web UI에서 으로 이동한 후 파일 보관 목록 생성을 클릭하십시오.
-
적절한 레이블을 입력하고 저장하려는 모든 파일 및 디렉토리의 절대 경로를 나열합니다.
-
목록 생성을 클릭하십시오.
-
프로파일Kickstart에 파일 보관 목록을 포함시킵니다.
-
로 이동한 후 편집할 프로파일을 선택하고 하위 탭으로 이동하여 포함할 파일 보관 목록을 선택합니다.
|
파일 보관 목록은 총 크기가 1 MB로 제한됩니다.
|
Kickstart에 대한 자세한 설명은 Red Hat 문서를 참조하십시오.
4. 템플릿 구문
설치 중에 설치 파일의 일부가 교체됩니다. 변수는 단일 값으로 교체되며, 코드 조각은 전체 텍스트 섹션으로 교체됩니다. 이스케이프된 기호나 섹션은 교체되지 않습니다.
Cheetah라는 템플릿 엔진은 Cobbler이 이러한 교체를 수행할 수 있도록 합니다. 이 메커니즘은 각 시스템에 대해 수동으로 프로파일을 생성할 필요 없이 대량의 시스템을 재설치할 수 있게 해줍니다.
SUSE Multi-Linux Manager Web UI 내에서 자동 설치 변수 및 코드 조각을 생성할 수 있습니다.
프로파일 내에서 Autoinstallation File 탭은 치환 결과를 볼 수 있게 해줍니다.
4.1. 비활성화
자동 설치 변수는 Kickstart 및 AutoYaST 프로파일에 값을 대체하는 데 사용할 수 있습니다.
변수를 정의하려면 프로파일에서 Variables 하위 탭으로 이동하여 텍스트 상자에 name=value 쌍을 만듭니다.
예를 들어, 클라이언트의 IP 주소를 보유하는 변수를 만들고, 게이트웨이의 주소를 보유하는 또 다른 변수를 만들 수 있습니다.
이러한 변수는 동일한 프로파일에서 설치된 모든 클라이언트에 대해 정의될 수 있습니다.
이를 위해 Variables 텍스트 상자에 다음 줄을 추가하십시오:
ipaddr=192.168.0.28 gateway=192.168.0.1
변수를 사용하려면 프로파일에서 값을 대체하기 위해 $ 기호를 앞에 붙입니다.
예를 들어, network 파일의 Kickstart 부분은 다음과 같이 보일 수 있습니다:
network --bootproto=static --device=eth0 --onboot=on --ip=$ipaddr \ --gateway=$gateway
`$ipaddr`은(는) `192.168.0.28`로 변환되며, `$gateway`은(는) `192.168.0.1`로 변환됩니다.
설치 파일에서 변수는 계층 구조를 사용합니다. 시스템 변수는 프로파일 변수보다 우선하며, 프로파일 변수는 디스트리뷰션 변수보다 우선합니다.
4.2. 코드 조각
SUSE Multi-Linux Manager은 많은 수의 미리 정의된 코드 조각을 포함하고 있습니다. 기존 코드 조각 목록을 보려면 로 이동하십시오.
자신의 자동 설치 파일에 $SNIPPET() 매크로를 삽입하여 코드 조각을 사용하십시오.
예를 들어, Kickstart에서:
$SNIPPET('spacewalk/redhat_register_using_salt')
또는, AutoYaST에서:
<init-scripts config:type="list">
$SNIPPET('spacewalk/minion_script')
</init-scripts>
매크로는 Cobbler에 의해 구문 분석되고 코드 조각의 내용으로 대체됩니다. 나중에 자동 설치 파일에서 사용할 수 있도록 자신의 코드 조각을 저장할 수도 있습니다. 새로운 코드 조각을 만들려면 코드 조각 생성을 클릭하십시오.
다음 예에서는 일반 하드 드라이브 파티션 구성에 대한 Kickstart 코드 조각을 설정합니다:
clearpart --all part /boot --fstype ext3 --size=150 --asprimary part / --fstype ext3 --size=40000 --asprimary part swap --recommended part pv.00 --size=1 --grow volgroup vg00 pv.00 logvol /var --name=var vgname=vg00 --fstype ext3 --size=5000
예를 들어, 다음과 같이 코드 조각을 사용합니다.
$SNIPPET('my_partition')
4.3. 이스케이핑
자동 설치 파일에 $(example)`와 같은 셸 스크립트 변수가 포함되어 있으면, 해당 내용은 백슬래시로 이스케이프해야 합니다: `\$(example).
$ 기호를 이스케이프하면 템플릿 엔진이 기호를 내부 변수로 평가하지 않도록 방지합니다.
코드 조각이나 스크립트와 같은 텍스트 블록은 \#raw 및 \#end raw 지시어로 래핑하여 이스케이프할 수 있습니다.
예:
#raw
#!/bin/bash
for i in {0..2}; do
echo "$i - Hello World!"
done
#end raw
# 기호 다음에 공백 문자가 있는 모든 줄은 주석으로 간주되어 평가되지 않습니다.
예:
# start some section (this is a comment) echo "Hello, world" # end some section (this is a comment)