ááľáłááť. áľáááá¨áá á˝áá á áááá˝ á¨áľáá˝ á¨áźá áŠáŁá፠áááá áááá˛áśá˝ áá¸áᢠá¨áŠá áááľáľ áááľá°á á á áŤá áá á¨á°áŤáŤá [á ááłáá´ áŁáááŁááá áá á ááá] á áŁá á áááĽáᢠá¨áá á˝ááŽá˝á áĽá á¨á°áłáłáą á áááŤá¨áśá˝á á ááľ áá áá°áŁá°áĽ á˝áááá˘
Kubernetes á á°á ááááŁá¸á áááłáľ á¨á ááŤáł áľáĽáľáŚá˝ áá á áá°áá (áááąá á¨áá°áłá°áŠ áĽá á¨ááá°áłá°áŠ - á GCPᣠAWS áĽá Azure)ᢠá¨áá á áá á ááłááľ áľá
á°áśá˝ áŤáááá¨áĽ áĽáá°áá°ááá ááľá°áá ááááᢠááá áá, á áá
ááľáĽ ááá áĽáá¨áľ á¨áá: á áĽáááášá áĽá áĽáŤáłá˝á á áľáááá!
á˝áá á áŁá á¨á°áááą áľá
á°áśá˝á á¨áŤá á˛áá áĽáá´áľ áĽááąá ááľá°áŤá¨á áĽáá°ááťáá áá á
áłá.
1. ááááá˝: áĽáŤááá˝ áĽá áá°áŚá˝
áá ááĽá á áĽááá áááľ á áááአááľáĽ á áŁá á¨á áἠáľáŠá¨áľ áĽá á¨ááááŞáŤ áŚáł áááŁááá˘
á¨á˛áአáĽáŤá áĽááá áá á¨ááś á áá°ááá¸á ááá á áŁá áá
á°á áá á áá (á á°áťá áá á á áĽáŤááłááą ááľááá ááááľ áá áĽá áĽáááĽáá˝á áááľáááĽ). áľááá
, á ááááš á¨áá á á áá ááŤáá. á¨áá°á áááľ á áááá áľ áá á¨ááľááá ááááľ á¨ááááŁá áŞáŤ ááá áá á áá áĽá
á áá áááá áĽá á¨á°áá°á á¨áĽáŤ áŤá á¨ááá áá "á¨á á¨ááá" áĽáť áá. á˛áአáľáŽáľááá. áá
áá° á¨ááŻá á¨áá°áá áŞáŤ áááá¨áľ, áá ááĽááŤáá˝ áĽá ááá˝ á°áľ á¨ááá áááá˝ áŤáľá¨áľáá. (áľááá
á áááá á¨á
áἠáá áľáááá˝á áá á¨á áá á ááĽáĽáĄ â
ááἠáĽá¨áľ (áĽá á á áá°áá á¨ááá¨á):
resources: {}
áĽá á á áŁá áá á°á á¨á˛áአáĽáŤá (áĽá á á áá°áá á¨ááá¨á):
resources:
Requests:
cpu: "1m"
á áá á áŠáᣠá¨á˛áአáá°áĽ ááአá¨ááľááá ááááľ ááŽá°á°á áá á áá áŁááŤáá áĽááł á¨á°ááľ áá°áśá˝á áŤáááááŤáľ á ááľ ááááá áŤáľá¨áľááᢠá áľáá, áá áá° áááá¨áśá˝ áá¨áá ááŤá፠áá˝áá. á áááŞáŤá ááŞáŤ áááἠááĽááᢠá˛áአCFS áŽáł á ááááľ á¨ááá áĽá á á˛áአáľáŽáľááá áĽáá°á°ááá á áá°áĽáŁ áĽáá˛áá á¨CFS áŽáłáá áá°áá¨á... ááŽáŁ á¨á˛áአáá°áŚá˝ áááą á¨áá˝ááľ á áá áĽá á˝ááŽá˝á ááŤáľá¨áľá áá˝ááᢠáľááá ááłá á°á¨á᪠áá¨á á¨áá á áłá˝ áŁáá áááá ááááľ ááťáá.
á¨áá á á áá áá፠(á¨áá á áŤáá) á¨ááľáłááľ á˝áá áá° áľááá á˝ááŽá˝ áá፠áá˝áá. á¨á˛áአáá°áĽ áá ááľá¨áľ á¨á°ááľ áá°áśá˝á ááááá áá¨ááŤáᣠá¨áá á°á¨ áľááľáł áá°áĄ áá á˛á°ááľ ááľáá ááá°áá áá áááᢠáłáá á áłáááá OOMkill? á áᣠá áľááá á¨ááááá¨á áľáá፠ááá˘
áá
á¨áá¨á°áľ áĽáľáá ááááľ ááááá? áá
á°á¨ áľááľáłá á¨áá á á áá á áááľáĄ áĽá á¨á°á¨ááá QoS (á¨á áááááľ áĽáŤáľ) áá áá á¨áá
á°á¨ áľááľáł áĽáŤááá áá° áá°áĄ á áááááľ (á¨áá
á áłá˝ áŁáá ááłá)ᢠáľááá
ááłá á ááľáĽ á¨á áá áŤááĽáĄ
ááááł á¨áá˝á (áŚáŚá¤á á¨ááá°á á¨áá°á ááľá)
resources:
requests:
memory: "128Mi"
cpu: "500m"
limits:
memory: "256Mi"
cpu: 2
á¨á°á¨ááá :
resources:
requests:
memory: "128Mi"
cpu: 2
limits:
memory: "128Mi"
cpu: 2
ááĽáśá˝á á˛áŤááá áá áá¨áł áá˝áá?
á áĽáá áááŞáŤáá˝-á áááá á¨á ááá á¨á˛áአááĽáľ áááł áĽá á¨áá á°á¨ áľááľáł á á áááá á ááľ (áĽá á ááľáŁá¸á ááŤáŁáá˝) áá¨áľ áá˝ááᢠááááŁáľ áĽááľá á áľááľáá áĽá¨á°á ááá áľ ááᢠá¨áá¨á°ááľá áľáááá˝ áĽáť áŤááą:
kubectl top pods
kubectl top pods --containers
kubectl top nodes
áááᣠá áá áŤááá á á ááá áĽáť áŤáłáŤáᢠá¨ááĽá°áąá á á°á á°á¨á°á áááłá ááłáĽ áá°áĽááľ áá˝áá ᣠáá á áá¨á¨áť áŤáľáááááłá á áá áá°áľ á¨áááŞáŤ áááŚá˝ áłáŞá (áĽáá° âá¨á¨áá°áá á¨á˛áአáááľ áá áá á?âᣠâáľáááľ á ááľ áááą áá áá á?â áĽá á¨ááłá°ááľá áĽáŤááá˝ áááááľ)ᢠááá á áá áá áá˝áá ááŽááľá¨áľ, DataDog áĽá ááá˝ ááłáŞáŤáá˝. á ááá áááŞáŤáá˝á á¨áááŞáŤ-á áááá áŤááá áŤá¨ááťáᣠáĽá á°á ááá áá ááá¸á áĽá á áá áá°á¨áľ ááŤá´áŤá¸á áá˝ááá˘
á¨áŽáááŠá°á áááá á áĽááľ áá áá ááá áľáŤ á áá°ááᢠá´áľáŞáľá áá áá ááŤááľ ááᢠáá ááľá°á á ááŤá áááł (~10%) áľááľ ááá ááá á áŁá áĽá áĽá¨á¨áá á¨ááᣠá AWS Fargate ááá Virtual Kubelet áá á¨á°áá°á¨áą áááśá˝á áĽáá˛ááá¨áą áĽááááŤááᢠáĽááą á¨á°áááĄáľ á áááá á ááá/á á á ááá áá፠á¨áá¨áá á¨ááłáĽ á á¨ááá áá´á áá áááŁáá á á áĽáá°áá á áááľ áááłáá˝ ááŤá˝ ááá áá˝ááá˘
2. ááá áĽá áááááľ ááááŤáá˝
á ááŁáŞáŁ á¨á ááá áĽá áááááľ áá¨áááŤáá˝ á áŠá áááľáľ ááľáĽ á ááááᢠáĽá á ááłááľ áá áĽááąá ááĽáŤáľ áá¨áłá ...
ááá áá ááłá áľá á°áľ á ááá áá áľ áá á áááááąá áĽáá°áá áĽáá´áľ ááľááá áá˝áá? áĽá á¨áááľ áááłá¨áŞáŤá á ááľ ááľ áľáŤáá áááá á ááá áááá áĽáá´áľ áŤááá? ááá á°á¨á᪠áľáŤááá ááľá°áááľ áá˝áá?
áĽááá áá°ááá˝ áĽááá áá áĽááľ á ááľ áá°áŁááá-
- ááá - "á¨ááłá" áźá, ááľ áŤáá°áłáŤ áĽáá°áá áŤáľááá¨áá;
- áááááľ - áááááľ áá¨áá፠ᣠáŤáá°áłáŤ ᣠááľáá ᨠKubernetes á áááááľ áŤáá
áá (áá
á á áá áá áá¨ááἠááťáá)
kubectl get endpoints
) áĽá ááŁáŠ áźá á á°áłáŤ áááł áĽáľáŞá ááá áľá¨áľ áľáŤáá áá° áĽáą á áá°ááľáá˘
áĽááá áááąá áźáŽá˝ á ááľ á á ááá á¨á áááľ áá°áľ ááľáĽ á°áŤááˇá. á áŁá á áľááá áá.
á¨á°ááá°á á¨á°áłáłá° áááᤠá¨áááááľ ááááŤáá˝ á¨áá¨ááááľ á áááłá áľ áá áĽáť áá áľáááá ááá ááą ááá áááá ááá
áá˝áá (Ready
) áĽá áľáŤááá ááŤááľ áááá áá˝ááᢠááá, áá
áá á ááá á ááŤáŽá˝ á ááą áĽáť áá.
ááá á ááłá áá áŤáá áľáŤáá á¨áá á á áá áááá á¨ááá áĽáľá áĽá á¨áá á á áá ááŤáá (ááá ááľá á ááĽáľ-á°áŽá áľááśá˝á áŤá¨áááá). á áá áááł, áááááľ áá¨ááἠáá¨áłá á ááłá áá áŤááá áááľ ááááą áĽá "áááá" áŤáľáááľ. ááá°ááą áááááľ áá¨áá፠á á°áłáŤ áááł áá ááá áŤáľá˝áá á ááłá áá áŤááá áááľ áĽáá°áá áá¨ááŠ. á áá áááł (á¨áááááľ áá°áá áŤáá°áłáŤ) á¨á áááľ áá°áá ááľááľ á áŁá á°ááŤá ááááᢠá¤áá áĽá á ááᎠá¨áá°áŤ ááľ ááá áĽáá°áá áŤáľááá¨áá?
áľááá
, á á ááłááľ áááłáá˝, ááá á áááľ áźáŽá˝ á á°áłáłá° ááááľ á¨á°ááአáááŞáŤáá˝á á¨ááááľ á¨á°áťá áá. á¨áá áĽáá°á°áááá á¨áá á¨á ááá áźá á
ááá˝ áááááľ áá¨áááŤ, á¨ááŤá áľáá
á˝áá ááľáĽ áááľ. á¨ááťáá á ááŤá áááá ááá˘
áááąá á¨áźáŽá˝ ááááśá˝ á¨á°áááą áĽááá˝ áłááłáŠ á˛áአááá°á
á¨ááŁá¸ááᣠá áá áá፠áá
áá° ááá á¨ááłáá˝ ááľááľ (á áŤááá˝-áá°á) ááľááľá áŤáľá¨áľááᢠá áá áá,
3. ááĽáŤááłááą á¨á¤á˝á˛á˛á á áááááľ LoadBalancer
ááááŁáľáᣠáá° ááá ááá ááľá°ááá á¨ááľáááá¸á á¨á¤á˝á˛á˛á á áááááśá˝ á áááľá°áá ááľáĽ áááá áá˝ááá˘
á áááááąá á¨á¨ááą type: LoadBalancer
á°ááŁáŁáŞá (á á áááááľ á á
áŤá˘á áá á áááľá¨áľ) á¨áá LoadBalancer (á¨ááľ á L7 áá áłááá á L4 áá áĽáť áłááá) áŤáááŁá áĽá áá°áŤá°áŤá ᣠáĽá áá
ááŞáá áááł áá˝áá (ááŤá á¨áááááłááľ IPv4 á áľáŤáť ᣠá¨áŽáááŠá°á ááá ᣠá á°á¨ááľ á¨ááłáĽ á á¨ááá) ) áĽá ááĽá áŤáá¸á áĽáá˛á
áŤá ááĽáśá˝á ááá á á áľááá á ááá.
á áá
áááł, á ááľ á¨áá áááľ áááá áá áá, á áááááśá˝á áĽáá° ááááľ á¨á áá ááááŤáłá áá type: NodePort
. ááá á¨á°áťá ááᣠá¨áá ááá á áľáá nginx-ingress-á°ááŁáŁáŞ (ááá trafik) áá áĽáť ááááᢠááľááá ááááľ á¨áá¨á¨áť ááĽáĽ á¨ááŞá ááľ ááá áá á¨á°áŤáŤá áĽá á áááľá°á ááľáĽ áŤááá áľáŤáá á°á á
á áááŤáᢠáĽáľááľ-Kubernetes ááĽáśá˝.
áĽááľ á ááľ á¨áááá ááá˝ á¨ááľá -áááľá°á (ááááŽ) á áááááśá˝ áĽáá° á áááááśá˝á á áá áá "áááááľ" áá˝áá áááľá°áá áá áĽá á áĽáŽ á¨á°á°áŤ á¨á áááááľ ááá áá´ á Რá¤á á¤áľ á áŠáᢠáá á áááá¨áľ áá á°á˝áá áľáááŤáłáľá áĽá á¨á°áá á áááááśá˝á áá áá¨áá áľááá˝á á¨áĽááąá ááá Რá¤á á¤áľ/á áá á áá ááá˘
4. áááľá°á áŁá áŞáŤáąá á¨áááľ ááľáĽ áłáŤáľáᥠá áŤáľ-á°á ááá á
ááśá˝á áá° áááľá°á á˛áŤáľáááˇá¸á áĽáá° á˛áአá á ááá áŁá á ááłááľ áá°á¨áłá áááŞáŤáá˝ áá áá°ááá á¨ááĽááľáᢠá¨ááľ áĽá áľ áĽááá˝á áááľ ááľáĽ ááľááŁáľ á áá áľ áá°áŚá˝áĽáá° ááľ/ááľááá á áá áľáŁ áááťáá˝ áĽá ááťáťáᣠá¨ááĽá¨áľ áĽáŤááá˝áŁ QoSᣠááá°á˘ áĽááá á áĽáá á áááŽá˝ áááľ ááľáĽ áŤááľáᣠááŤá á ááśáá˛áá áá áá áá° á˝ááŽá˝ áá፠áá˝áá.
á ááľ á¨á°áá°á ááľ áááááĽá ááľáŤá áĽááłáá áľ á áľáĄáľáŁ ááá áá ááá áŤáá á¨á˛áአááá á°á á¨á/á°ááá á áĽá ááľ áááł ááľáĽ ááŁá áá Pending
. ááŤá á ááśáá˛á áááŞáŤ á ááŤá á¨á ááá á˛áአáááľ (á¨á°á á¨ááá áłááá) áŤáŤá áĽá ááľáááľá á áááááᢠ(áááŞáŤ áááŁáľ) - áá ááľááá ááááľ á áá¨ááá. á áá¤áąá, áá
ááľ ááá ááĽá á áá°á¨áá.
á áá
áááł, á¨á°ááá˘áŚá˝ ááŹáľ (ááá-ááľáĽ) - ááľááá ááááľá á¨áĽá
á ááľáĽ ááľáááľ áá áá ááá°áá á á¨á áá á¨áŁáľ ááᢠáááłá ááľ (á¨áá áá¨ááť áá á¨á°ááá) áĽááłáá
á áľáĽá˘ á¨ááŤááἠáĽáŤáá˝ áĽááá áá ᨠá¨á°áá°á á°ááááľ áá áĽá á ááá ááľáĽ á áá°ááá. áľááá
, ááŤá á ááśáá˛á áá˝á á¨áá
ááľ áá á ááľ ááľááá ááááľá á¨á°á¨á, á¨áá á°ááłá á ááŞá áá
áá ááľ á áá ááľááá ááááľ áá áááľ á áá˝áá, ááááŤáąá áá
áá ፠á¨áá˝áá áááá áá¨ááť á áááá áľ á á°ááááľ áá ááľáĽ áĽáť áá. ááľ á áááł ááľáĽ á°áŁáĽá áááŤá Pending
.
á áŠá áááľáľ áá
á á¨á°áĽ ááľáĽ á áŁá áłáá
5. á¨IAM/RBAC á˝ááłáá˝á á˝á áááľ
ᨠIAM á°á áááá˝á á áá ááľáĽáŽá˝ á¨áá áá áá ááá áá˝áá˝ áĽá áá°áá áŞáŤáá˝. áááá˝á áĽá á¨á áááááľ áááŤáá˝á á áá áá áááŤá ááłá¨áťá áŤá°áŤá (á¨á áááááľ áááŤáá˝).
áĽá áá á¨ááłá¨áť áááá˝ (áĽá ááľáĽáŽá˝) á áá°áá áŞáŤá áá á¨áľ ááľáĽ áááľ áŽáľ á¨á°á°á¨ááŁá¸á áĽá áĽáá˛áá ᨠCloud IAM ááłá¨áť á˘ááŤá¸áá á¨ááľá˘á áááá á˝á áááłá¸á áĽáááł áŤááĽáááᢠá á°áá˘á áá á¨á°á áááá˝ ááá á¨IAM áááá˝á áĽá á¨á áááááľ áááŤáá˝á áá ááá˘
áľá kube2iam áá¨áą áĽá á ááĽáł áá áááááľ áááŤáá˝ áá° IAM áááá˝ áááą (á ááľáĽ áĽáá°á°ááá¸á)
apiVersion: v1
kind: ServiceAccount
metadata:
annotations:
eks.amazonaws.com/role-arn: arn:aws:iam::123456789012:role/my-app-role
name: my-serviceaccount
namespace: default
á ááľ ááĽáŤáŞáŤá˘ áŤá áŤá á á¨áŁáľ á áá°áá á áá°á?
áĽáá˛áá á¨á áááááľ áááŤáá˝á áĽá á¨á áĽááľ ááááŤáá˝á áአááĽáśá˝á á áľáľáĄ admin
и cluster-admin
á¨ááŤáľáááá¸á á¨áá. áá
á á°áá á RBAC K8s ááľáĽ ááá°áá á áľáá˝ á¨á áá á¨áŁáľ ááᣠááá áá á áĽááá áááľ áĽá¨áąá á¨ááŤáľáá ááá˘
6. áááłáá˝ á áŤáľ-á°á áá¨-á°ááá ááľ áá á áá°ááá
á ááľááá ááááľ áá á ááłááľ á¨áá°ááŤáľ áśáľáľ á ááá˝ áĽááłáá á áľáĽá˘ ááľááá ááááľ áááľáá, áĽá á¨áĽáą áá ááá á ááá˝. á°áľ á¨ááá áááł, áľááá? áá ááá ááá á ááá˝ á á°ááłáłá ááľááá ááááľ áá áá áŠ? áŠá áááľáľ á¨áá°á á á ááŚáľ (HA) áá á¨áĽ á¨áá áľá?!
áĽáá° á áááłá°á áá á¨áŠá áááľáľ áááááĽá á áľáŤá á áŤáą á°ááłá˝ááľ á¨á°áᨠáááá á°ááŚá˝á á áŤá¨áĽááᢠ(áá¨-áááááľ) áááłáá˝. á ááá˝ áááá˝ á ááŁá¸ááĄ-
// ОпŃŃонО Đ´ĐťŃ ĐşŃĐ°ŃкОŃŃи
labels:
app: zk
// ОпŃŃонО Đ´ĐťŃ ĐşŃĐ°ŃкОŃŃи
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "app"
operator: In
values:
- zk
topologyKey: "kubernetes.io/hostname"
ááźá áá. á áá ááśáá˝ á á°ááŤáŠ á áááá˝ áá ááááá (áá
áááł á¨ááá¨áá¨á á áááááĽá áá áĽáť áá ᣠáá á áá áŠá áľ áá á áá°áá - áľáááá requiredDuringSchedulingIgnoredDuringExecution
).
áĽáá
áĽá¨á°ááááá áá podAntiAffinity
á á°ááŤáŠ á áááá˝ áá; topologyKey: "kubernetes.io/hostname"
, - áĽá áľá á°ááŤáŠ á¨ááá ááá˝ á áá°áá. á¨á°áá á.ᤠááá°áá áᣠá áá
áááľ áá á áĽáááľ áááá á ááŚáľá˘
7. á¨PodDisruption Budgets á˝á áááľ
á áŠá áááľáľ áááľá°á áá á¨áááľ áááľ áĽááłáá á áľáĽá˘ á á¨áááᣠá áááá˝ áĽá áááľá°á áŤáą áááá (ááá ááá¨áĽ) á ááŁá¸áᢠPodDisruptionBudget (PDB) á áááľá°á á áľá°áłáłáŞáá˝ áĽá á á°á áááá˝ ááŤá¨á áĽáá° á¨á áááááľ ááľáľá áľááááľ áŤá ááá ááá˘
áá˛á˘ á á áááá˝ áĽáĽá¨áľ ááááŤáľ á¨ááᥠá¨á áááááľ áááŤá¨áŚá˝á áĽáá˛áŤáľáááą ááá áľáááłááĄ-
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
name: zk-pdb
spec:
minAvailable: 2
selector:
matchLabels:
app: zookeeper
á áá ááłáᣠá áá°áŁ áĽáá° áááľá°á á°á ááᣠáá áľá°áłáłáŞáá˝ âááᣠá¨áĽááľáłáľ áĽá á á áááááľ á ááᣠáĽá ááá áĽáłá°ááᣠáááá á¨áá á áááááľ á˘áŤááľ 2 á ááá˝ áĽáá˛ááŠá áĽáááááá˘â
áľááá
ááłá á¨á áá ááá ἠáá˝áá
8. áĽá á°á áááá˝ ááá á áŤáŁá˘áá˝ á á፠ááá
á¨áŠá áááľáľ á¨áľá áŚáłáá˝ (áľá áŚáłáá˝) á ááŤáŤ áá¨áá¨áŤ á ááľáĄ.
á¨á°ááá°á á¨á°áłáłá° áááᤠáááľ áŤááá áááľ áá° á ááľ á¨áľá áŚáł áĽá á¨áááľ áááľ áá° áá áŤá°áአáĽááą á ááá ááአá ááłá¸á á ááá áá á°á˝áá á áááŤá¸ááá˘... ááá áĽáá á¨ááá áĽáŤááá˝á/áá°áŚá˝áᣠáŽáłáá˝á á áááááľ áĽá á áľá፠áááá˝á á áááááľ á¨á°áá°á á°á¨á áááá ááťááᢠá áá¨á á ááŽááá ááľáĽ á ááłááľ âá áŤááâ áááá á á ááá˛áľ ᣠááťáťá ᣠáłááśá˝ (ááá nodeselectors) áá°áŁá ᣠáá áĽáá˛á ááááą áááŤá¨áľ á áŁá áĽáŠ áá ᢠá áľá¸á᪠áá°áá áá˘
áááąáá á¨áĽáŤ áŤááá˝ á á ááľ áááľá°á ááľáĽ ááááľ á¨ááŤáľáááá¸á ááľáĽáľáĽ áááŽá˝á áááá á ááŁá¸á. áĽáá°áá á áááľ ááááľ á¨áá, áĽá á ááľ áĽáá˛ááááľ ááľá¨á áá˝áá á ááľ á°á¨á᪠ááá (áá á, á á á°áŁáŁá á°áá), á¨á፠áá á ááľá¨á á¨á°áťá áá. áá á áŁá á¨áá°á á¨áá á¨áááľ áá¨áá¨áŤ á°á¨á áá°ááłá.
9. á¨áá á¨áľáŤáá ááá˛áĄ áááľá°á
áĽááá áá á áááľá°á ááľáĽ áŤá ááá áľáŤáá áĽáá° ááľáááľ áŁá á áááááľ á áŠá áĽáá°ááᥠáĽááľá°ááááᣠááá
á ááŁáŞá áááŞáŤ á á°ááá ááľ externalTrafficPolicy: Cluster
... áááľ áá ááľááá ááááľ á áááľá°á ááľáĽ á áĽáŤááłááą ááľááá ááááľ áá áááľ áá, áĽá á¨á°áááá á áááááľ (á¨ááľ áľáĽáľáĽ) áá ááááááľ áááá¸ááá áá áá áá˝áá.
á á°ááłáłá ááᣠá¨áá á¨á°á áá°á á¨ááľáááľ á áááááľ áá á¨á°áŤáŤá áĽááá°á ááľáá˝ á áĽáááá áá á¨ááááľ á á°áá°áá áá áĽáť ááᢠá¨áĽááá
á áááá˝ áááľ ááá. á áá á ááááᣠá¨ááááá ááľ á¨ááá ááľááá ááááľ áá á¨á°ááááᣠáľáŤááá áá° áá ááľááá ááááľ áŤáľá°ááááᣠáá áá¨áá áĽá áááá¨áľá áá¨áá (á áááá˝ á á°ááŤáŠ á¨ááá ááá˝/áá¨á ááá¨áá˝ ááľáĽ á¨ááá á¨áá, áááá¨áľ á áŁá á¨áá°á ááá áá˝áá, á á°á¨ááŞá, á¨áááŁáľ á¨áľáŤáá ááŞáá˝ áá¨ááŤá).
á áá á áŠáᣠá¨á°áá°á á¨áŠá áááľ á áááááľ á¨ááᲠá
ááĽá áŤáá externalTrafficPolicy: Local
, á¨á፠NodePort á¨áá¨ááąáľ á áľáááááš ááśá˝ á áľááá á áá°áŠáŁá¸á á áááá˝ áá áĽáť áá. áááłáá á¨áááľá˝ á¨áá áááľ ááá á˛á áá (á¨á¤á ááĽáĽá) á¨áá¨á¨áť ááĽáŚá˝ (áĽáá´áľ áĽáá°áá°áŤ AWS ELB), áĽáą áľáŤáá áá° á áľááá á áááá˝ áĽáť áááŤá, áá
á á áááá¨áśá˝ áá á áá á°á˝áĽá ááá¨áá, á¨áŽáááŠá°á ááááśá˝á, á¨áááł ááłáŚá˝á (áĽá á¨á፠á áľá°áłá°áĽ á°ááłáłá áá).
áĽáá°áá áŤá ááá ááľááá áĽá¨á°á ááá áľ á¨ááá áĽáľá á¨áá°á ááᢠtrafik ááá nginx-ingress-á°ááŁáŁáŞ áĽáá° NodePort á¨áá¨á¨áť ááĽáĽ (ááá LoadBalancerᣠáĽáąá NodePort á¨áá ááá) á¨á¤á˝á˛á˛á ááá˘áŤ áľáŤááá ááááŤáľ áĽá áá á á ááŤá áááááľ ááĽáá°áá á áááľ áĽáŤááá˝ áááá¨áľá á áĽá á ááááłáá˘
Đ
10. á¨áľáĽáľáĽ áá á ááŁáአáĽá á¨áááŁá áŞáŤáá á ááŽááá á áááŁáĽ á áá áá
á¨áá
áá°á á ááááŽá˝á á áľáááá áľáá˝ ááĽáŤáľ á¨á°ááá° áá ááĄ-
á¨á°ááá° áłáŞá (á áĽááá°á ááľá°áśá˝ áá á¨á°áá°á¨á°)ᥠááá á¨á°ááá¨á á á áá°-ááłáĽ áá¨áá፠ááᣠáľááá áááľá°á á¨ááŤáŽáŤ áľá áá á¨áᢠáá¨áŤâŚ áááłáľ á áá áĽá á ááá ááááľ áľáŤ áá ááááᣠáĽá ááá á°á ááááŤáľ áááŤáá˘
áááľá°áŽá˝ áá° á¨á¤áľ áĽááľáłáľ á˛áá¨áŠ ááá á¨ááŤáľá°áľáľ ááá á¨ááᣠáľááá
á áááááąá áľ áá á á¨ááá áĽáá˛áŤáľáááˇá¸á áĽááááŤáá á¨á á°á áááá (áá
áá¨áłá
á á ááťáŠ á°áá áĽáąá á ááá áá á ááá°áľ á¨ááĽá áᢠá¨áá áá á¨áááŁá áŞáŤá ááĽááĽá áááá ááá áá˝áá. ááááŁáľá áá á¨ááá áľ ááááŤáľ áĽá ááĽá áŤáá¸á áááŽá˝ áłááአá ááá አáá (áááá á¨ááŁáŞ á áá áśá˝ áá á˛á ááá áľ á¨á°ááá° áááł áá ᣠááá á áá á áá áŽá˝ / ááľá˘áŽá˝ ááľáĽ áŤáá áááł áŤááááá - á áá¤áąá ᣠá áşáá˝ á¨ááá አáááŽá˝ áá¨ááťáᢠá¨áááŁá áŞáŤá ááĽááĽá) ááá ᨠkube-api áááá˝á á ááááľ á ááľá°áŤá¨á (ááŤáľ-á°á ááŹáľ, á CI / á˛á˛, áááľáľá, á¨ááľá°áľ ááááŚá˝, á°ááŁáŁáŞáá˝, ááá°.).
á á°á¨ááŞáᣠᨠSLA/SLO áľááááśá˝á á¨áá°áłá°á¨á Kubernetes á á
áŤá˘ áá ááá°á˝ áĽá áááľáľáááš áľáŠá¨áľ ááľá áľá áĽááááŤááᢠáťáŠ ááľáľá ááľá áľ áá˝áá á¨áááŁá áŞáŤ ááĽááĽá ááááľ (ááá áááľ ááááš)ᣠááá áá áá° áĽáą á¨ááŠáľ ᨠp99 áĽáŤááá˝ áááá¨áľ á áá°ááᢠá áá á áááá áááŁáľ áľá˝ááá
kubectl get nodes
, áĽá ᨠ10 á°áááá˝ á áá áĽáť áááľ ááá á, áĽá áá
á¨á áááááľ ááá ááŁáľ á áááá.
11. áááť: á¨á áἠáá፠á áá áá
áá áá
ááľááá ááá˛á ááᢠá¨á
áἠáá áá˛á
áá
á áá´ áŤáááá áĽá áá ááᣠáĽááá˝áŁ á¨ááŤáŤ áááľ á ááá áááŤáá áá áá áľááá ááᢠ:latest
áĽá áľáŞáśá˝á áá°áŤáľ ááá¨á˘ ááŤá!
ECR
áá áááŤ
ááá ááá á á ááľ ááá á áĽáá°áá°áŤ á áľá áĽá
ᥠáŠá áááľáľ ááľáááľ á áá°ááᢠááĽá áá°áá áŞáŤ
á ááľáĽ áŤá á¨á°ááŤáŠ áĄáľáá˝ áŤáá°áłáŠ á°áááŽáá˝ áá áá°ááá
áá˝ááá˘
á áá
á˝áá ááľáĽ á á°á°áĄáľ áľá
á°áśá˝ áááá ááľáĽ ááá¨áá á¨áááá á°áá˝ á Twitter áá ááŤááá áá˝áá (
PS á¨á°ááá
á áĽááá˝á áá áŤááĽáĄáĄ-
- ÂŤ
á¨áŠá áááľáľ áľáĽáľáŚá˝á ááá°áᥠáľááľ ááá á áá áľ? "; - ÂŤ
ᨠABC á°á áááľ á áŠá áááľáľáĄ áá¨áááŤáŁ áááľáŁ áŚá˛áľ "; - ÂŤ
á áŠá áááľáľ ááľáĽ á¨áŤáľ-áľáŹá áĽá á¨ááĽá¨áľ á áľá°áłá°á "(á¨áááá áĽá á¨áŞá˛áŽ áááŁ); - ÂŤ
ConfigMaps á Kubernetes ááľáĽáĄ ááá á¨áááŁá¸á ááŠááśá˝ Âť.
ááá: hab.com