Skip to content

Commit ed8dfbd

Browse files
committed
docs: Add Translation to Assign Pods to Nodes using Node Affinity
1 parent de69181 commit ed8dfbd

File tree

3 files changed

+158
-0
lines changed

3 files changed

+158
-0
lines changed
Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
---
2+
title: Menempatkan Pod pada Node Menggunakan Afinitas Pod
3+
min-kubernetes-server-version: v1.10
4+
content_type: task
5+
weight: 120
6+
---
7+
8+
<!-- overview -->
9+
Dokumen ini menunjukkan cara menempatkan Pod Kubernetes pada sebuah Node menggunakan
10+
Afinitas Node di dalam klaster Kubernetes.
11+
12+
13+
## {{% heading "prerequisites" %}}
14+
15+
16+
{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}
17+
18+
19+
20+
<!-- steps -->
21+
22+
## Menambahkan sebuah Label pada sebuah Node
23+
24+
1. Jabarkan Node-Node yang ada pada klaster kamu, bersamaan dengan label yang ada:
25+
26+
```shell
27+
kubectl get nodes --show-labels
28+
```
29+
Keluaran dari perintah tersebut akan berupa:
30+
31+
```shell
32+
NAME STATUS ROLES AGE VERSION LABELS
33+
worker0 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker0
34+
worker1 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker1
35+
worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2
36+
```
37+
1. Pilihkan salah satu dari Node yang ada dan tambahkan label pada Node tersebut.
38+
39+
```shell
40+
kubectl label nodes <nama-node-kamu> disktype=ssd
41+
```
42+
dimana `<nama-node-kamu>` merupakan nama dari Node yang kamu pilih.
43+
44+
1. Keluaran dari Node yang kamu pilih dan sudah memiliki label `disktype=ssd`:
45+
46+
```shell
47+
kubectl get nodes --show-labels
48+
```
49+
50+
Keluaran dari perintah tersebut akan berupa:
51+
52+
```
53+
NAME STATUS ROLES AGE VERSION LABELS
54+
worker0 Ready <none> 1d v1.13.0 ...,disktype=ssd,kubernetes.io/hostname=worker0
55+
worker1 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker1
56+
worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2
57+
```
58+
59+
Pada keluaran dari perintah di atas, kamu dapat melihat bahwa Node `worker0`
60+
memiliki label `disktype=ssd`.
61+
62+
## Menjadwalkan Pod menggunakan Afinitas Node
63+
64+
Konfigurasi ini menunjukkan sebuah Pod yang memiliki afinitas node `requiredDuringSchedulingIgnoredDuringExecution`, `disktype: ssd`.
65+
Dengan kata lain, Pod hanya akan dijadwalkan hanya pada Node yang memiliki label `disktype=ssd`.
66+
67+
{{< codenew file="pods/pod-nginx-required-affinity.yaml" >}}
68+
69+
1. Terapkan konfigurasi berikut untuk membuat sebuah Pod yang akan dijadwalkan pada Node yang kamu pilih:
70+
71+
```shell
72+
kubectl apply -f https://k8s.io/examples/pods/pod-nginx-required-affinity.yaml
73+
```
74+
75+
1. Verifikasi apakah Pod yang kamu pilih sudah dijalankan pada Node yang kamu pilih:
76+
77+
```shell
78+
kubectl get pods --output=wide
79+
```
80+
81+
Keluaran dari perintah tersebut akan berupa:
82+
83+
```
84+
NAME READY STATUS RESTARTS AGE IP NODE
85+
nginx 1/1 Running 0 13s 10.200.0.4 worker0
86+
```
87+
88+
## Jadwalkan Pod menggunakan Afinitas Node yang Dipilih
89+
90+
Konfigurasi ini memberikan deskripsi sebuah Pod yang memiliki afinitas Node `preferredDuringSchedulingIgnoredDuringExecution`,`disktype: ssd`.
91+
Artinya Pod akan diutamakan dijalankan pada Node yang memiliki label `disktype=ssd`.
92+
93+
{{< codenew file="pods/pod-nginx-preferred-affinity.yaml" >}}
94+
95+
1. Terapkan konfigurasi berikut untuk membuat sebuah Pod yang akan dijadwalkan pada Node yang kamu pilih:
96+
97+
```shell
98+
kubectl apply -f https://k8s.io/examples/pods/pod-nginx-preferred-affinity.yaml
99+
```
100+
101+
1. Verifikasi apakah Pod yang kamu pilih sudah dijalankan pada Node yang kamu pilih:
102+
103+
```shell
104+
kubectl get pods --output=wide
105+
```
106+
107+
Keluaran dari perintah tersebut akan berupa:
108+
109+
```
110+
NAME READY STATUS RESTARTS AGE IP NODE
111+
nginx 1/1 Running 0 13s 10.200.0.4 worker0
112+
```
113+
114+
115+
116+
## {{% heading "whatsnext" %}}
117+
118+
Pelajari lebih lanjut mengenai
119+
[Afinitas Node](/id/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity).
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
apiVersion: v1
2+
kind: Pod
3+
metadata:
4+
name: nginx
5+
spec:
6+
affinity:
7+
nodeAffinity:
8+
preferredDuringSchedulingIgnoredDuringExecution:
9+
- weight: 1
10+
preference:
11+
matchExpressions:
12+
- key: disktype
13+
operator: In
14+
values:
15+
- ssd
16+
containers:
17+
- name: nginx
18+
image: nginx
19+
imagePullPolicy: IfNotPresent
20+
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: v1
2+
kind: Pod
3+
metadata:
4+
name: nginx
5+
spec:
6+
affinity:
7+
nodeAffinity:
8+
requiredDuringSchedulingIgnoredDuringExecution:
9+
nodeSelectorTerms:
10+
- matchExpressions:
11+
- key: disktype
12+
operator: In
13+
values:
14+
- ssd
15+
containers:
16+
- name: nginx
17+
image: nginx
18+
imagePullPolicy: IfNotPresent
19+

0 commit comments

Comments
 (0)