SSH 액세스도 제공하는 원격 시스템에서 GRML 이미지로 PXE 부팅을 할 수 있다고 가정해 보겠습니다.
이제 문제는 이러한 환경에 CentOS를 설치하는 방법입니다.
KVM 액세스와 같은 기능은 사용할 수 없습니다.
몇 년 전에 비슷한 환경에서 debootstrap을 사용하여 데비안을 성공적으로 설치했습니다. CentOS/RHEL과 비슷한 것이 있습니까?
이러한 환경에 CentOS/RHEL을 설치하는 가장 진보된 방법은 무엇입니까?
답변1
RHEL 또는 이를 기반으로 하는 배포판을 자동으로 설치하려면 다음을 사용하세요.시작하다.
RHEL 서버를 구축하면 /root/anaconda-ks.cfg
중복 호스트를 구축하는 데 사용할 수 있는 파일이 생성됩니다.
여러 가지 옵션이 있으며 그 중 두 가지가 가장 적합합니다.
1. 사용자 정의 Live CD/이동식 미디어kskstart 이미지.
2. 전체 PXE boot
네트워크 설치.
ks
네트워크 설치에는 파일과 설치 소스가 포함된 네트워크 공유가 필요합니다.
그러면 귀하의 환경은 PXE
/ 서버 및 호스트 MAC 주소에서만 boot
사용할 킥스타트 구성을 식별 할 수 있습니다.boot
kickstart
인용하다
답변2
qemu KVM 인스턴스에서 최소 설치를 준비한 다음 이미지를 원격 시스템으로 전송할 수 있습니다.
RAID-1 Centos 7 시스템 설치를 예로 들어 보겠습니다.
로컬 워크스테이션에서:
$ truncate --size 5G disk1.img
$ truncate --size 5G disk2.img
$ qemu-system-x86_64 \
-cdrom CentOS-7.0-1406-x86_64-DVD/CentOS-7.0-1406-x86_64-DVD.iso \
-hda disk1.img -hdb disk2.img -m 2G -boot d -enable-kvm \
-net user,hostfwd=tcp::10022-:22 -net nic # enable net, ssh portforwarding
qemu 인스턴스에서는 공식적으로 권장되는 설치 프로그램을 사용하여 CentOS 7을 설치할 수 있습니다. 즉, 디스크 2개 선택, 수동 파티셔닝, 자동 파티션 생성, /volume 그룹에 대해 raid1 선택, /boot 장치 유형 설정에서 raid1 선택 등이 가능합니다. 설치가 완료되면 시스템 업데이트 yum update
, 시스템 GPG 키 승인, 네트워크 구성(대상 시스템의 MAC 주소 사용), SSH 키 등과 같은 몇 가지 기본 사항을 쉽게 구성할 수도 있습니다.
향후 크기 조정을 위해서는 RAID 1 쓰기 의도 비트맵(가상 머신 내부)을 비활성화하는 것이 중요합니다.
# mdadm --grow /dev/md/*pv00 --bitmap none
이미지를 전송하려면 미러의 왼쪽 다리(워크스테이션에서 서버로):
$ gzip -c disk1.img | ssh example.org "gzip -d | dd of=/dev/sda bs=128K"
가장 작은 이미지는 매우 좋은 압축 비율로 압축되어야 합니다. 제 실험에서 압축된 크기는 약 230MiB였습니다.
오른쪽 다리에는 grub2 부분만 필요합니다.
$ dd if=disk2.img bs=512 count=2048 | gzip -c \
| ssh example.org "zip -d | dd of=/dev/sdb bs=128K"
서버(부팅된 복구 시스템 내)에서 루트 볼륨 그룹을 확장할 수 있습니다.
# partx -v --add /dev/sda
# mdadm --stop /dev/md/*boot --stop /dev/md/*pv00
# echo -e 'd\n2\nn\np\n2\n\n\nt\nfd\nw\n' | fdisk /dev/sda
# mdadm --run /dev/md/*boot --run /dev/*pv00
# mdadm --grow /dev/md/*pv00 --size max
# pvresize /dev/md/*pv00
# lvchange --activate y centos/root
# lvresize --resizefs --extents +100%FREE centos/root
# echo -e 'd\n2\nn\np\n2\n\n\nt\nfd\nw\n' | fdisk /dev/sdb
# mdadm --add /dev/md/*boot /dev/sdb1
# mdadm --add /dev/md/*pv00 /dev/sdb2
# mdadm --wait /dev/md/*pv00
# mdadm --grow /dev/md/*pv00 --bitmap internal
# mdadm --wait /dev/md/*pv00
# shutdown -r now
고급 것들
이 방법을 사용하여 기본 이미지에서 여러 개의 베어메탈 머신을 설치하려면 기본 이미지를 조정하는 일부 초기화 스크립트를 사용해야 합니다. 명백한 사항(호스트 이름, 네트워크 구성 등) 외에도 시스템의 모든 UUID를 변경해야 합니다. 여기에는 다음 UUID가 포함됩니다.
- RAID 장치
- LVMPV 및 VG
- 파일 시스템
- 교환
/etc/sysconfig/network-scripts
( ) 아래의 네트워크 구성 스크립트
그런 다음, 물론 이러한 UUIDS를 사용하는 모든 구성 파일을 변경해야 합니다.
- /etc/default/grub (
grub2->mkconfig
다음 호출...) - /etc/mdadm.conf
- /etc/fstab
지침
클라이언트/대상 시스템이 서로 다른 물리적 섹터 크기를 사용하는 경우 프로세스가 더 복잡해집니다. 예를 들어 대상 시스템이 512바이트 대신 4k 섹터를 사용하는 경우입니다. 그런 다음 qemu가 4k 물리적 섹터도 사용/에뮬레이트하도록 구성해야 합니다(qemu는 이를 수행할 수 있습니다).
주목해야 할 또 다른 사항은 대상 시스템이 UEFI 부팅만 지원하는지 여부입니다. 이 경우 qemu가 UEFI도 에뮬레이션하는지 확인해야 합니다.
결론적으로
qemu kvm 인스턴스를 사용한 다음 결과 설치를 원격 시스템으로 이식하는 과정은 비교적 간단합니다.