컨테이너화된 SUSE Multi-Linux Manager 프록시 설정

SUSE Multi-Linux Manager 프록시 컨테이너들을 위한 컨테이너 호스트가 준비되면, 프록시 컨테이너 설정을 완료하기 위해 몇 가지 추가 단계가 필요합니다.

절차
  1. SUSE Multi-Linux Manager 프록시 구성 아카이브 파일 생성

  2. 설치 단계에서 준비한 컨테이너 호스트로 구성 아카이브를 전송하고 압축을 풉니다.

  3. 로 프록시 서비스를 시작합니다.mgrpxy

1. 프록시 구성 생성

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

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

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

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

2. SUSE Multi-Linux Manager 프록시 구성 전송

spacecmd 명령과 Web UI 방법을 통해 생성하는 두 가지 방식 모두 구성 아카이브를 만듭니다. 이 아카이브는 컨테이너 호스트에서 사용할 수 있어야 합니다. 생성된 이 아카이브를 컨테이너 호스트로 전송합니다.

3. SUSE Multi-Linux Manager 프록시 컨테이너 시작

컨테이너는 mgrpxy 명령으로 시작할 수 있습니다.

절차 SUSE Multi-Linux Manager 프록시 컨테이너 시작
  1. 명령 실행:

    mgrpxy start uyuni-proxy-pod
  2. 호출하여 모든 컨테이너가 예상대로 시작되었는지 확인하십시오.

    podman ps

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

  • proxy-salt-broker

  • proxy-httpd

  • proxy-tftpd

  • proxy-squid

  • proxy-ssh