SUSE Multi-Linux Manager 프록시를 가상 머신으로 배포 - VMware

이 장에서는 SUSE Multi-Linux Manager 5.1 프록시를 이미지로 배포하기 위한 가상 머신 설정을 제공합니다. 이 설치를 위해 VMware가 샌드박스로 사용됩니다.

1. 사용 가능한 이미지

SUSE Multi-Linux Manager 프록시를 배포하는 가장 권장되는 방법은 다음의 사용 가능한 이미지 중 하나를 사용하는 것입니다. 모든 도구는 이러한 이미지에 포함되어 있어 배포를 단순화합니다.

SUSE Multi-Linux Manager 5.1 프록시에 대한 이미지는 SUSE Multi-Linux Manager 5.1 VM 이미지에서 사용할 수 있습니다.

맞춤형 SUSE Multi-Linux Manager 5.1 VM 이미지는 오직 SL Micro 6.1에 대해서만 제공됩니다. SUSE Linux Enterprise Server 15 SP7에서 제품을 실행하려면, https://www.suse.com/download/sles/에서 제공되는 표준 SUSE Linux Enterprise Server 15 SP7 설치 미디어를 사용하고, 그 위에 SUSE Multi-Linux Manager 5.1 확장 프로그램을 활성화하십시오.

Table 1. 사용할 수 있는 프록시 이미지
아키텍처 이미지 형식

aarch64

qcow2, vmdk

x86_64

qcow2, vmdk, raw, 셀프 인스톨러

2. 가상 머신 설정 - VMware

이 섹션에서는 VMware 환경 내에서 SUSE Multi-Linux Manager 프록시 스토리지 파티션에 필수적인 추가 가상 디스크 생성을 중심으로 VMware 구성에 대해 설명합니다.

이 섹션에서는 최소 요구 사항을 명시합니다. 이들은 클라이언트가 1개인 프록시와 같은 빠른 테스트 설치에 적합합니다.

생산 환경을 사용하고 디스크 공간에 대한 배경 정보가 필요하면 하드웨어 요구사항를 참조하십시오.

절차 VMware 가상 머신 생성
  1. SUSE Multi-Linux Manager 프록시 파일 `.vmdk`을(를) 다운로드한 후 복사본을 VMware 스토리지로 전송합니다.

  2. VMware 웹 인터페이스를 사용하여 업로드된 .vmdk 파일의 복사본을 만듭니다. 이 작업은 제공된 .vmdk 파일을 vSphere 하이퍼바이저에 적합한 형식으로 변환합니다.

  3. 게스트 OS 제품군 Linux 및 게스트 OS 버전 SUSE Linux Enterprise 15(64비트)를 기반으로 새 가상 머신을 생성하고 이름을 지정합니다.

  4. 100 GB(또는 그 이상)의 `Hard Disk 2`을(를) 추가합니다.

  5. RAM 및 CPU 수(RAM 16GB 및 CPU 4개 이상)를 구성합니다.

  6. 필요에 따라 네트워크 어댑터를 설정합니다.

  7. VM의 전원을 켜고 최초 부팅 대화 상자(키보드 레이아웃, 사용권 계약, 표준 시간대, 루트 비밀번호)를 따릅니다.

  8. 설치가 완료되면 루트로 로그인합니다.

  9. 다음 섹션을 진행합니다.

3. SL Micro 및 SUSE Multi-Linux Manager 5.1 프록시 등록

절차 SL Micro 및 SUSE Multi-Linux Manager 5.1 프록시 등록 중
  1. 가상 머신을 부팅합니다.

  2. `root`로 로그인합니다.

  3. SCC에 SL Micro 등록

    transactional-update register -r <REGCODE> -e <your_email>
  4. 재부팅합니다.

  5. SUSE Multi-Linux Manager 5.1 프록시를 SUSE Customer Center에 등록

    transactional-update register -p Multi-Linux-Manager-Proxy/5.1/x86_64 -r <REGCODE>
  6. 재부팅합니다.

  7. 시스템 업데이트:

    transactional-update
  8. 업데이트가 적용된 경우 재부팅합니다.

  9. 이 단계는 선택 사항입니다. 그러나 인프라에 사용자 정의 영구 스토리지가 필요한 경우 mgr-storage-proxy 도구를 사용하십시오.

    • 자세한 내용은 `mgr-storage-proxy --help`을 참조하십시오. 이 도구는 컨테이너 볼륨 생성 과정을 간소화합니다.

    • 다음 방법으로 명령 사용:

      mgr-storage-proxy <storage-disk-device>

      예:

      mgr-storage-proxy /dev/nvme1n1

      이 명령은 `/var/lib/containers/storage/volumes`에 있는 영구 스토리지 볼륨을 지정된 스토리지 장치로 이동합니다.

      자세한 내용은 다음을 참조하십시오.

4. 프록시용 활성화 키 생성

