Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

CentOS의 설치 필수 구성 요소

Paragon Automation 클러스터를 성공적으로 설치 및 배포하려면 단일 노드 또는 여러 클러스터 노드에 배포 소프트웨어를 설치하는 제어 호스트가 있어야 합니다. 제어 호스트에서 배포 소프트웨어를 다운로드한 다음 설치 파일을 만들고 구성하여 제어 호스트에서 설치를 실행할 수 있습니다. 제어 호스트에서 패키지를 다운로드하려면 인터넷에 액세스할 수 있어야 합니다. 또한 클러스터 노드에서 인터넷에 액세스하여 Docker 및 OS 패치와 같은 추가 소프트웨어를 다운로드할 수 있어야 합니다.

설치 작업의 순서는 그림 1에 개략적으로 나와 있습니다.

그림 1: Paragon Automation High-Level Process Flow for Installing Paragon Automation 설치를 위한 개략적인 프로세스 흐름

배포 소프트웨어를 다운로드하고 설치하기 전에 이 주제에 설명된 대로 제어 호스트와 클러스터 노드를 구성해야 합니다.

제어 호스트 준비

제어 호스트는 Paragon Automation 클러스터의 설치 및 업그레이드를 오케스트레이션하는 전용 시스템입니다. 그림 2와 같이 소프트웨어 설치 프로그램을 실행하고 클러스터 노드에 소프트웨어를 설치하는 Ansible 작업을 수행합니다.

Ansible 제어 호스트에서 설치 프로그램 패키지를 다운로드해야 합니다. Paragon Automation 설치 프로세스의 일부로 제어 호스트는 클러스터 노드에 필요한 추가 패키지를 설치합니다. 패키지에는 선택적 OS 패키지, Docker 및 Elasticsearch가 포함됩니다. 타사 마이크로 서비스를 포함한 모든 마이크로 서비스가 클러스터 노드에 다운로드됩니다. 마이크로 서비스는 설치 중에 공용 레지스트리에 액세스하지 않습니다.

제어 호스트는 클러스터 노드와 다른 브로드캐스트 도메인에 있을 수 있지만 제어 호스트가 SSH를 사용하여 모든 노드에 연결할 수 있는지 확인해야 합니다.

그림 2: 호스트 기능 Control Host Functions 제어

설치가 완료된 후 제어 호스트는 클러스터 작동에 아무런 역할도 수행하지 않습니다. 그러나 소프트웨어 또는 구성 요소를 업데이트하거나, 클러스터를 변경하거나, 노드에 장애가 발생할 경우 클러스터를 다시 설치하려면 제어 호스트가 필요합니다. 제어 호스트를 사용하여 구성 파일을 보관할 수도 있습니다. 제어 호스트를 사용 가능한 상태로 유지하고 설치 후 다른 용도로 사용하지 않는 것이 좋습니다.

