vSphere 환경에 Rancher를 설치하고자 할 경우에 개념적인 구조는 그림과 같습니다.

1. 로드발란서 고려사항

RKE 노드에 있는 랜처 워크로드로 트래픽을 유도하려면 로드 밸런서가 필요합니다.

  • Fault Tolerance 및 고가용성을 활용 : 고가용성 기능(F5, NSX-T, Keep Alive 등)을 상속받은 외부(하드웨어 또는 소프트웨어) 로드 밸런서를 사용
  • 로드 밸런서 구성을 백업 : 재해 복구 작업 시 로드 밸런서 구성을 사용할 수 있으면 복구 프로세스가 빨라집니다.
  • 상태 검사(health check)를 구성 : 상태 점검에 실패한 경우 노드를 사용할 수 없는 것으로 자동으로 표시하도록 로드 밸런서를 구성합니다. 예를 들어 NGINX는 다음을 통해 이를 지원할 수 있습니다.
max_fails=3 fail_fails=5s
  • 외부 로드 밸런서를 활용 : 관리 클러스터 내에 소프트웨어 로드 밸런서를 구현하지 않도록 합니다.
  • Rancher에 안전하게 액세스 : 랜처 액세스만 표시하도록 적절한 방화벽/ACL 규칙을 구성합니다.

2. VM 고려사항

  • Rancher 설명서에 따라 VM의 크기 조정 : https://rancher.com/docs/rancher/v2.6/en/installation/requirements/
  • VM 템플릿을 활용하여 환경을 구성 : 환경 전반에 구축된 가상 머신의 일관성을 유지하려면 VM 템플릿 형태의 “골든 이미지”를 사용하는 것을 고려하십시오. 이를 위해 패커를 사용할 수 있으며 사용자 지정 옵션을 추가할 수 있습니다.
  • 가능한 경우 DRS 반선호도 규칙을 활용하여 ESXi 호스트 간에 랜처 클러스터 노드를 분리 : 이렇게 하면 노드 VM이 여러 ESXi 호스트에 분산되어 호스트 수준에서 단일 장애 지점을 방지할 수 있습니다.
  • 각각의 VM이 사용하는 데이터스토어도 분리해서 단일장애 지점을 제거 : 설명서에는 DRS를 사용하라고 되어있습니다. 그러나 DRS는 데이터스토어 분리 기능은 제공하지 않습니다.
  • Kubernetes에 맞게 VM을 구성 : 노드 구축 시 K8 및 etcd 모범 사례를 따르는 것이 중요합니다. 여기에는 스왑 사용 안 함, 클러스터 내의 모든 시스템 간에 고유한 호스트 이름, MAC 주소 및 product_uid를 사용하여 전체 네트워크 연결이 있는지 이중 확인 등이 포함됩니다.

3. 네트워크 고려 사항

  • ETCD 노드 간의 짧은 지연 시간, 높은 대역폭 연결을 활용 : 가능한 경우 단일 데이터 센터 내에 etcd 구성원을 배치하여 지연 시간 오버헤드를 방지하고 네트워크 파티셔닝 가능성을 줄입니다. 대부분의 설정에서는 1Gb 연결로 충분합니다. 대규모 클러스터의 경우 10Gb 연결을 통해 백업에서 복원하는 데 걸리는 시간을 줄일 수 있습니다.
  • VM의 일관된 IP 주소 지정 : 사용되는 각 노드에는 정적 IP가 구성되어 있어야 합니다. DHCP의 경우 각 노드에 동일한 IP가 할당되도록 하려면 각 노드에 DHCP 예약이 있어야 합니다.

4. 스토리지에 대한 고려 사항

  • etcd 노드에 SSD 드라이브를 활용 : etcd는 쓰기 지연 시간에 매우 민감합니다. 따라서 가능한 경우 SSD 디스크를 활용하십시오.

5. 백업 및 재해 복구 기능

  • 정기적인 관리 클러스터 백업을 수행 : Rancher는 데이터가 상주하는 Kubernetes 클러스터의 etcd 데이터스토어에 데이터를 저장합니다. 다른 Kubernetes 클러스터와 마찬가지로 이 클러스터에 대해 자주 테스트된 백업을 수행합니다.
  • 랜처 클러스터 노드 VM을 백업 : Rancher 관리 노드 VM을 표준 VM 백업 정책에 통합합니다.

아래 출처의 내용을 기준으로 좀 더 꾸며보았습니다.
출처 : https://rancher.com/docs/rancher/v2.6/en/best-practices/rancher-server/rancher-in-vsphere/
답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You May Also Like

Rancher v2.7.0 Release 노트

한 동안 Rancher 수업이 없어서 잊고지내다가 보니 Rancher v2.7.0이 나왔더라고요. 릴리즈 노트에 있는 내용 간단히 정리해 보았습니다. 기능과…

Rancher와 GitHub 계정 통합

Rancher 2.6.5의 경우 총 12가지 Authentication Providers와 연동해서 사용할 수 있습니다. 그 중에 GitHub와 연동하는 것을 한번 구성해…

Rancher 2.6.1~2.6.4 간단정리

Rancher가 2.6.4까지(2022.4.1 기준) 업데이트가 됐습니다. 전체 릴리즈 노트를 다 정리하기는 분량이 너무 많아서, 새 기능 중심으로 정리해 보았습니다.…