StatefulSet 영구 IP 할당
주석
ncp/ip_range
를 사용하여 StatefulSet에 대한 IP 주소 범위를 지정할 수 있습니다. NCP는 네임스페이스의 서브넷을 기준으로 범위의 영구 IP 주소를 StatefulSet의 포드에 할당합니다.이 기능은 정책 모드에서만 지원됩니다. 이 기능을 사용하도록 설정하려면
ncp.ini
의 [K8s]
섹션에서 statefulset_ip_range
항목을 True
로 설정합니다. 기본값은 False
입니다. True
로 설정하면 다시 False
로 설정해서는 안 됩니다.ncp/ip_range
주석 지정 예제:apiVersion: apps/v1 kind: StatefulSet metadata: name: web spec: selector: matchLabels: app: nginx # has to match .spec.template.metadata.labels serviceName: "nginx" replicas: 3 # by default is 1 template: metadata: labels: app: nginx # has to match .spec.selector.matchLabels annotations: ncp/ip_range: 192.168.0.10-192.168.0.50 spec: ...
NCP가 IP 범위를 확인하거나 범위에서 주소를 할당할 때 오류가 발생하면 StatefulSet에
ncp/error.ip_range:<error>
주석이 추가됩니다. 다음과 같은 오류가 발생할 수 있습니다.- INVALID_IP_RANGE - IP 범위가 네임스페이스의 서브넷에 있지 않거나, 둘 이상의 서브넷에 있거나, 기존 포드가 범위의 IP 주소를 이미 사용하고 있습니다.
- IP_RANGE_EXHAUSTED - 모든 주소가 할당되었기 때문에 ncp가 범위의 IP 주소를 할당할 수 없습니다.