다음과 같이 설치 프로세스를 위해 제어 호스트를 준비해야 합니다.

  1. Install Base OS - CentOS 버전 7.6 이상을 설치합니다.
  2. Docker 설치 - Linux 컨테이너 환경을 구현하려면 제어 호스트에 Docker를 설치하고 구성해야 합니다. Paragon Automation은 Docker CE 및 Docker EE를 지원합니다. 제어 호스트에 설치하도록 선택한 Docker 버전은 클러스터 노드에서 사용하려는 Docker 버전과 독립적입니다.

    Docker EE를 설치하려면 설치하기 전에 평가판 또는 구독이 있는지 확인합니다. Docker EE, 지원되는 시스템 및 설치 지침에 대한 자세한 내용은 https://www.docker.com/blog/docker-enterprise-edition/ 참조하세요.

    Docker CE를 다운로드하고 설치하려면 다음 단계를 수행합니다. Docker가 설치되어 실행 중인지 확인하려면 명령을 사용합니다 $ docker run hello-world .

    설치된 Docker 버전을 확인하려면 또는 $ docker --version 명령을 사용합니다$ docker version.

    전체 지침과 자세한 내용은 https://docs.docker.com/engine/install/centos/ 를 참조하십시오.
  3. SSH 클라이언트 인증 구성 - 제어 호스트에서 실행되는 설치 프로그램이 SSH를 사용하여 클러스터 노드에 연결됩니다. SSH 인증의 경우 수퍼유저(sudo) 권한이 있는 루트 또는 루트가 아닌 사용자 계정을 사용해야 합니다. 이후 단계에서는 이 계정을 설치 사용자 계정이라고 합니다. 클러스터의 모든 노드에서 설치 사용자 계정이 구성되어 있는지 확인해야 합니다. 설치 관리자는 인벤토리 파일을 사용하여 사용할 사용자 이름과 인증에서 SSH 키 또는 암호를 사용할지 여부를 결정합니다. 인벤토리 파일 - 다중 노드 구현 사용자 지정 또는 인벤토리 파일 - 단일 노드 구현 사용자 지정을 참조하십시오.

    인증(권장) 방법을 선택하는 ssh-key 경우 SSH 키를 생성합니다.

    암호로 SSH 키를 보호하려면 키 관리자를 사용할 ssh-agent 수 있습니다. https://www.ssh.com/academy/ssh/agent 참조하십시오.

    메모:

    다음 섹션에 설명된 대로 클러스터 노드 준비 작업의 일부로 이 키를 노드에 복사해야 합니다.

  4. (선택 사항) wget 설치 - Paragon Automation 배포 소프트웨어를 다운로드하는 유틸리티를 설치합니다wget.

    $ yum install wget

    또는 다른 파일 다운로드 소프트웨어를 사용하여 rsync 배포 소프트웨어를 복사할 수 있습니다.

클러스터 노드 준비

기본 노드와 작업자 노드를 통칭하여 클러스터 노드라고 합니다. 각 클러스터 노드에는 클러스터 노드 함수에 설명된 대로 하나 이상의 고유한 고정 IP 주소가 있어야 합니다. 호스트 이름을 구성할 때 소문자만 사용하고 하이픈(-) 또는 마침표(.) 이외의 특수 문자는 포함하지 마십시오. 개요 섹션에 설명된 대로 Paragon Automation 구성 요소 간의 통신을 제공하기 위해 구현에 별도의 IP 네트워크가 있는 경우 해당 개별 네트워크의 IP 주소를 클러스터 외부에서 연결할 필요가 없습니다. 그러나 작업자 노드에 두 번째 IP 주소 집합을 할당해야 합니다. 이러한 IP 주소를 사용하면 클러스터 외부의 디바이스가 작업자 노드에 연결할 수 있으며 다음 간의 통신도 가능하게 합니다.

  • Paragon Automation 및 매니지드 디바이스
  • Paragon Automation 및 네트워크 관리자

모든 노드가 동일한 브로드캐스트 도메인에 있는 것이 좋습니다. 다른 브로드캐스트 도메인에 있는 클러스터 노드의 경우 추가 로드 밸런싱 구성에 대한 로드 밸런싱 구성을 참조하세요.

그림 3: 클러스터 노드 기능 Cluster Nodes Functions

Paragon Automation 시스템 요구 사항에 설명된 대로 Paragon Automation을 단일 노드 또는 다중 노드 구축으로 설치할 수 있습니다. 노드 설치 필수 구성 요소는 스토리지 요구 사항을 제외하고 다중 노드 및 단일 노드 배포 모두에서 동일합니다.

