SUSE Multi-Linux Manager 프록시 배포

이 가이드는 SL Micro 6.1 또는 SUSE Linux Enterprise Server 15 SP7에서 SUSE Multi-Linux Manager 5.1 프록시 컨테이너의 배포 프로세스를 설명합니다. 이 가이드는 이미 SUSE Multi-Linux Manager 5.1 서버를 성공적으로 배포했다고 가정합니다.

현재로서는 SL Micro이(가) 일반 미니언(default 연락 방법)으로만 지원됩니다. 또한 Salt SSH 클라이언트(salt-ssh 연락 방법)로 관리하는 작업도 진행 중입니다.

기존 클라이언트를 프록시로 변환하는 것이 가능합니다. 자세한 내용은 {productname} 프록시 시작을 참조하십시오.

새로운 프록시를 성공적으로 배포하려면 다음 절차를 따르십시오:

절차 프록시 배포
  1. 하드웨어 요구사항을 검토합니다.

  2. 서버에서 SL Micro 6.1 또는 SUSE Linux Enterprise Server 15 SP7 상위 채널과 프록시 확장 프로그램 하위 채널을 동기화합니다.

  3. 운영 체제 미설치 컴퓨터에 SL Micro 또는 SUSE Linux Enterprise Server를 설치합니다.

  4. 프록시 확장 프로그램으로 Salt 활성화 키를 생성합니다.

  5. `default`연결 방법을 사용하여 프록시를 클라이언트로 부팅합니다.

  6. 프록시 구성을 생성합니다.

  7. 프록시 구성을 서버에서 프록시로 전송합니다.

  8. {webui}를 사용하여 패키지 설치

  9. 프록시 구성을 사용하여 클라이언트를 SUSE Multi-Linux Manager의 프록시로 등록합니다.

프록시 컨테이너 호스트에 지원되는 운영 체제

컨테이너 호스트에 지원되는 운영 체제는 SL Micro 6.1 및 SUSE Linux Enterprise Server 15 SP7입니다.

컨테이너 호스트

컨테이너 호스트는 Podman과 같은 컨테이너 엔진이 장착된 서버로, 컨테이너를 관리하고 배포할 수 있게 해줍니다. 이 컨테이너는 응용 프로그램과 라이브러리와 같은 필수 구성 요소를 포함하지만 전체 운영 체제는 포함하지 않아 경량입니다. 이 설정은 응용 프로그램이 서로 다른 환경에서도 동일하게 실행되도록 보장합니다. 컨테이너 호스트는 이러한 컨테이너에 필요한 CPU, 메모리 및 저장소와 같은 자원을 제공합니다.

1. 프록시의 하드웨어 요구사항

SUSE Multi-Linux Manager 프록시 배포를 위한 하드웨어 요구사항에 대한 자세한 내용은 installation-and-upgrade:hardware-requirements.adoc#proxy-hardware-requirements를 참조하십시오.

2. 상위 및 프록시 확장 프로그램 하위 채널 동기화

이 섹션은 서버의 Web UI에서 관리자  설정 마법사  조직 자격 증명 아래에 조직 자격 증명을 이미 입력했다고 가정합니다. 제품은 관리자  설정 마법사  제품 페이지에 나열됩니다. 이 채널은 서버에서 완전히 동기화되어야 하며, 하위 채널 `Proxy`이 확장 프로그램 옵션으로 선택되어야 합니다.

절차 상위 채널 및 프록시 확장 프로그램 동기화
  1. SUSE Multi-Linux Manager Web UI에서 관리자  제품을 선택합니다.

  2. 제품 페이지에서 필터 필드에 SL Micro 또는 SUSE Linux Enterprise Server를 입력합니다.

  3. 다음으로 드롭다운을 사용하여 필요한 아키텍처를 선택합니다. 이 예제의 경우 x86-64입니다.

  4. Product Description 필드에서 SL Micro 6.1 또는 SUSE Linux Enterprise Server 15 SP7 체크박스를 선택한 다음 드롭다운을 사용하여 SUSE Multi-Linux Manager Proxy Extension 5.1 x86_64 확장 프로그램을 선택하십시오.

  5. 제품 추가 버튼을 클릭합니다.

  6. 동기화가 완료될 때까지 기다립니다.

