이 페이지에서는 Google Kubernetes Engine(GKE)에서 StatefulSet 객체를 사용하는 방법을 설명합니다. 또한 스테이트풀(Stateful) 애플리케이션 배포에 대해서도 설명합니다.
StatefulSet 정보
StatefulSet는 예약된 위치와 관계없이 GKE가 유지보수하는 고유한 영구 ID 및 안정적인 호스트 이름이 포함된 일련의 포드를 나타냅니다. 모든 특정 StatefulSet 포드의 상태 정보 및 기타 복원력이 우수한 데이터는 StatefulSet의 각 포드와 연결된 영구 볼륨에서 유지관리됩니다. StatefulSet 포드는 언제든지 다시 시작할 수 있습니다.
스테이트리스(Stateless) 애플리케이션에는 배포를 사용하세요.
StatefulSet는 GKE 및 Kubernetes에서 유사하게 작동합니다. 이 문서에서는 GKE 관련 고려사항을 설명합니다. StatefulSet의 작동 방식을 알아보려면 StatefulSet에 대한 Kubernetes 문서를 참조하세요.
StatefulSet의 네트워킹 계획
StatefulSet는 PersistentVolume 및 고유한 네트워크 ID(호스트 이름) 형식으로 영구 스토리지를 제공합니다. 다음 표에서는 애플리케이션 운영자가 StatefulSet를 구성할 때 알아야 할 주의사항을 포함되어 있습니다.
네트워킹 주의사항 | 설명 | 권장사항 |
---|---|---|
고정 IP 주소 대신 GKE 서비스 |
포드 복제본에는 고유한 서수 색인이 있고, 복제본당 볼륨과 네트워크 ID(호스트 이름)가 지원되지만, GKE가 포드를 다시 예약하거나 삭제하면 복제본에 할당된 IP 주소가 변경될 수 있습니다. |
네트워킹 문제를 완화하려면 아키텍처에서 Kubernetes 서비스 리소스를 사용해야 합니다. 자세한 내용은 Kubernetes 서비스 유형을 참조하세요. |
헤드리스 서비스 |
초기화되면 StatefulSet는 일치하는 헤드리스 서비스와 페어링됩니다. |
서비스의 `metadata.name`이 StatefulSet의 |
피어 검색 |
스테이트풀(Stateful) 애플리케이션이 완전한 가용성으로 기능하려면 최소 복제본 수(쿼럼)가 필요합니다. |
포드가 비정상 종료되거나 다시 예약되거나 삭제될 수 있으므로 StatefulSet의 각 복제본은 쿼럼을 종료하고 다시 조인할 수 있어야 합니다. 피어링이 필요한 애플리케이션에는 Kubernetes의 헤드리스 서비스를 통해 다른 피어를 검색할 수 있는 기능이 있어야 합니다. |
준비 프로브 및 활성 프로브를 기반으로 하는 상태 점검 |
해당하는 경우 애플리케이션이 준비, 활성, 시작 프로브를 적절하게 구성해야 합니다. 각 프로브의 제한 시간은 애플리케이션 요구사항에 따라 달라집니다. |
준비 프로브의 경우 다음 권장사항에 따라 트래픽을 처리할 준비가 되면 애플리케이션을 준비 상태로 표시합니다.
|
프로브에 대한 자세한 내용은 활성, 준비, 시작 프로브 구성을 참조하세요.
StatefulSet 작업
GKE 클러스터에 StatefulSet를 배포하고 상호작용하는 방법은 StatefulSet 기본 사항에 대한 Kubernetes 문서를 참조하세요.
다음 단계
- 스테이트풀(Stateful) 애플리케이션을 배포하는 방법 알아보기
- 순차적 업데이트를 사용하여 StatefulSet를 업데이트하는 방법 알아보기
- GKE에서 워크로드 배포하는 방법 알아보기
- Kubernetes 문서에서 StatefulSets 관련 정보 읽기
- 스테이트풀(Stateful) 워크로드를 실행하는 클러스터 업그레이드에 대한 튜토리얼 이용하기