다음과 같이 Paragon Automation 설치 프로세스를 위해 클러스터 노드를 준비해야 합니다.

  1. 원시 디스크 스토리지 구성 - 클러스터 노드에는 파티션되지 않은 디스크 또는 포맷되지 않은 디스크 파티션이 연결된 원시 스토리지 블록 장치가 있어야 합니다. 루트 파티션 및 기타 파일 시스템이 사용 가능한 디스크 공간의 일부를 사용할 수 있도록 노드를 분할할 수도 있습니다. 나머지 공간은 파일 시스템 없이 포맷되지 않은 상태로 두고 Ceph에서 사용할 수 있도록 예약해야 합니다. 자세한 내용은 디스크 요구 사항을 참조하십시오.
    메모:

    Ceph가 분할되지 않은 디스크 또는 포맷되지 않은 디스크 파티션을 사용할 수 있도록 아무것도 설치하거나 구성할 필요가 없습니다. Paragon Automation 설치 프로세스는 Ceph 스토리지 공간을 자동으로 할당합니다.

    다중 노드 클러스터의 경우 스토리지 공간이 연결된 클러스터 노드가 최소 3개 이상 있어야 합니다.

    단일 노드 클러스터의 경우 단일 노드에 저장 공간이 있어야 합니다.

    포맷되지 않은 디스크를 사용할 수 없는 경우 설치가 실패합니다.

    Ceph에는 최신 커널 버전이 필요합니다. Linux 커널이 매우 오래된 경우 새 커널을 업그레이드하거나 다시 설치하는 것이 좋습니다. OS에 대해 Ceph에서 지원하는 최소 Linux 커널 버전 목록은 https://docs.ceph.com/en/latest/start/os-recommendations 참조하십시오. Linux 커널 버전을 업그레이드하려면 CentOS Linux 커널 버전 업그레이드를 참조하세요.

  2. 기본 OS 설치 - Docker CE 또는 Docker EE를 설치할 수 있는 CentOS 버전 7.6 이상을 설치합니다.
  3. 설치 사용자 계정 생성 - 설치 사용자는 Ansible 플레이북이 기본 및 작업자 노드에 로그인하고 모든 설치 작업을 수행하는 데 사용할 사용자입니다. 루트 암호 또는 수퍼유저(sudo) 권한이 있는 계정이 구성되어 있는지 확인합니다. 설치 프로세스 중에 이 정보를 인벤토리 파일에 추가합니다.
    루트 사용자 암호를 설정합니다.
  4. SSH 인증 구성 - 모든 노드에 open-ssh 서버를 설치합니다. 제어 호스트에서 실행 중인 설치 프로그램은 설치 사용자 계정을 사용하여 SSH를 통해 클러스터 노드에 연결합니다.
    1. 클러스터 노드에 로그인합니다. 모든 노드에 open-ssh 서버를 설치합니다.
    2. 설치 후 sshd_config 파일을 편집합니다.

      $ vi /etc/ssh/sshd_config

    3. 설치 사용자 계정으로 "root"를 사용하는 경우 루트 로그인을 허용합니다.

      PermitRootLogin yes

      인증에 일반 텍스트 암호를 사용하도록 선택한 경우 암호 인증을 활성화해야 합니다.

      PasswordAuthentication yes

      암호 인증은 사용하지 않는 것이 좋습니다.

    4. 매개변수가 AllowTcpForwardingyes설정되어 있는지 확인하십시오.

      AllowTcpForwarding yes
      메모:

      매개변수가 로 no설정된 경우 AllowTcpForwarding Paragon Automation 설치가 실패합니다.

    5. /etc/ssh/sshd_config를 변경한 경우 SSH 데몬을 다시 시작합니다.

      $ systemctl restart sshd

    6. 제어 호스트에 로그인합니다.
      1. SSH 키를 사용한 인증을 허용하려면 id_rsa.pub 를 클러스터 노드에 복사합니다.

        클러스터의 모든 노드(기본 및 작업자)에 대해 이 단계를 반복합니다. cluster-node-IP 은(는 ) 클러스터 노드 함수에 표시된 노드의 고유 주소입니다. 호스트 이름을 대신 사용하는 경우 Ansible 제어 호스트는 이름을 해당 IP 주소로 확인할 수 있어야 합니다.

      2. SSH를 클러스터 노드로 연결합니다. 로그인하는 데 암호가 필요하지 않아야 합니다.

        연결을 확인합니다. ssh에 사용자 설치 계정을 사용합니다.

        Install User Account(사용자 계정 설치)를 사용하여 제어 호스트에서 클러스터의 모든 노드(기본 및 작업자)로 SSH를 수행할 수 있어야 합니다. 할 수 없는 경우 이전 단계를 검토하고 놓친 것이 없는지 확인하십시오.

  5. Docker 설치 - 다음 Docker 버전 중 하나를 선택하여 설치합니다.
    • Docker CE - Docker CE를 사용하려는 경우 클러스터 노드에 설치할 필요가 없습니다 . 이 스크립트는 Paragon Automation을 설치하는 동안 노드에 Docker CE를 deploy 설치합니다.

    • Docker EE - Docker EE를 사용하려면 모든 클러스터 노드에 Docker EE를 설치해야 합니다. 노드에 deploy Docker EE를 설치하는 경우 스크립트는 설치된 버전을 사용하며 그 자리에 Docker CE를 설치하려고 시도하지 않습니다. Docker EE, 지원되는 시스템, 다운로드 및 설치 지침에 대한 자세한 내용은 https://www.docker.com/blog/docker-enterprise-edition/ 참조하세요.

      클러스터 노드에 설치하도록 선택한 Docker 버전은 제어 호스트에 설치된 Docker 버전에 종속되지 않습니다.

  6. Disable Firewall(방화벽 비활성화) - 로컬 방화벽을 비활성화합니다.

    $ systemctl stop firewalld

    $ systemctl disable firewalld

    외부 방화벽으로 클러스터를 보호하는 것이 좋습니다.

  7. Python 설치 - OS와 함께 사전 설치되지 않은 경우 클러스터 노드에 Python 3을 설치합니다.

    $ yum install -y python3

    설치된 Python 버전을 확인하려면 또는 $ python3 --version 명령을 사용합니다 $ python3 -V.
  8. Check Installed Packages(설치된 패키지 확인) - 명령을 사용하고 $ yum list installed 다음 패키지가 설치되어 있는지 확인합니다.

    bash-completion, gdisk, iptables, lvm2, python-six, PyYAML, openssl

  9. NTP 설치 및 활성화 - 모든 노드는 항상 NTP 또는 기타 시간 동기화를 실행해야 합니다. 기본적으로 Paragon Automation은 Chrony NTP 클라이언트를 설치합니다. Chrony를 사용하지 않으려면 모든 노드에 NTP를 수동으로 설치할 수 있습니다.
    1. NTP를 설치합니다.

      $ yum install ntp ntpdate -y

    2. 이 명령을 두 번 실행하여 NTP 서버와의 오프셋을 줄입니다.

      $ ntpdate ntp-server

    3. NTP 데몬을 시작합니다.

      $ systemctl start ntpd

    4. NTP 서버 풀을 구성합니다.

      $ vi /etc/ntp.conf

    5. 기본 CentOS 풀을 원하는 NTP 서버로 바꿉니다.

      server ntp-server prefer iburst

      파일을 저장하고 종료합니다.

    6. NTP 서비스를 다시 시작합니다.

      $ systemctl restart ntpd

    7. 시스템이 NTP 서버와 동기화되어 있는지 확인합니다.

      $ timedatectl

  10. (선택 사항) CentOS Linux 커널 버전 업그레이드Paragon Automation 설치 요구 사항을 충족하기 위해 CentOS 서버의 커널 버전을 최신 LTS 버전으로 업그레이드합니다.
    1. 루트 사용자로 로그인합니다.

    2. 기존 커널 버전을 확인합니다.

      root@server$ uname -msr

      Linux 커널 버전이 4.18 이전인 경우 커널을 업그레이드합니다.

    3. 기존 소프트웨어 패키지를 최신 버전으로 업데이트

      root@server$ yum -y update

    4. CentOS는 소프트웨어 저장소에서 사용 가능한 최신 커널 버전을 제공하지 않습니다. 따라서 ElRepo(elrepo) 소프트웨어 리포지토리가 사용됩니다. 또한 CentOS는 모든 소프트웨어에 서명해야 합니다. 따라서 elrepo 리포지토리를 설치하기 전에 elrepo GPG 서명 키를 설치해야 합니다.

      elrepo GPG 서명 키를 설치하려면 성공할 경우 출력을 반환하지 않는 단일 rpm 명령이 필요합니다.

      1. ElRepo 소프트웨어 리포지토리용 GPG 키를 설치합니다.

        root@server$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

      2. ElRepo Software Repository를 설치합니다.

        root@server$ rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm

      3. ElRepo Repository에서 최신 커널을 확인합니다.

        root@server$ yum list available --disablerepo='*' --enablerepo=elrepo-kernel

    5. 최신 커널을 설치합니다.

      root@server$ yum --enablerepo=elrepo-kernel install kernel-lt

    6. 서버를 재부팅하여 새 커널을 로드합니다.

      root@server$ reboot

    7. GRUB 구성을 편집합니다. 텍스트 편집기를 사용하여 /etc/default/grub 파일을 편집합니다.

      root@server$ vi /etc/default/grub

    8. 세트 GRUB_DEFAULT=0. 파일을 저장하고 종료합니다.

    9. GRUB 구성을 설치하고 서버를 다시 부팅합니다.

      root@server$ grub2-mkconfig -o /boot/grub2/grub.cfg

      root@server$ reboot

    10. 새 커널 버전을 확인합니다.

      root@server$ uname -msr