3. SUSE Multi-Linux Manager 프록시 호스트를 준비합니다.

다음 하위 섹션에서는 SLE Micro 또는 SUSE Linux Enterprise Server를 사용하여 프록시 호스트를 준비합니다.

3.1. SL Micro 6.1 호스트를 준비합니다.

3.1.1. 작업: 설치 미디어 다운로드

절차 설치 미디어 다운로드 중
  1. https://www.suse.com/download/sle-micro/,에서 SL Micro 6.1 설치 미디어를 찾아 적절한 미디어 파일을 다운로드합니다.

  2. 설치를 위해 다운로드한 .iso 이미지가 들어 있는 DVD 또는 USB 메모리 키를 준비합니다.

3.1.2. SL Micro 6.1 설치

가상 또는 물리적 머신을 준비하는 방법에 대한 자세한 내용은 SL Micro 배포 가이드를 참조하십시오.

절차 SL Micro 6.1 설치 중
  1. SLE Micro 6.1의 설치 이미지가 들어 있는 DVD 또는 USB 메모리 키(USB 디스크 또는 키)를 삽입합니다.

  2. 시스템을 부팅하거나 재부팅합니다.

  3. 화살표 키를 사용하여 `Installation`을(를) 선택합니다.

  4. 키보드 및 언어를 조정합니다.

  5. 라이선스 계약에 동의하려면 `checkbox`을(를) 클릭합니다.

  6. 계속하려면 `Next`을(를) 클릭합니다.

  7. 프록시 등록 SL Micro 6.1 권한은 SUSE Multi-Linux Manager 권한에 포함되어 있으므로 별도의 활성화 코드가 필요하지 않습니다.

  8. 계속하려면 다음을 클릭합니다.

  9. NTP Configuration 페이지에서 다음을(를) 클릭합니다.

  10. Authentication for the System 페이지에서 루트의 암호를 입력합니다. 다음을 클릭합니다.

  11. Installation Settings 페이지에서 설치를 클릭합니다.

이로써 SL Micro 6.1 및 SUSE Multi-Linux Manager 5.1의 확장 프로그램 설치가 완료되었습니다.

3.1.3. 시스템 업데이트

절차 시스템 업데이트 중
  1. *루트*로 로그인합니다.

  2. 트랜잭션 업데이트 실행:

    transactional-update
  3. 재부팅합니다.

SL Micro은 기본적으로 자동으로 업데이트되도록 설계되었으며 업데이트 적용 후 재부팅됩니다. 그러나 이 동작은 SUSE Multi-Linux Manager 환경에서는 바람직하지 않습니다. 서버에서 자동 업데이트를 방지하기 위해 SUSE Multi-Linux Manager 부팅 과정 중에 트랜잭션 업데이트 타이머를 비활성화합니다.

SL Micro 기본 동작을 사용하려면 다음 명령을 실행하여 타이머를 활성화합니다.

systemctl enable --now transactional-update.timer

배포를 계속하려면 사용자 정의 영구 스토리지 구성을 참조하십시오.

3.2. SUSE Linux Enterprise Server 15 SP7 호스트를 준비합니다.

대안으로, SUSE Multi-Linux Manager을 SUSE Linux Enterprise Server 15 SP7에 배포할 수 있습니다.

다음 절차에서는 설치 과정의 주요 단계를 설명합니다.

3.2.1. SUSE Multi-Linux Manager 확장 프로그램을 SUSE Linux Enterprise Server에 설치합니다.

