이 페이지의 내용
CentOS의 설치 필수 구성 요소
Paragon Automation 클러스터를 성공적으로 설치 및 배포하려면 단일 노드 또는 여러 클러스터 노드에 배포 소프트웨어를 설치하는 제어 호스트가 있어야 합니다. 제어 호스트에서 배포 소프트웨어를 다운로드한 다음 설치 파일을 만들고 구성하여 제어 호스트에서 설치를 실행할 수 있습니다. 제어 호스트에서 패키지를 다운로드하려면 인터넷에 액세스할 수 있어야 합니다. 또한 클러스터 노드에서 인터넷에 액세스하여 Docker 및 OS 패치와 같은 추가 소프트웨어를 다운로드할 수 있어야 합니다.
설치 작업의 순서는 그림 1에 개략적으로 나와 있습니다.
배포 소프트웨어를 다운로드하고 설치하기 전에 이 주제에 설명된 대로 제어 호스트와 클러스터 노드를 구성해야 합니다.
제어 호스트 준비
제어 호스트는 Paragon Automation 클러스터의 설치 및 업그레이드를 오케스트레이션하는 전용 시스템입니다. 그림 2와 같이 소프트웨어 설치 프로그램을 실행하고 클러스터 노드에 소프트웨어를 설치하는 Ansible 작업을 수행합니다.
Ansible 제어 호스트에서 설치 프로그램 패키지를 다운로드해야 합니다. Paragon Automation 설치 프로세스의 일부로 제어 호스트는 클러스터 노드에 필요한 추가 패키지를 설치합니다. 패키지에는 선택적 OS 패키지, Docker 및 Elasticsearch가 포함됩니다. 타사 마이크로 서비스를 포함한 모든 마이크로 서비스가 클러스터 노드에 다운로드됩니다. 마이크로 서비스는 설치 중에 공용 레지스트리에 액세스하지 않습니다.
제어 호스트는 클러스터 노드와 다른 브로드캐스트 도메인에 있을 수 있지만 제어 호스트가 SSH를 사용하여 모든 노드에 연결할 수 있는지 확인해야 합니다.
설치가 완료된 후 제어 호스트는 클러스터 작동에 아무런 역할도 수행하지 않습니다. 그러나 소프트웨어 또는 구성 요소를 업데이트하거나, 클러스터를 변경하거나, 노드에 장애가 발생할 경우 클러스터를 다시 설치하려면 제어 호스트가 필요합니다. 제어 호스트를 사용하여 구성 파일을 보관할 수도 있습니다. 제어 호스트를 사용 가능한 상태로 유지하고 설치 후 다른 용도로 사용하지 않는 것이 좋습니다.
다음과 같이 설치 프로세스를 위해 제어 호스트를 준비해야 합니다.
클러스터 노드 준비
기본 노드와 작업자 노드를 통칭하여 클러스터 노드라고 합니다. 각 클러스터 노드에는 클러스터 노드 함수에 설명된 대로 하나 이상의 고유한 고정 IP 주소가 있어야 합니다. 호스트 이름을 구성할 때 소문자만 사용하고 하이픈(-) 또는 마침표(.) 이외의 특수 문자는 포함하지 마십시오. 개요 섹션에 설명된 대로 Paragon Automation 구성 요소 간의 통신을 제공하기 위해 구현에 별도의 IP 네트워크가 있는 경우 해당 개별 네트워크의 IP 주소를 클러스터 외부에서 연결할 필요가 없습니다. 그러나 작업자 노드에 두 번째 IP 주소 집합을 할당해야 합니다. 이러한 IP 주소를 사용하면 클러스터 외부의 디바이스가 작업자 노드에 연결할 수 있으며 다음 간의 통신도 가능하게 합니다.
- Paragon Automation 및 매니지드 디바이스
- Paragon Automation 및 네트워크 관리자
모든 노드가 동일한 브로드캐스트 도메인에 있는 것이 좋습니다. 다른 브로드캐스트 도메인에 있는 클러스터 노드의 경우 추가 로드 밸런싱 구성에 대한 로드 밸런싱 구성을 참조하세요.
Paragon Automation 시스템 요구 사항에 설명된 대로 Paragon Automation을 단일 노드 또는 다중 노드 구축으로 설치할 수 있습니다. 노드 설치 필수 구성 요소는 스토리지 요구 사항을 제외하고 다중 노드 및 단일 노드 배포 모두에서 동일합니다.
다음과 같이 Paragon Automation 설치 프로세스를 위해 클러스터 노드를 준비해야 합니다.
가상 IP 주소 고려 사항
포드는 쿠버네티스에서 생성 및 관리되는 컴퓨팅 중 가장 작은 배포 단위이다. 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)
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 주소를 사용할 수 있다는 것입니다.
멀티 프라이머리 노드 배포를 위한 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 파일을 편집합니다. 예를 들어:
metallb_config: peers: - peer-address: 192.x.x.1 ## address of BGP router peer-asn: 64501 ## autonomous system number of BGP router my-asn: 64500 ## ASN of cluster address-pools: - name: default protocol: bgp addresses: - 10.x.x.0/24
이 예에서 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 파일에 호스트 이름을 추가할 수 있습니다.