가상 IP 주소 고려 사항

Kubernetes 작업자 노드는 애플리케이션의 워크로드를 처리하는 Pod를 호스트합니다.

포드는 쿠버네티스에서 생성 및 관리되는 컴퓨팅 중 가장 작은 배포 단위이다. Pod에는 공유 스토리지 및 네트워크 리소스와 애플리케이션 실행 방법에 대한 특정 지침이 포함된 하나 이상의 컨테이너가 포함되어 있습니다. 컨테이너는 가장 낮은 수준의 처리이며 컨테이너에서 애플리케이션 또는 마이크로 서비스를 실행합니다.

클러스터의 기본 노드는 특정 Pod 및 컨테이너를 호스트할 작업자 노드를 결정합니다.

Paragon Automation의 모든 기능은 마이크로서비스 조합을 사용하여 구현합니다. 이러한 마이크로서비스 중 일부는 최종 사용자(관리되는 디바이스) 및 관리자에게 서비스를 제공하므로 클러스터 외부에서 액세스할 수 있도록 해야 합니다. 예를 들어, 프로바이더 에지(PE) 라우터와 Paragon Automation 간에 PCEP 세션을 설정하기 위해 pceserver 서비스에 액세스할 수 있도록 해야 합니다.

이러한 서비스는 외부 디바이스에서 연결할 수 있는 특정 주소를 사용하여 Kubernetes 클러스터 외부에 노출해야 합니다. 지정된 시간에 모든 작업자 노드에서 서비스를 실행할 수 있으므로 VIP(가상 IP 주소)를 외부 주소로 사용해야 합니다. 지정된 작업자 노드의 주소를 외부 주소로 사용해서는 안 됩니다.

