내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
1. 설명
Kubernetes에는 서비스를 외부 트래픽에 노출하는 여러 가지 방법이 있습니다. 이러한 모드는 서비스의 spec.type 필드를 정의하여 결정됩니다.
2. 자세한 설명
1. 클러스터IP
정의: 기본 유형, 서비스는 클러스터 내에서만 액세스할 수 있습니다.
기능: 클러스터 내부 IP 주소를 통해 서비스를 노출합니다.
예:
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 8080
2.노드포트
정의: 외부 트래픽이 서비스에 액세스할 수 있도록 각 노드에서 높은 포트(일반적으로 30000-32767)를 엽니다.
기능: 모든 노드의 IP 주소와 nodePort를 통해 서비스에 액세스합니다.
예:
spec:
type: NodePort
ports:
- port: 80
targetPort: 8080
nodePort: 30007
3. 로드 밸런서
정의: 클라우드 플랫폼에서 제공하는 로드밸런서는 서비스에 외부 IP 주소를 할당합니다.
기능: 이 IP 주소를 통해 서비스에 접근하며, 외부 트래픽 부하 분산이 필요한 상황에 적합합니다.
예:
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 8080
selector:
app: my-app
4. 외부 이름
정의: 서비스를 외부 도메인 이름(예: 데이터베이스 서비스)에 매핑합니다.
기능: 클러스터 내부 IP나 노드 IP를 통하지 않고 지정된 외부 도메인 이름을 통해 서비스에 액세스합니다.
예:
spec:
type: ExternalName
externalName: example.com
2. 요약
ClusterIP: 기본 서비스 유형으로 클러스터 내에서만 액세스할 수 있습니다.
NodePort: 외부 트래픽이 서비스에 액세스할 수 있도록 각 노드에서 포트를 엽니다.
LoadBalancer: 클라우드 플랫폼에서 제공하는 로드밸런서는 외부 IP 주소를 할당하는데, 이는 로드밸런싱이 필요한 상황에 적합합니다.
외부 이름: 외부 서비스에 대한 액세스가 필요한 시나리오에 적합한 외부 도메인 이름에 서비스를 매핑합니다.