절차 활성화 키 생성
  1. 시스템  활성화 키로 이동한 후, 키 생성을 클릭합니다.

  2. 프록시 호스트에 대해 SL Micro 6.1 또는 SUSE Linux Enterprise Server 15 SP7를 부모 채널로 하여 활성화 키를 생성합니다. 이 키에는 모든 권장 채널과 프록시를 확장 하위 채널로 포함해야 합니다.

  3. 프록시 호스트를 default 클라이언트로 부트스트래핑합니다.

프록시가 원래 공급업체 채널에만 할당되도록 합니다.

복제된 채널 할당은 현재 지원되지 않습니다.

5. 프록시 구성 생성

SUSE Multi-Linux Manager 프록시의 구성 아카이브는 SUSE Multi-Linux Manager 서버에 의해 생성됩니다. 각 추가 프록시는 자체 구성 아카이브가 필요합니다.

컨테이너화된 SUSE Multi-Linux Manager 프록시의 경우, 새로운 프록시 구성 파일을 작성한 후 변경 사항이 적용되도록 컨테이너를 다시 배포해야 합니다. 이는 SSL 인증서를 포함한 설정을 업데이트하는 과정입니다.

Podman 배포의 경우, SUSE Multi-Linux Manager 프록시의 컨테이너 호스트는 이 프록시 구성을 생성하기 전에 SUSE Multi-Linux Manager 서버에 클라이언트로 등록되어 있어야 합니다.

등록된 클라이언트가 아닌 프록시 FQDN을 사용하여 프록시 컨테이너 구성을 생성하는 경우(예: Kubernetes 사용 사례), 시스템 목록에 새로운 시스템 항목이 나타납니다. 이 새로운 항목은 이전에 입력된 프록시 FQDN 값 아래에 표시되며 Foreign 시스템 유형이 됩니다.

주변 서버는 항상 타사 SSL 인증서를 사용합니다. 허브 서버가 주변 서버를 위한 인증서를 생성한 경우, 각 프록시의 인증서도 생성해야 합니다. 다음 명령을 실행하여 이를 수행할 수 있습니다.

mgrctl exec -ti -- rhn-ssl-tool --gen-server --dir="/root/ssl-build" --set-country="COUNTRY" \
  --set-state="STATE" --set-city="CITY" --set-org="ORGANIZATION" \
  --set-org-unit="ORGANIZATION UNIT" --set-email="name@example.com" \
  --set-hostname=PROXY --set-cname="proxy.example.com"

사용할 파일은
* `/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT`는 루트 CA로,
* `/root/ssl-build/<hostname>/server.crt`는 프록시 인증서로,
* `/root/ssl-build/<hostname>/server.key`는 프록시 인증서의 키로 사용됩니다.

5.1. Web UI을 사용하여 프록시 구성 생성

절차 Web UI을 사용하여 프록시 컨테이너 구성 생성
  1. Web UI에서 시스템  프록시 구성으로 이동하여 필요한 데이터를 입력합니다.

  2. Proxy FQDN 필드에 프록시의 정규화된 도메인 이름을 입력합니다.

  3. Parent FQDN 필드에 SUSE Multi-Linux Manager 서버 또는 다른 SUSE Multi-Linux Manager 프록시의 정규화된 도메인 이름을 입력합니다.

  4. Proxy SSH port 필드에 SUSE Multi-Linux Manager 프록시에서 SSH 서비스가 수신 대기하는 SSH 포트를 입력합니다. 기본값인 8022를 유지하는 것이 좋습니다.

  5. Max Squid cache size [MB] 필드에 Squid 캐시에 대해 허용되는 최대 크기를 입력합니다. 컨테이너에 대해 사용 가능한 저장소의 최대 80%를 사용하는 것이 좋습니다.

    2 GB는 기본 프록시 Squid 캐시 크기를 나타냅니다. 이것은 귀하의 환경에 맞게 조정해야 합니다.

  6. SSL certificate 선택 목록에서 SUSE Multi-Linux Manager 프록시에 대해 새 서버 인증서를 생성할지 기존 인증서를 사용할지 선택합니다. 생성된 인증서는 SUSE Multi-Linux Manager 내장(자체 서명) 인증서로 간주할 수 있습니다.

    선택에 따라 새 인증서를 생성하기 위해 CA 인증서에 서명할 경로 또는 프록시 인증서로 사용할 기존 인증서 및 해당 키에 대한 경로를 입력하십시오.

    서버에서 생성된 CA 인증서는 /var/lib/containers/storage/volumes/root/_data/ssl-build 디렉토리에 저장됩니다.

    기존 또는 사용자 정의 인증서와 기업 및 중간 인증서의 개념에 대한 자세한 내용은 SSL 인증서 임포트에서 확인하십시오.

  7. 생성을 클릭하여 SUSE Multi-Linux Manager 서버에 새 프록시 FQDN을 등록하고 컨테이너 호스트에 대한 세부사항이 포함된 구성 아카이브(config.tar.gz)를 생성합니다.

  8. 잠시 후 다운로드할 파일이 표시됩니다. 이 파일을 로컬에 저장하십시오.