이 예제의 내용은 다음과 같습니다.

WORKER1_IP = 10.1.x.3 및 WORKER2_IP = 10.1.x.4라고 생각하십시오.

서비스 IP = PCEP VIP = 10.1.x.200

PCC_IP = 10.1.x.100

Paragon Automation의 서비스는 클러스터 외부에 서비스를 노출하는 다음 두 가지 방법 중 하나를 사용하도록 구성됩니다.

  • Load Balancer각 부하 분산 장치는 특정 IP 주소와 연결되며 외부 트래픽을 클러스터의 특정 서비스로 라우팅합니다. 이는 클라우드의 많은 Kubernetes 설치에 대한 기본 방법입니다. 서비스당 여러 프로토콜과 포트를 지원합니다. 각 서비스에는 자체 부하 분산 장치 및 IP 주소가 있습니다.

  • Paragon Automation은 MetalLB 로드 밸런서를 사용합니다. MetalLB는 레이어 2 모드에서 가상 IP 주소를 관리하거나 레이어 3 모드에서 외부 라우터와 상호 작용하여 외부 로드 밸런서를 시뮬레이션합니다. MetalLB는 쿠버네티스 클러스터에 로드 밸런싱 인프라를 제공합니다.

    "LoadBalancer" 유형의 서비스는 쿠버네티스 로드 밸런싱 인프라와 상호 작용하여 외부에서 도달 가능한 IP 주소를 할당한다. 일부 서비스는 외부 IP 주소를 공유할 수 있습니다.

  • 수신수신 클러스터로 트래픽을 가져오는 프록시 역할을 한 다음 내부 서비스 라우팅을 사용하여 트래픽을 대상으로 라우팅합니다. 내부적으로 Ingress는 Load Balancer 서비스를 사용하여 해당 프록시 역할을 할 수 있도록 전 세계에 자신을 노출시킵니다.

    Paragon Automation은 다음을 사용합니다.

    • 대사
    • Nginx에