절차 SUSE Multi-Linux Manager 확장 프로그램을 SUSE Linux Enterprise Server에 설치하는 중입니다.
  1. SUSE Linux Enterprise Server 15 SP7 `.iso`를 https://www.suse.com/download/sles/.에서 찾아 다운로드합니다.

  2. 호스트 운영 체제(SUSE Linux Enterprise Server 15 SP7) 및 확장 프로그램 모두에 대한 활성화 코드가 반드시 있어야 합니다.

  3. SUSE Linux Enterprise Server 15 SP7의 설치를 시작합니다.

    1. `Language, keyboard and product selection`에서 설치할 제품을 선택합니다.

    2. `License agreement`에서 계약서를 읽고 `I Agree to the License Terms`을(를) 확인합니다.

  4. 프록시 등록

  5. 계속하려면 `Next`을(를) 클릭합니다.

    SUSE Linux Enterprise Server 15 SP7의 경우 유효한 SUSE Linux Enterprise Server 구독이 서버에 구성되어 있어야 합니다.

  6. 화면 `Extensions and Modules Selection`에서 다음 사항을 확인합니다:

    • Basesystem 모듈

    • 컨테이너 모듈

  7. 계속하려면 다음을 클릭합니다.

  8. 설치를 완료합니다.

  9. 설치가 완료되면 새로 설치된 서버에 루트 권한으로 로그인합니다.

  10. 시스템 업데이트(선택 사항, 설치 중에 시스템이 업데이트를 다운로드하도록 설정되지 않은 경우):

    zypper up
  11. 재부팅합니다.

배포를 계속하려면 사용자 정의 영구 스토리지 구성을 참조하십시오.

4. 사용자 정의 영구 스토리지 구성

영구 스토리지를 구성하는 것은 선택 사항이지만, 이는 컨테이너의 디스크 가득 차는 문제를 피하는 유일한 방법입니다. 인프라에 사용자 정의 영구 저장소가 필요한 경우 mgr-storage-proxy 도구를 사용하십시오.

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

다음 방법으로 명령 사용:

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

예:

mgr-storage-proxy /dev/nvme1n1

이 명령은 `/var/lib/containers/storage/volumes`에 영구 스토리지 볼륨을 생성합니다.

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

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

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

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

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

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

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

6. 프록시 호스트를 클라이언트로 부트스트랩

절차 프록시 호스트 부팅
  1. 시스템  부팅을 선택합니다.

  2. 프록시 호스트의 필드를 입력합니다.

  3. 드롭다운에서 이전 단계에서 생성한 활성화 키를 선택합니다.

  4. 부팅을 클릭합니다.

  5. 부팅 프로세스가 성공적으로 완료될 때까지 기다립니다. 솔트 메뉴를 확인하고 Salt 키가 나열되고 수락되었는지 확인합니다.

  6. 운영 체제가 SL Micro인 경우 프록시 호스트를 재부팅합니다.

  7. 시스템 목록에서 호스트를 선택하고, 모든 이벤트가 완료된 후 SL Micro의 경우 두 번째 재부팅을 실행하여 온보딩을 완료합니다.

절차 프록시 호스트 업데이트
  1. 시스템 목록에서 호스트를 선택하고 모든 패치를 적용하여 업데이트합니다.

  2. 운영 체제가 SL Micro인 경우 프록시 호스트를 재부팅합니다.

7. 프록시 구성 생성

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`는 프록시 인증서의 키로 사용됩니다.

7.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. 잠시 후 다운로드할 파일이 표시됩니다. 이 파일을 로컬에 저장하십시오.

7.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 .

7.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 .

8. 프록시 구성 전송

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

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

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

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

9. [package]``podman``을 설치하고 활성화합니다.

프록시를 사용하기 전에 호스트에 일부 패키지가 설치되어 있어야 하며 `podman`가 실행 중이어야 합니다.

절차 필수 조건 준비하기
  1. 프록시 호스트에서 다음을 사용하여 프록시 설치:

    • podman

    • mgrpxy-bash-completion

    • suse-multi-linux-manager-5.1-x86_64-proxy-httpd-image

    • suse-multi-linux-manager-5.1-x86_64-proxy-salt-broker-image

    • suse-multi-linux-manager-5.1-x86_64-proxy-squid-image

    • suse-multi-linux-manager-5.1-x86_64-proxy-ssh-image

    • suse-multi-linux-manager-5.1-x86_64-proxy-tftpd-image

  2. 시스템을 재부팅하거나 다음 명령을 실행하여 podman 서비스 시작:

    systemctl enable --now podman.service
  3. 프록시 호스트에서 다음을 사용하여 프록시 설치:

    mgrpxy install podman config.tar.gz

10. SUSE Multi-Linux Manager 프록시 시작

이제 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

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

기본적으로 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

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