728x90
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp-rs
namespace: default
labels:
app: myapp-rs
spec:
selector:
matchLabels:
app: myapp-rs
replicas: 3
template:
metadata:
labels:
app: myapp-rs
spec:
containers:
- name: myapp
image: httpd
livenessProbe:
httpGet:
path: /
port: 80
startupProbe:
httpGet:
path: /
port: 80
ports:
- containerPort: 80
name: myapp-rs
Apache(httpd) 를 구동하기 위한 replicaSet 오브젝트입니다.
그동안 다루지 않았던 것인 Probe가 있습니다.
실제로 탐사정과 같은 역할을 수행해 프로브라는 이름이 붙었다.
총 3가지 프로브가 있습니다.4
- livenessProbe
컨테이너가 동작 중인지 확인하고, 진단에 실패하면 재시작 정책을 적용합니다.
해당 프로브를 선언하지 않으면, 기본 상태는 Success
- readinessProbe
컨테이너가 요청 처리 준비가 되었는지 확인하고 진단에 실패하면 엔드포인트 컨트롤러는 파드의 IP 주소의 엔드포인트에서 제거됩니다.
해당 프로브를 선언하지 않으면 기본 상태는 Success
- startupProbe
컨테이너의 애플리케이션이 시작되었는지 확인하고 해당 프로브가 선언되었을 경우, 진단을 통과하기 전까지 다른 프로브를 활성화하지 않습니다.
apiVersion: v1
kind: Service
metadata:
name: myapp-svc-lb
namespace: default
spec:
selector:
app: myapp-rs
type: LoadBalancer
ports:
- port: 8080
targetPort: 80
Service 오브젝트 입니다.
위 구조는 다음과 같은 그림으로 표현할 수 있습니다.
728x90
반응형
'Cloud > Kubernates' 카테고리의 다른 글
[k8s, kubernates] emptyDir 볼륨과 초기화 컨테이너 (1) | 2024.07.16 |
---|---|
[k8s, kubernates] 볼륨이란? (1) | 2024.07.16 |
[k8s, kubernates] 서비스 -1 (0) | 2024.07.15 |
[k8s, kubernates]컨트롤러 : 데몬셋 (0) | 2024.07.09 |
[k8s, kubernates] 컨트롤러 : 레플리케이션 컨트롤러와 레플리카셋 (0) | 2024.07.09 |