클러스터 외부의 디바이스는 다음 서비스에 액세스해야 하므로 이러한 서비스에는 VIP 주소가 필요합니다.

필수 VIP 주소 설명 로드 밸런서/프록시

수신 컨트롤러

Paragon Automation GUI의 웹 액세스에 사용됩니다.

Paragon Automation은 구성 요소 및 응용 프로그램에 대한 액세스를 제공하는 공통 웹 서버를 제공합니다. 서버에 대한 액세스는 Kubernetes 수신 컨트롤러를 통해 관리됩니다.

수신 컨트롤러는 디바이스 시작 NETCONF 연결에 대한 액세스도 제공합니다. 네트워크 요소 시작 트래픽과 관리 트래픽을 분리할 수 있도록 여러 주소를 사용하여 수신 컨트롤러를 구성할 수 있습니다.

대사

메탈LB

Paragon Insights 서비스

syslog, DHCP 릴레이 및 JTI와 같은 Insights 서비스에 사용됩니다.

메탈LB

Paragon Pathfinder PCE 서버

네트워크의 디바이스와 PCEP 세션을 설정하는 데 사용됩니다.

PCE 서버는 Nginx를 프록시로 사용할 수 있으며, 이 경우 자체 VIP 주소를 사용하지 않습니다.

메탈LB

SNMP 트랩 수신기 프록시(옵션)

이 기능이 필요한 경우에만 SNMP 트랩 수신기 프록시의 사용자입니다.

메탈LB

인프라 Nginx 수신 컨트롤러의 가상 IP 주소Virtual IP address for Infrastructure Nginx Ingress Controller

Paragon Pathfinder 네트워크 흐름 서버 및 Paragon Pathfinder PCE 서버(선택 사항)의 프록시로 사용됩니다.

Nginx 수신 컨트롤러에는 MetalLB 로드 밸런서 풀 내에 VIP가 필요합니다. 즉, 설치 프로세스 중에 구성 파일을 생성할 때 포함해야 하는 LoadBalancer IP 주소 범위의 일부로 이 주소를 포함해야 합니다.

Nginx에

메탈LB

Pathfinder Netflowd의 가상 IP 주소

Paragon Pathfinder 네트워크 서버에 사용됩니다.

Netflowd는 Nginx를 프록시로 사용할 수 있으며, 이 경우 자체 VIP 주소가 필요하지 않습니다.

메탈LB

Paragon 외부 레지스트리 가상 IP 주소(선택 사항) 여러 외부 레지스트리 노드에 연결하는 데 사용됩니다.

-

앰배서더가 사용하는 포트:

  • HTTPS로 HTTP 80(TCP) 리디렉션

  • HTTPS 443(TCP)

  • Paragon Planner 7000(TCP)

  • DCS/NETCONF 시작 7804(TCP)

그림 4: 앰배서더 Ambassador

Insights Services, PCE 서버 및 SNMP에서 사용하는 포트입니다.

  • 인사이트 서비스

    JTI 4000 (UDP)

    DHCP(ZTP) 67(UDP)

    SYSLOG 514(UDP)

    SNMP 프록시 162(UDP)

  • PCE 서버

    PCEP 4189(TCP)

  • SNMP

    SNMP 트랩 수신기 162(UDP)

Nginx 컨트롤러에서 사용하는 포트:

  • NetFlow 9000(UDP)

  • PCEP 4189(TCP)

PCEP에 Nginx 사용

설치 프로세스 중에 PCEP에 대해 수신 프록시를 활성화할지 여부를 묻는 메시지가 표시됩니다. PCE(Path Computation Element) 서버의 프록시로 또는 Nginx-Ingress 중에서 선택할 None 수 있습니다.

