1.DaemonSet
クラスター内の全ノード(または特定のノード)に、Podを必ず一つずつデプロイするリスーすである。

- DaemonSetとDeploymentを比較すると、replicasの有無を除けば構成は同一である。
1-1.DaemonSet作成
apiVersion: apps/v1
kind: DaemonSet
metadata:
labels:
app: ds-nginx
name: ds-nginx
spec:
selector:
matchLabels:
app: po-nginx
template:
metadata:
labels:
app: po-nginx
spec:
containers:
- name: nginx
image: nginx
1-2.動作確認

①replicasが設定されていないにもかかわらず、Podが各ワーカーノードにデプロイされた。
※新規ワーカーノードが追加された場合、DaemonSetによって新規ノードにも自動的にデプロイされる。
2.StatefulSet
Podごとに「固有の識別子(名前)」と「専用ストレージ(データ)」を付与し、再起動してもそれらが維持されるように管理するリソースである。

- StatefulSetとDeploymentを比較すると、serviceNameの有無を除けば構成は同一である。
- serviceNameの指定は強制ルール(必須項目)である。
- StatefulSetでデプロイすると、Podは正確な順序に基づいた固定の名前を持つ。
- k8sエコシステムにおいて、唯一「状態(ステート)」を持つ独立した存在である。
2-1.StatefulSet作成
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: sts-chk-hn
spec:
replicas: 3
serviceName: sts-svc-domain #statefulset need it
selector:
matchLabels:
app: sts
template:
metadata:
labels:
app: sts
spec:
containers:
- name: chk-hn
image: sysnet4admin/chk-hn
2-2.動作確認

①0番から順に(順次)生成された。

②scaleoutすると、順次(順番に)増えていく。

③scaleinすると、順次(順番に)減っていく。
'k8s > APP配布' 카테고리의 다른 글
| Job、CronJob (0) | 2026.05.09 |
|---|---|
| command/args (0) | 2026.05.09 |
| Deployment、ReplicaSet (0) | 2026.05.08 |