5.2. spacecmd 및 자체 서명 인증서를 사용하여 프록시 구성 생성

`spacecmd`를 사용하여 프록시 구성을 생성할 수 있습니다.

절차 spacecmd 및 자체 서명 인증서를 사용하여 프록시 구성 생성
  1. 컨테이너 호스트에 SSH로 연결합니다.

  2. 서버 및 프록시 FQDN을 바꾸는 다음 명령을 실행합니다.

    mgrctl exec -ti 'spacecmd proxy_container_config_generate_cert -- dev-pxy.example.com dev-srv.example.com 2048 email@example.com -o /tmp/config.tar.gz'
  3. 서버 컨테이너에서 생성된 구성을 복사합니다.

    mgrctl cp server:/tmp/config.tar.gz .

5.3. spacecmd 및 사용자 정의 인증서를 사용하여 프록시 구성 생성

기본 자체 서명 인증서가 아닌 사용자 정의 인증서에 대해 `spacecmd`를 사용하여 프록시 구성을 생성할 수 있습니다.

절차 spacecmd 및 사용자 정의 인증서를 사용하여 프록시 구성 생성
  1. 서버 컨테이너 호스트에 SSH로 연결합니다.

  2. 서버 및 프록시 FQDN을 바꾸는 다음 명령을 실행합니다.

    for f in ca.crt proxy.crt proxy.key; do
      mgrctl cp $f server:/tmp/$f
    done
    mgrctl exec -ti 'spacecmd proxy_container_config -- -p 8022 pxy.example.com srv.example.com 2048 email@example.com /tmp/ca.crt /tmp/proxy.crt /tmp/proxy.key -o /tmp/config.tar.gz'
  3. 설정에서 중간 CA를 사용하는 경우, 이를 복사하여 -i 옵션과 함께 명령에 포함시킵니다(필요한 경우 여러 번 제공 가능).

    mgrctl cp intermediateCA.pem server:/tmp/intermediateCA.pem
    mgrctl exec -ti 'spacecmd proxy_container_config -- -p 8022 -i /tmp/intermediateCA.pem pxy.example.com srv.example.com 2048 email@example.com /tmp/ca.crt /tmp/proxy.crt /tmp/proxy.key -o /tmp/config.tar.gz'
  4. 서버 컨테이너에서 생성된 구성을 복사합니다.

    mgrctl cp server:/tmp/config.tar.gz .

6. 프록시 구성 전송

Web UI은 구성 아카이브를 생성합니다. 이 아카이브는 프록시 컨테이너 호스트에서 사용할 수 있어야 합니다.

절차 프록시 구성 복사
  1. 아직 완료하지 않았다면, 이전 단계에서 생성된 구성 아카이브(config.tar.gz)를 서버 컨테이너에서 서버 호스트로 복사하세요.

    mgrctl cp server:/root/config.tar.gz .
  2. 아직 완료하지 않은 경우 서버 호스트에서 프록시 호스트로 파일을 복사합니다.

    scp config.tar.gz <proxy-FQDN>:/root

7. SUSE Multi-Linux Manager 5.1 프록시 시작

이제 mgrpxy 명령으로 컨테이너를 시작할 수 있습니다:

절차 프록시 시작 및 상태 확인
  1. 다음을 호출하여 프록시 시작:

    mgrpxy start
  2. 다음을 호출하여 컨테이너 상태 확인:

    mgrpxy status

    5개의 SUSE Multi-Linux Manager 프록시 컨테이너가 있어야 하며, proxy-pod 컨테이너 파드의 일부여야 합니다:

    • proxy-salt-broker

    • proxy-httpd

    • proxy-tftpd

    • proxy-squid

    • proxy-ssh

7.1. 서비스에 사용자 정의 컨테이너 이미지 사용

기본적으로 SUSE Multi-Linux Manager 프록시 스위트는 각 서비스에 대해 동일한 이미지 버전과 레지스트리 경로를 사용하도록 설정되어 있습니다. 그러나 -tag 및 `-image`으로 끝나는 설치 매개변수를 사용하여 특정 서비스에 대한 기본값을 재정의할 수 있습니다.

예를 들어, 다음과 같이 사용합니다.

mgrpxy install podman --httpd-tag 0.1.0 --httpd-image registry.opensuse.org/uyuni/proxy-httpd /path/to/config.tar.gz

httpd 서비스에 대한 구성 파일을 조정하며, 여기서 `registry.opensuse.org/uyuni/proxy-httpds`은(는) 사용할 이미지이고 `0.1.0`는 버전 태그이며, 그 후 서비스를 다시 시작합니다.

값을 기본값으로 재설정하려면 해당 파라미터 없이 설치 명령을 다시 실행합니다.

mgrpxy install podman /path/to/config.tar.gz

이 명령은 먼저 모든 서비스의 구성을 전역 기본값으로 재설정한 다음 다시 로드합니다.