프록시로 선택하는 Nginx-Ingress 경우, 표에 설명된 PCE 서버에 대해 VIP를 구성할 필요가 없습니다 . 이 경우 인프라 Nginx 수신 컨트롤러의 VIP 주소는 PCE 서버에도 사용됩니다. netflowd 프록시를 사용하지 않도록 선택하면 인프라 Nginx 수신 컨트롤러의 VIP도 netflowd에 사용됩니다.

메모:

Nginx 사용의 이점은 여러 서비스에 단일 IP 주소를 사용할 수 있다는 것입니다.

그림 5: Nginx 컨트롤러 Nginx Controller

멀티 프라이머리 노드 배포를 위한 VIP

여러 기본 노드가 있는 설정을 배포하는 경우 클러스터 노드와 동일한 브로드캐스트 도메인에 추가 VIP 주소가 필요합니다. 이 주소는 선택된 기본 노드와 작업자 노드 간의 통신에 사용됩니다.

다중 기본 설정에서 작업자 노드는 기본 노드 역할을 하는 노드에 할당된 주소 대신 VIP 주소를 사용하여 기본 기능과 통신합니다.

설치 마법사는 이 IP 주소를 Kubernetes 마스터 가상 IP 주소라고 합니다. MetalLB 로드 밸런서의 VIP 주소 풀에는 이 VIP 주소가 포함 되어서는 안 됩니다.

단일 기본 노드가 있는 설정에서 작업자 노드는 기본 노드 역할을 하는 해당 노드에 할당된 주소(기본 노드 역할을 하는 노드의 인터페이스에 구성된 IP 주소)를 사용하여 기본 노드와 통신합니다.

메모:

Paragon Automation 설치 프로세스를 시작하기 전에 필요한 모든 VIP를 식별해야 합니다. 설치 프로세스의 일부로 이러한 주소를 입력하라는 메시지가 표시됩니다.

로드 밸런싱 구성

VIP는 기본적으로 레이어 2에서 관리됩니다. 모든 클러스터 노드가 동일한 브로드캐스트 도메인에 있는 경우 각 VIP는 한 번에 하나의 클러스터 노드에 할당됩니다. 레이어 2 모드는 VIP의 페일오버를 제공하며 실제 로드 밸런싱을 제공하지 않습니다. 클러스터 노드 간의 진정한 로드 밸런싱을 위해 또는 노드가 서로 다른 브로드캐스트 도메인에 있는 경우 레이어 3에서 로드 밸런싱을 구성해야 합니다.

네트워크에 VIP를 광고하려면 BGP 라우터를 구성해야 합니다. BGP 라우터는 ECMP를 사용하여 서로 다른 호스트 간에 TCP/IP 세션의 균형을 유지하도록 구성되어야 합니다. BGP 라우터를 클러스터 노드에 직접 연결합니다.

클러스터 노드에서 로드 밸런싱을 구성하려면 config.yml 파일을 편집합니다. 예를 들어:

이 예에서 192.x.x.1의 BGP 라우터는 10.x.x.0/24 접두사가 있는 VIP의 연결성을 네트워크의 나머지 부분에 보급할 책임이 있습니다. 클러스터는 이 범위의 VIP를 할당하고 주소를 처리할 수 있는 클러스터 노드의 주소를 보급합니다.

DNS 서버 구성(선택 사항)

수신 컨트롤러의 VIP 주소 또는 수신 컨트롤러의 VIP 주소로 확인되는 DNS(Domain Name System) 서버에 구성된 호스트 이름을 통해 기본 웹 게이트웨이에 액세스할 수 있습니다. 호스트 이름을 사용하여 웹 게이트웨이에 액세스하려는 경우에만 DNS 서버를 구성해야 합니다.

호스트 이름을 A, AAAA 또는 CNAME 레코드로 DNS에 추가합니다. 랩 및 개념 증명(POC) 설정의 경우 클러스터 노드의 /etc/hosts 파일에 호스트 이름을 추가할 수 있습니다.