컨테이너화된 SUSE Manager 프록시 설치

SUSE Linux Enterprise Server 15 SP5 또는 SLE Micro 5.5 이상만 SUSE Manager 프록시 컨테이너의 컨테이너 호스트로 사용할 수 있도록 지원됩니다.

1. 컨테이너 호스트 요구사항

Table 1. 프록시 컨테이너 호스트 하드웨어 요구사항
하드웨어 세부 정보 권장

CPU

최소 2개의 전용 64비트 CPU 코어

RAM

테스트 서버

최소 2GB

프로덕션 서버

최소 8GB

디스크 공간

최소 100GB

Table 2. 프록시 컨테이너 호스트 소프트웨어 요구사항
소프트웨어 세부 정보 설명

연결 방법

Salt

호스트는 salt 클라이언트로 구성되어야 합니다.

SUSE Manager 서버의 도메인 이름을 클라이언트에서 확인할 수 있는지 확인합니다 * 컨테이너 프록시와 클라이언트 머신 모두 DNS 서버에 연결되어 있어야 합니다. * 역방향 조회가 작동해야 합니다.

2. 호스트 시스템에 Container Services 설치

SUSE Manager 프록시 컨테이너의 기반으로 사용되는 컨테이너 호스트의 경우, 우선 SUSE Manager 서버에 Salt 클라이언트로 등록해야 합니다.

SUSE Manager 서버에 Salt 클라이언트를 등록하는 방법에 대한 자세한 내용은 클라이언트 등록에서 확인할 수 있습니다.

Containers Module은 SUSE Linux Enterprise Server 시스템에서 컨테이너 호스트용으로 사용할 수 있어야 합니다.

SUSE Manager Proxy 컨테이너는 podmansystemd를 사용하여 모든 프록시 컨테이너를 실행 및 관리합니다.

첫 번째 단계에서는 이름이 동일한 패키지에서 제공하는 mgrpxy 유틸리티를 설치합니다.

mgrpxy 패키지는 SUSE Manager 프록시 제품 리포지토리에서 사용할 수 있습니다.

설치하려면 다음을 실행:

zypper in helm mgrpxy
절차: SUSE Manager 프록시를 위한 컨테이너 유틸리티 도구 mgrpxy 설치

SUSE Manager의 컨테이너 호스트에 Containers Module 소프트웨어 채널을 할당합니다. 시스템에 소프트웨어 채널을 할당하는 방법에 대한 자세한 내용은 채널 관리에서 확인할 수 있습니다.

  1. 컨테이너 호스트에서 root로 로그인합니다.

  2. mgrpxy 패키지를 수동으로 설치합니다.

    zypper install mgrpxy

3. SUSE Manager 프록시 컨테이너 설치

SUSE Manager 프록시 컨테이너는 장기 저장을 위해 일부 볼륨을 마운트해야 합니다. 이러한 볼륨은 podman에 의해 자동으로 생성되며, podman volume ls 명령을 사용하여 나열할 수 있습니다. 기본적으로 podman은 볼륨의 파일을 /var/lib/containers/storage/volumes에 저장합니다. 볼륨의 이름은 다음과 같습니다.

  • uyuni-proxy-squid-cache

  • uyuni-proxy-rhn-cache

  • uyuni-proxy-tftpboot

기본 볼륨 설정을 무효화하려면 podman volume create 명령을 사용하여 포드를 처음 시작하기 전에 볼륨을 생성합니다.

기본적으로 uyuni-proxy-systemd-services 패키지는 외부 디스크를 마운트하는 데 사용할 수 있는 다음의 3개 디렉토리를 생성합니다.

/var/lib/uyuni/proxy-rhn-cache
/var/lib/uyuni/proxy-squid-cache
/var/lib/uyuni/proxy-tftpboot

/etc/fstab에 다음 항목이 있는 경우:

/dev/uyuni-proxy/rhn-cache    /var/lib/uyuni/proxy-rhn-cache    xfs 	defaults 0 0
/dev/uyuni-proxy/squid-cache  /var/lib/uyuni/proxy-squid-cache  xfs 	defaults 0 0
/dev/uyuni-proxy/tftpboot     /var/lib/uyuni/proxy-tftpboot     xfs 	defaults 0 0

다음 명령을 실행하여 사용자 지정 볼륨을 만듭니다.

podman volume create --driver local --opt device=/dev/mapper/uyuni--proxy-rhn--cache --opt type=xfs uyuni-proxy-rhn-cache
podman volume create --driver local --opt device=/dev/mapper/uyuni--proxy-squid--cache --opt type=xfs uyuni-proxy-squid-cache
podman volume create --driver local --opt device=/dev/mapper/uyuni--proxy-tftpboot --opt type=xfs uyuni-proxy-tftpboot

SUSE Manager 프록시를 시작하는 systemd 서비스를 설치하려면, mgrpxy install podman /path/to/config.tar.gz 명령을 실행합니다.

설치 명령에 하나 이상의 --podman-arg 파라미터와 함께 Podman 컨테이너 Pod에 전달된 사용자 정의 인수를 추가할 수 있습니다.

설치 명령에 --tag=latest 파라미터를 사용하여 컨테이너 이미지에 사용할 태그를 수정할 수 있습니다.

컨테이너 이미지와 버전 파라미터를 변경하는 것은 위험하며 시스템이 작동하지 않을 수 있습니다.

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

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

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

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

이는 다시 시작하기 전에 registry.opensuse.org/uyuni/proxy-httpds가 사용할 이미지이고 0.1.0이 버전 태그인 httpd 서비스의 구성 파일을 조정합니다.

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

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

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

4. 컨테이너 호스트 방화벽에서 제공되는 서비스에 대한 네트워크 액세스 허용

SUSE Manager Proxy 컨테이너는 노드 포트 서비스로 작동합니다. 즉, 프록시 컨테이너 포드가 컨테이너 호스트 네트워크 TCP 및 UDP 포트 공간을 공유합니다. 이러한 이유로 컨테이너 호스트 방화벽은 SUSE Manager Proxy 컨테이너에서 사용하는 포트에서 유입되는 트래픽을 수락하도록 구성해야 합니다. 해당 포트:

  • 69/UDP - TFTP

  • 80/TCP - HTTP

  • 443/TCP - HTTPS

  • 4505/TCP - Salt

  • 4506/TCP - Salt

  • 8022/TCP - SSH

컨테이너화된 SUSE Manager 프록시 설정에 설치된 SUSE Manager 프록시를 컨테이너로 계속 설정합니다.