베어메탈용 GKE는 대상 운영체제 배포판이 지원하는 하드웨어에서 실행되는 여러 시스템을 지원합니다. 베어메탈용 GKE 구성은 최소 하드웨어 또는 여러 머신에서 실행되며 이를 통해 유연성, 가용성, 성능을 제공합니다.
베어메탈용 GKE 구성에 관계없이 노드와 클러스터에는 클러스터 및 실행 중인 워크로드의 요구사항을 충족할 만큼 충분한 CPU, RAM, 스토리지 리소스가 있어야 합니다.
최소 및 권장 CPU, RAM, 스토리지 요구사항
베어메탈용 GKE를 설치할 때 다양한 유형의 클러스터를 만들 수 있습니다.
- 사용자 클러스터는 워크로드를 실행합니다.
- 관리자 클러스터는 워크로드를 실행할 사용자 클러스터를 만들고 제어합니다.
- 독립형 클러스터는 워크로드를 관리 및 실행할 수 있는 단일 클러스터이지만, 독립형 클러스터는 사용자 클러스터를 만들거나 관리할 수 없습니다.
- 하이브리드 클러스터는 워크로드를 관리하고 실행할 수 있으며 추가 사용자 클러스터를 만들고 관리할 수도 있습니다.
클러스터 유형 외에도 리소스 요구사항에 따라 다음 설치 프로필 중에서 선택할 수 있습니다.
기본값: 기본 프로필에는 표준 시스템 리소스 요구사항이 있으며 모든 클러스터 유형에 이를 사용할 수 있습니다.
에지: 에지 프로필은 시스템 리소스 요구사항을 크게 낮췄습니다. 리소스가 제한된 에지 기기에서는 이 프로필을 사용하는 것이 좋습니다. 독립형 클러스터에만 에지 프로필을 사용할 수 있습니다.
기본 프로필을 사용하는 모든 클러스터 유형의 리소스 요구사항
다음 표에는 베어메탈용 GKE가 기본 프로필을 사용하여 관리자, 하이브리드, 사용자, 독립형 클러스터를 운영하고 관리하는 데 필요한 최소 및 권장 하드웨어 요구사항이 나와 있습니다.
리소스 | 최소 | 권장 |
---|---|---|
CPU/vCPU* | 코어 4개 | 코어 8개 |
RAM | 16GiB | 32GiB |
스토리지 | 128GiB | 256GiB |
* 베어메탈용 GKE는 CPU 마이크로아키텍처 수준 v3(x86-64-v3) 이상에서 x86-64 CPU 및 vCPU만 지원합니다.
에지 프로필을 사용하는 독립형 클러스터의 리소스 요구사항
다음 표에는 베어메탈용 GKE가 에지 프로필을 사용하여 독립형 클러스터를 운영하고 관리하는 데 필요한 최소 및 권장 하드웨어 요구사항이 나와 있습니다.
리소스 | 최소 | 권장 |
---|---|---|
CPU/vCPU* | 코어 2개 | 코어 4개 |
RAM | Ubuntu: 4GiB CentOS/RHEL: 6GiB |
Ubuntu: 8GiB CentOS/RHEL: 12GiB |
스토리지 | 128GiB | 256GiB |
* 베어메탈용 GKE는 CPU 마이크로아키텍처 수준 v3(x86-64-v3) 이상에서 x86-64 CPU 및 vCPU만 지원합니다.
에지 프로필을 사용하여 독립형 클러스터를 구성하려면 다음 권장사항을 따르세요.
별도의 워크스테이션에서
bmctl
을 실행합니다. 대상 클러스터 노드에서bmctl
을 실행해야 하는 경우 최소 요구사항을 충족하려면 메모리 2GiB가 필요합니다. 예를 들어 Ubuntu의 경우 6GiB, CentOS/Redhat의 경우 8GiB가 필요합니다.MaxPodsPerNode
를 110으로 설정합니다. 클러스터는 평균적으로 노드당 사용자 포드 30개 이하를 실행합니다. 더 높은MaxPodsPerNode
구성을 위해 추가 리소스가 필요하거나 노드당 사용자 포드를 30개 넘게 실행해야 할 수 있습니다.Google Distributed Cloud용 VM 런타임 구성요소는 이 최소 리소스 구성에 고려되지 않습니다. Google Distributed Cloud용 VM 런타임에는 클러스터에 배포된 VM 수에 따른 추가 리소스가 필요합니다.
추가 스토리지 요구사항
베어메탈용 GKE는 스토리지 리소스를 제공하지 않습니다. 시스템에서 필요한 스토리지를 프로비저닝 및 구성해야 합니다.
자세한 스토리지 요구사항은 설치 기본 요건 개요를 참조하세요.
필요한 스토리지를 구성하는 방법에 대한 자세한 내용은 베어메탈용 GKE 스토리지 구성을 참조하세요.
노드 머신 기본 요건
노드 머신의 기본 요건은 다음과 같습니다.
- 운영체제가 지원되는 Linux 배포판 중 하나입니다. 자세한 내용은 운영체제 선택을 참조하세요.
- Linux 커널 버전은 4.17.0 이상입니다. Ubuntu 18.04 및 18.04.1은 Linux 커널 버전 4.15에 있으므로 호환되지 않습니다.
- 최소 하드웨어 요구사항을 충족합니다.
- 인터넷 액세스
- 다른 모든 노드 머신에 대한 Layer 3 연결
- 제어 영역 VIP에 대한 액세스 권한입니다.
- 올바르게 구성된 DNS 네임서버
- 중복된 호스트 이름이 없습니다.
- 다음 NTP 서비스 중 하나가 사용 설정되어 작동합니다.
- chrony
- ntp
- ntpdate
- systemd-timesyncd
- 작동하는 패키지 관리자: apt, dnf 등
- Ubuntu에서는 Uncomplicated Firewall(UFW)을 사용 중지해야 합니다.
systemctl stop ufw
를 실행하여 UFW를 사용 중지합니다. Ubuntu에서 베어메탈용 GKE 1.8.2부터는 AppArmor를 사용 중지할 필요가 없습니다. 이전 버전의 베어메탈용 GKE를 사용하여 클러스터를 배포하는 경우 다음 명령어를 사용하여 AppArmor를 사용 중지합니다.
systemctl stop apparmor
클러스터 생성에서는 베어메탈용 GKE 시스템 구성요소에 필요한 여유 공간만 확인합니다. 이러한 변경사항으로 인해 애플리케이션 워크로드에 할당할 공간을 더욱 효과적으로 제어할 수 있습니다. 베어메탈용 GKE 클러스터를 설치할 때마다 다음 디렉터리를 지원하는 파일 시스템에 필요한 용량이 있는지 또한 다음 요구사항을 충족하는지 확인합니다.
/
: 17 GiB(18,253,611,008바이트)./var/lib/containerd
:- 제어 영역 노드용 30GiB(32,212,254,720바이트)
- 워커 노드용 10GiB(10,485,760바이트)
/var/lib/kubelet
: 500 MiB(524,288,000바이트)/var/lib/etcd
: 20 GiB(21,474,836,480바이트, 제어 영역 노드에만 해당)
클러스터 버전에 관계없이 앞의 디렉터리 목록은 같은 파티션에 또는 다른 파티션에 있을 수 있습니다. 같은 기본 파티션에 있는 경우 공간 요구사항은 해당 파티션의 각 개별 디렉터리에 필요한 공간의 합계입니다. 모든 출시 버전에서 클러스터 만들기 프로세스가 필요한 경우 디렉터리를 만듭니다.
/var/lib/etcd
및/etc/kubernetes
디렉터리가 없거나 비어 있습니다.
베어메탈용 GKE를 설치하고 실행하기 위한 기본 요건 외에도 고객은 해당 산업 또는 비즈니스에 적용되는 관련 표준(예: 신용카드를 처리하는 비즈니스에 대한 PCI DSS 요구사항 또는 방위 산업 비즈니스에 대한 보안 기술 구현 가이드(STIG))을 준수해야 합니다.
부하 분산기 머신 기본 요건
배포에 특수 부하 분산기 노드 풀이 없으면 작업자 노드 또는 제어 영역 노드가 부하 분산기 노드 풀을 빌드하도록 할 수 있습니다. 이 경우 다음과 같은 추가 기본 요건이 적용됩니다.
- 머신이 동일한 Layer 2 서브넷에 있습니다.
- 모든 VIP는 부하 분산기 노드 서브넷에 있으며 서브넷의 게이트웨이에서 라우팅할 수 있습니다.
- 부하 분산기 서브넷의 게이트웨이는 불필요한 ARP를 리슨하여 패킷을 마스터 부하 분산기로 전달해야 합니다.