เบซเบกเบฒเบโเปเบซเบโ. เปเบ.: เบเบนเปเบเบฝเบเบเบญเบเบเบปเบเบเบงเบฒเบก Reuven Harrison เบกเบตเบเบฐเบชเบปเบเบเบฒเบเบซเบผเบฒเบเบเบงเปเบฒ 20 เบเบตเปเบเบเบฒเบเบเบฑเบเบเบฐเบเบฒเบเบญเบเปเบง, เปเบฅเบฐเปเบเบกเบทเปเบเบตเปเปเบกเปเบ CTO เปเบฅเบฐเบเบนเปเบฎเปเบงเบกเบเปเปเบเบฑเปเบเบเบญเบ Tufin, เบเปเบฅเบดเบชเบฑเบเบเบตเปเบชเปเบฒเบเบงเบดเบเบตเปเบเปเปเบเบเบฒเบเบเบธเปเบกเบเบญเบเบเบฐเปเบเบเบฒเบเบเบงเบฒเบกเบเบญเบเปเบ. เปเบเบเบฐเบเบฐเบเบตเปเบฅเบฒเบงเปเบเบดเปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เปเบเบฑเบเปเบเบทเปเบญเบเบกเบทเบเบตเปเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเปเบชเบปเบกเบเบงเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเปเบเบชเปเบงเบเปเบเบทเบญเบเปเบฒเบเปเบเบเบธเปเบก, เบฅเบฒเบงเบเบฑเบเปเบเบทเปเบญเบงเปเบฒเบเบงเบเปเบเบปเบฒเบเปเปเบเปเบฒเบเบเบตเปเบเบฐเบเบฐเบเบดเบเบฑเบเปเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ. เบญเบธเบเบฐเบเบญเบเบเบฒเบเบเบตเป (เบเปเบญเบเบเปเบฒเบเบกเบตเปเบชเบเบชเบฐเบซเบงเปเบฒเบ) เบกเบตเบเบธเบเบเบฐเบชเบปเบเปเบเบทเปเบญเบเบฑเบเบเบธเบเบเบงเบฒเบกเบฎเบฑเบเบฎเบนเปเบเบญเบเบเบนเปเบเปเบฝเบงเบเบฒเบเบเปเบฝเบงเบเบฑเบเบเบฑเบเบซเบฒเบเบตเปเปเบฅเบฐเบเปเบงเบเปเบซเปเบเบงเบเปเบเบปเบฒเบชเปเบฒเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบตเปเบเปเบฒเปเบเบฑเบ.
เปเบเบกเบทเปเบเบตเป, เบเปเบฅเบดเบชเบฑเบเบเปเบฒเบเบงเบเบซเบผเบฒเบเบเปเบฒเบฅเบฑเบเปเบฅเบทเบญเบ Kubernetes เปเบเบทเปเบญเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบเบญเบเปเบเบปเบฒเปเบเบปเปเบฒ. เบเบงเบฒเบกเบชเบปเบเปเบเปเบเบเบญเบเปเบงเบเบตเปเปเบกเปเบเบชเบนเบเบซเบผเบฒเบเบเบตเปเบเบฒเบเบเบปเบเปเบญเบตเปเบเบงเปเบฒ Kubernetes "เบฅเบฐเบเบปเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเปเบซเบกเปเบชเปเบฒเบฅเบฑเบเบชเบนเบเบเปเปเบกเบนเบ." เบเปเบญเบเป, Kubernetes (เบซเบผเบท k8s) เบเปเบฒเบฅเบฑเบเปเบฅเบตเปเบกเบเบทเบเบฎเบฑเบเบฎเบนเปเบงเปเบฒเปเบเบฑเบเบชเปเบงเบเบซเบเบถเปเบเบเบตเปเบชเปเบฒเบเบฑเบเบเบญเบเบเบธเบฅเบฐเบเบดเบ, เปเบเบดเปเบเบฎเบฝเบเบฎเปเบญเบเปเบซเปเบญเบปเบเบเบฒเบเบเบฑเบเบเบฑเปเบเบเบญเบเบเบฐเบเบงเบเบเบฒเบเบเบธเบฅเบฐเบเบดเบเบเบตเปเปเบซเบเปเปเบเบฑเบกเบเบตเป, เบฅเบงเบกเบเบฑเบเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเปเบเบทเบญเบเปเบฒเบ.
เบชเปเบฒเบฅเบฑเบเบเบนเปเบเปเบฝเบงเบเบฒเบเบเปเบฒเบเบเบงเบฒเบกเบเบญเบเปเบเบเบตเปเบชเบฑเบเบชเบปเบเปเบเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบฑเบ Kubernetes, เบเบฒเบเปเบเบตเบเปเบเบตเบเบเบตเปเปเบเปเบเบดเบเบญเบฒเบเบเบฐเปเบเบฑเบเบเบฐเปเบเบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเบเบญเบเปเบงเบเบต: เบญเบฐเบเบธเบเบฒเบเปเบซเปเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบ.
เบเบนเปเบกเบทเบเบตเปเบเบฐเบเปเบงเบเปเบซเปเบเปเบฒเบเปเบเบปเปเบฒเปเบเปเบเบเบชเปเบฒเบเบเบฒเบเปเบเบเบญเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ; เปเบเบปเปเบฒเปเบเบงเปเบฒเบเบงเบเบกเบฑเบเปเบเบเบเปเบฒเบเบเบฒเบเบเบปเบเบฅเบฐเบเบฝเบเบชเปเบฒเบฅเบฑเบ firewalls เบเบปเบเบเบฐเบเบดเปเบเบงเปเบ. เบกเบฑเบเบเบฑเบเบเบฐเบเบงเบกเปเบญเบปเบฒเบเบฒเบเบเบธเบกเปเบฅเบฐเปเบซเปเบเปเบฒเปเบเบฐเบเปเบฒเปเบเบทเปเบญเบเปเบงเบเปเบซเปเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบเบตเปเบเบญเบเปเบเปเบ Kubernetes.
เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes
เบเบปเบเปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบเบเบฑเบเบเบฒเบเบเบฒเบเปเบเปเบเบญเบเบเบญเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเบเบตเปเปเบเปเปเบเปเบเบฅเบเบเบญเบกเบเบตเปเบเบฑเปเบเปเบเบทเบญเบเปเบฒเบ (เบญเบฑเบเบเบตเบชเบฒเบกเปเบเปเบเบเบเปเบฒเบฅเบญเบ OSI). เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบฒเบเบเบธเบเบชเบปเบกเบเบฑเบเบเบฑเปเบเบชเบนเบเบเบญเบ Firewalls เบเบตเปเบเบฑเบเบชเบฐเปเบซเบกเปเบเบฑเปเบ: OSI Layer 7 เบเบฒเบเบเบฑเบเบเบฑเบเปเบเปเปเบฅเบฐเบเบฒเบเบเบงเบเบเบปเบเปเบเบเบปเปเบกเบเบนเป, เปเบเปเบเบงเบเปเบเบปเบฒเบชเบฐเบซเบเบญเบเบฅเบฐเบเบฑเบเบเบทเปเบเบเบฒเบเบเบญเบเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเปเบเบทเบญเบเปเบฒเบเบเบตเปเปเบเบฑเบเบเบธเบเปเบฅเบตเปเบกเบเบปเปเบเบเบตเปเบเบต.
เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเบชเบทเปเบชเบฒเบเบฅเบฐเบซเบงเปเบฒเบเบเบฑเบ
เบเบฐเบฅเบดเบกเบฒเบเบงเบฝเบเปเบ Kubernetes เปเบกเปเบเปเบเบเบขเบฒเบเปเบเบเบปเปเบงเบเบญเบ, เปเบเบดเปเบเบเบฐเบเบญเบเบเปเบงเบเปเบถเปเบ เบซเบผเบทเบซเบผเบฒเบเบเบฑเบเบเบตเปเบเบณเปเบเปเบฎเปเบงเบกเบเบฑเบ. Kubernetes เบเบณเบเบปเบเปเบเปเบฅเบฐเบเบฑเบเปเบเบฑเบเบเบตเปเบขเบนเป IP เบเบตเปเบชเบฒเบกเบฒเบเปเบเบปเปเบฒเปเบเบดเบเปเบเปเบเบฒเบเบเบญเบเบญเบทเปเบ. เบเบฐโเปเบโเบเบฒเบโเปเบเบทเบญโเบเปเบฒเบ Kubernetes เบเบฑเปเบโเบชเบดเบโเบเบฒเบโเปเบเบปเปเบฒโเปเบเบดเบโเบชเปเบฒโเบฅเบฑเบโเบเบธเปเบกโเบเบญเบ pods เปเบโเบงเบดโเบเบตโเบเบฒเบโเบเบฝเบงโเบเบฑเบโเบเบตเปโเบเบธเปเบกโเบเบงเบฒเบกโเบเบญเบโเปเบโเปเบโเบโเบฅเบฒเบงโเปเบเปโเบเบทเบโเบเปเบฒโเปเบเปโเปเบเบทเปเบญโเบเบงเบโเบเบธเบกโเบเบฒเบโเปเบเบปเปเบฒโเปเบเบดเบโเบเบปเบงโเบขเปเบฒเบ virtual machines.
เบเบฒเบเบเปเบฒเบเบปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ
เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเบเบฑเบเบเบฐเบเบฒเบเบญเบ Kubernetes เบญเบทเปเบเป, เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบทเบเบฅเบฐเบเบธเปเบงเปเปเบ YAML. เปเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบเบฅเบธเปเบกเบเบตเป, เบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบ balance
เบเบฒเบโเปเบเบปเปเบฒโเปเบเบดเบ postgres
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.postgres
namespace: default
spec:
podSelector:
matchLabels:
app: postgres
ingress:
- from:
- podSelector:
matchLabels:
app: balance
policyTypes:
- Ingress
(เบซเบกเบฒเบโเปเบซเบโ. เปเบ.: เบเบฒเบเบซเบเปเบฒเบเปเบเบตเป, เบเบทเบเบฑเบเบเบธเบเบชเบดเปเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบเบเปเปเบกเบฒ, เปเบเปเบเบทเบเบชเปเบฒเบเบเบทเปเบเปเบเบเบเปเปเปเบเปเปเบเปเปเบเบทเปเบญเบเบกเบท Kubernetes เบเบทเปเบเปเบกเบทเบญเบ, เปเบเปเปเบเปเปเบเบทเปเบญเบเบกเบท Tufin Orca, เปเบเบดเปเบเบเบทเบเบเบฑเบเบเบฐเบเบฒเปเบเบเบเปเบฅเบดเบชเบฑเบเบเบญเบเบเบนเปเบเบฝเบเบเบญเบเบเบปเบเบเบงเบฒเบกเบเบปเปเบเบชเบฐเบเบฑเบเปเบฅเบฐเบเบตเปเปเบเปเบเปเบฒเบงเบกเบฒเปเบเบเบญเบเบเปเบฒเบเบเบญเบเปเบญเบเบฐเบชเบฒเบ.)
เปเบเบทเปเบญเบเปเบฒเบเบปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบญเบเบเปเบฒเบเปเบญเบ, เบเปเบฒเบเบเบฐเบเปเบญเบเบกเบตเบเบงเบฒเบกเบฎเบนเปเบเบทเปเบเบเบฒเบเบเบญเบ YAML. เบเบฒเบชเบฒเบเบตเปเปเบกเปเบเบญเบตเบเปเบชเปเบเบฒเบเบซเบเปเปเปเปเบฒ (เบฅเบฐเบเบธเปเบเบเบเบฐเบซเบงเปเบฒเบเบซเบผเบฒเบเบเบงเปเบฒเปเบเบ). เบญเบปเบเบเบฐเบเบญเบเบซเบเปเปเปเปเบฒเปเบเบฑเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเบซเบเปเปเปเปเบฒเบเบตเปเปเบเปเบเบตเปเบชเบธเบเบขเบนเปเปเบเบดเบเบกเบฑเบ. เบญเบปเบเบเบฐเบเบญเบเบฅเบฒเบเบเบทเปเปเปเปเปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบเบเบตเบเปเบฒเบ, เบญเบปเบเบเบฐเบเบญเบเบญเบทเปเบเปเบเบฑเบเปเบปเบเบกเบตเปเบเบเบเบญเบก key-value.
เปเบเบเปเบเปเบญเบฐเบเบดเบเบฒเบเบเบฐเปเบเบเบฒเบเปเบ YAML, เปเบซเปเปเบเป
kubectl create -f policy.yaml
เบเบฒเบเบฅเบฐเบเบธเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ
เบเปเปเบชเบฐเปเบเบฒเบฐเบเบญเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เบเบฐเบเบญเบเบกเบตเบชเบตเปเบญเบปเบเบเบฐเบเบญเบ:
-
podSelector
: เบเปเบฒเบเบปเบเบเบฑเบเบเบตเปเปเบเปเบฎเบฑเบเบเบปเบเบเบฐเบเบปเบเบเบฒเบเบเบฐเปเบเบเบฒเบเบเบตเป (เปเบเบปเปเบฒเบซเบกเบฒเบ) - เบเปเบญเบเบเบฒเบ; -
policyTypes
: เบเบตเปเบเบญเบเบเบฐเปเบเบเบเบญเบเบเบฐเปเบเบเบฒเบเบเบตเปเบฅเบงเบกเบขเบนเปเปเบเบเบตเป: ingress เปเบฅเบฐ / เบซเบผเบท egress - เบเบฒเบเปเบฅเบทเบญเบ, เปเบเปเบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเบฐเบเปเบฒเปเบซเปเบฅเบฐเบเบธเบขเปเบฒเบเบเบฑเบเปเบเบเปเบเบเบธเบเบเปเบฅเบฐเบเบต; -
ingress
: เบเปเบฒเบเบปเบเบญเบฐเบเบธเบเบฒเบ เปเบเบปเปเบฒเบกเบฒ เบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเบซเบฒเปเบกเบฑเบเปเบเบปเปเบฒเบซเบกเบฒเบ - เบเบฒเบเปเบฅเบทเบญเบ; -
egress
: เบเปเบฒเบเบปเบเบญเบฐเบเบธเบเบฒเบ เบฅเบฒเบเบเปเบฒเบ เบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเบ pods เปเบเบปเปเบฒเบซเบกเบฒเบเปเบกเปเบเบเบฒเบเปเบฅเบทเบญเบ.
เบเบปเบงเบขเปเบฒเบเบเบตเปเปเบญเบปเบฒเบกเบฒเบเบฒเบเปเบงเบฑเบเปเบเบเป Kubernetes (เบเปเบญเบเบเปเบฝเบเปเบเบ role
เบชเบธเบ app
), เบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเบดเบเบตเบเบฒเบเบเบฑเบเบชเบตเปเบญเบปเบเบเบฐเบเบญเบเบเบทเบเบเปเบฒเปเบเป:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-network-policy
namespace: default
spec:
podSelector: # <<<
matchLabels:
app: db
policyTypes: # <<<
- Ingress
- Egress
ingress: # <<<
- from:
- ipBlock:
cidr: 172.17.0.0/16
except:
- 172.17.1.0/24
- namespaceSelector:
matchLabels:
project: myproject
- podSelector:
matchLabels:
role: frontend
ports:
- protocol: TCP
port: 6379
egress: # <<<
- to:
- ipBlock:
cidr: 10.0.0.0/24
ports:
- protocol: TCP
port: 5978
เบเบฐเบฅเบธเบเบฒเบชเบฑเบเปเบเบเบงเปเบฒเบเบฑเบเบชเบตเปเบญเบปเบเบเบฐเบเบญเบเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบเบฅเบงเบก. เบกเบฑเบเปเบเบฑเบเบเบฝเบเปเบเปเบเบฑเบเบเบฑเบ podSelector
, เบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบเบญเบทเปเบเปเบชเบฒเบกเบฒเบเบเปเบฒเปเบเปเปเบเปเบเบฒเบกเบเบงเบฒเบกเบเปเบญเบเบเบฒเบ.
เบเปเบฒเปเบเบปเปเบฒเบฅเบฐเปเบงเบฑเปเบ policyTypes
, เบเบฐโเปเบโเบเบฒเบโเบเบฐโเปเบเปโเบฎเบฑเบโเบเบฒเบโเบเบตโเบฅเบฒโเบเบฒโเบเบฑเปเบโเบเปเปโเปเบโเบเบตเปโ:
- เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เบกเบฑเบเปเบกเปเบเบชเบปเบกเบกเบธเบเบงเปเบฒเบกเบฑเบเบเปเบฒเบเบปเบเบเปเบฒเบ ingress. เบเปเบฒเบเบฐเปเบเบเบฒเบเบเปเปเปเบเปเบเบญเบเปเบฅเบทเปเบญเบเบเบตเปเบขเปเบฒเบเบเบฐเปเบเปเบ, เบฅเบฐเบเบปเบเบเบฐเบเบทเบงเปเบฒเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฑเบเปเบปเบเบเบทเบเบซเปเบฒเบก.
- เบเบถเบเบเบดเบเปเบฒเบขเบนเปเบเปเบฒเบ egress เบเบฐเบเบทเบเบเปเบฒเบเบปเบเปเบเบเบเบฒเบเบกเบตเบซเบผเบทเบเปเปเบกเบตเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบ egress เบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบ.
เปเบเบทเปเบญเบซเบผเบตเบเปเบงเบฑเปเบเบเบฒเบเบเบดเบเบเบฒเบเบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเบฐเบเปเบฒเปเบซเป เบชเบฐเปเบซเบกเบตเปเบฎเบฑเบเปเบซเปเบกเบฑเบเบเบฑเบเปเบเบ policyTypes
.
เบญเบตเบเบเบฒเบกเปเบซเบเบเบปเบเบเปเบฒเบเปเบเบดเบ, เบเปเบฒเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบ ingress
เปเบฅเบฐ / เบซเบผเบท egress
เบเบปเบเปเบงเบฑเปเบ, เบเบฐเปเบเบเบฒเบเบเบฐเบเบฐเบเบดเปเบชเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฑเบเบซเบกเบปเบ (เปเบเบดเปเบ "เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบฅเบญเบเปเบญเบปเบฒ" เบเปเบฒเบเบฅเบธเปเบกเบเบตเป).
เบเบฐเปเบเบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเปเบกเปเบเบญเบฐเบเบธเบเบฒเบ
เบเปเบฒเบเปเปเบกเบตเบเบฒเบเบเปเบฒเบเบปเบเบเบฐเปเบเบเบฒเบ, Kubernetes เบญเบฐเบเบธเบเบฒเบเปเบซเปเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฑเบเบซเบกเบปเบเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ. เบเบฑเบเบเบฑเบเปเบปเบเบชเบฒเบกเบฒเบเปเบฅเบเบเปเบฝเบเบเปเปเบกเบนเบเบฅเบฐเบซเบงเปเบฒเบเบเบฑเบเปเบเปเบขเปเบฒเบเปเบชเบฅเบต. เบญเบฑเบเบเบตเปเบญเบฒเบเบเบฐเปเบเบดเปเบเบเบทเบเบปเบเบเบฑเบเบเปเบฒเบกเบเบฑเบเบเบฑเบเบชเบฐเบเบฐเบเบงเบฒเบกเบเบญเบเปเบ, เปเบเปเบเบทเปเปเบงเปเบงเปเบฒ Kubernetes เปเบเปเบเบทเบเบญเบญเบเปเบเบเปเบเปเบเบทเปเบญเบเบเบปเปเบเปเบเบเบเบนเปเบเบฑเบเบเบฐเบเบฒเปเบเบทเปเบญเปเบซเปเบชเบฒเบกเบฒเบเปเบฎเบฑเบเบงเบฝเบเบฎเปเบงเบกเบเบฑเบเบเบญเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเปเบเป. เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเปเบเปเบเบทเบเปเบเบตเปเบกเบเปเปเบกเบฒ.
Namespaces
Namespaces เปเบกเปเบเบเบปเบเปเบเบเบฒเบเบฎเปเบงเบกเบกเบท Kubernetes. เบเบงเบเบกเบฑเบเบเบทเบเบญเบญเบเปเบเบเปเบเบทเปเบญเปเบเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบกเบเบตเปเบกเบตเปเบซเบเบเบปเบเบเบฒเบเบเบฑเบเปเบฅเบฐเบเบฑเบ, เปเบเบเบฐเบเบฐเบเบตเปเบเบฒเบเบชเบทเปเบชเบฒเบเบฅเบฐเบซเบงเปเบฒเบเบชเบฐเบเบฒเบเบเบตเปเบเบทเบเบญเบฐเบเบธเบเบฒเบเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ.
เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเบญเบปเบเบเบฐเบเบญเบ Kubernetes เบชเปเบงเบเปเบซเบเป, เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบญเบฒเปเบชเบขเบนเปเปเบ namespace เบชเบฐเปเบเบฒเบฐ. เปเบเบเบฑเบ metadata
เบเปเบฒเบเบชเบฒเบกเบฒเบเบฅเบฐเบเบธเบเบทเปเบเบเบตเปเบเบตเปเบเบฐเปเบเบเบฒเบเปเบเบฑเบเบเบญเบ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-network-policy
namespace: my-namespace # <<<
spec:
...
เบเปเบฒ namespace เบเปเปเปเบเปเบฅเบฐเบเบธเบขเปเบฒเบเบเบฑเบเปเบเบเปเบ metadata, เบฅเบฐเบเบปเบเบเบฐเปเบเป namespace เบเบตเปเบฅเบฐเบเบธเปเบงเปเปเบ kubectl (เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ. namespace=default
):
kubectl apply -n my-namespace -f namespace.yaml
เบเปเบญเบเบเปเปเบเบฐ เบเบณ เบฅเบฐเบเบธ namespace เบขเปเบฒเบเบเบฐเปเบเปเบ, เปเบงเบฑเปเบเปเบชเบเปเบเปเบงเปเบฒเบเปเบฒเบเบเปเบฒเบฅเบฑเบเบเบฝเบเบเบฐเปเบเบเบฒเบเบเบตเปเปเบเบปเปเบฒเบซเบกเบฒเบเบซเบผเบฒเบ namespaces เปเบเปเบงเบฅเบฒเบเบฝเบงเบเบฑเบ.
เบซเบฅเบฑเบ เบญเบปเบเบเบฐเบเบญเบ podSelector
เปเบเบเบฐเปเบเบเบฒเบเบเบฐเปเบฅเบทเบญเบ pods เบเบฒเบ namespace เบเบตเปเบเบฐเปเบเบเบฒเบเบเบถเปเบเบเบฑเบ (เบกเบฑเบเบเบทเบเบเบฐเบเบดเปเบชเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ pods เบเบฒเบ namespace เบญเบทเปเบ).
เปเบเบฑเปเบเบเบฝเบงเบเบฑเบ, podSelectors เปเบ ingress เปเบฅเบฐ egress เบเบฑเบ เบเบฝเบเปเบเปเบชเบฒเบกเบฒเบเปเบฅเบทเบญเบเบเบฑเบเบเบฒเบ namespace เบเบญเบเปเบเบปเบฒเปเบเบปเปเบฒเปเบญเบ, เปเบงเบฑเปเบเปเบชเบเปเบเปเปเบเปเบเบญเบเบเปเบฒเบเบชเบปเบกเบเบปเบเปเบซเปเปเบเบปเบฒเปเบเบปเปเบฒเบเบฑเบ namespaceSelector
(เบเบตเปเบเบฐเบเบทเบเบชเบปเบเบเบฐเบเบฒเปเบเบเบฒเบ "เบเบฒเบเบเบฑเปเบเบเบญเบเปเบเบ namespaces เปเบฅเบฐ pods").
เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบเบฑเปเบเบเบทเปเบเบฐเปเบเบเบฒเบ
เบเบทเปเบเบฐเปเบเบเบฒเบเปเบกเปเบเปเบเบฑเบเปเบญเบเบฐเบฅเบฑเบเบเบฒเบเปเบ namespace เบเบฝเบงเบเบฑเบ. เบเปเปเบชเบฒเบกเบฒเบเบกเบตเบชเบญเบเบเบฐเปเบเบเบฒเบเบเบตเปเบกเบตเบเบทเปเบเบฝเบงเบเบฑเบเบขเบนเปเปเบเบเปเบญเบเบเบฝเบงเบเบฑเบ, เปเบเปเบชเบฒเบกเบฒเบเบกเบตเบเบฐเปเบเบเบฒเบเบเบตเปเบกเบตเบเบทเปเบเบฝเบงเบเบฑเบเบขเบนเปเปเบเบเปเบญเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ. เบญเบฑเบเบเบตเปเปเบเบฑเบเบเบฐเปเบซเบเบเปเบกเบทเปเบญเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบณเปเบเปเบเบฐเปเบเบเบฒเบเบเบฝเบงเบเบฑเบเบเบทเบเปเปเปเปเบเบเบปเปเบงเบซเบผเบฒเบเบเปเบญเบ.
เบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเบเบชเบฐเปเบเบฒเบฐเปเบกเปเบเบกเบฑเบเบซเบเบถเปเบเปเบเบงเบดเบเบตเบเบฒเบเบเบฑเปเบเบเบทเป. เบกเบฑเบเบเบฐเบเบญเบเบเปเบงเบเบเบฒเบเบฅเบงเบกเบเบทเป namespace เบเบฑเบ pods เปเบเบปเปเบฒเบซเบกเบฒเบ. เบเบปเบโเบเบปเบงโเบขเปเบฒเบ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.postgres # <<<
namespace: default
spec:
podSelector:
matchLabels:
app: postgres
ingress:
- from:
- podSelector:
matchLabels:
app: admin
policyTypes:
- Ingress
เบเปเบฒเบเบเบณเบเบฑเบ
เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบดเบเบเปเบฒเบเบเบณเบเบฑเบเบเบตเปเบเบณเบเบปเบเปเบญเบเปเบชเปเบงเบฑเบเบเบธ Kubernetes, เปเบเบฑเปเบ: เบเบฑเบ เปเบฅเบฐ namespaces. เบเปเบฒเบเบเบณเบเบฑเบ (เบเปเบฒเบเบเปเบฒเบเบฑเบ - tags) เปเบกเปเบเบเบฝเบเปเบเบปเปเบฒเบเบฑเบ tags เปเบเปเบกเบ. เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เปเบเปเบเปเบฒเบเบเบณเบเบฑเบเปเบเบทเปเบญเปเบฅเบทเบญเบ เบเบฑเบเบเบตเปเปเบเบปเบฒเปเบเบปเปเบฒเบชเบฐเบซเบกเบฑเบ:
podSelector:
matchLabels:
role: db
โฆ เบซเบผเบท namespacesเบเบตเปเปเบเบปเบฒเปเบเบปเปเบฒเบชเบฐเบซเบกเบฑเบ. เบเบปเบงเบขเปเบฒเบเบเบตเปเปเบฅเบทเบญเบ pods เบเบฑเบเบซเบกเบปเบเปเบ namespaces เบเบตเปเบกเบตเบเปเบฒเบเบเบทเปเบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบ:
namespaceSelector:
matchLabels:
project: myproject
เบเปเปเบเบงเบเบฅเบฐเบงเบฑเบเบซเบเบถเปเบ: เปเบกเบทเปเบญเปเบเป namespaceSelector
เปเบซเปเปเบเปเปเบเบงเปเบฒ namespaces เบเบตเปเบเปเบฒเบเปเบฅเบทเบญเบเบกเบตเบเปเบฒเบเบเบทเปเบเบตเปเบเบทเบเบเปเบญเบ. เบเบปเปเบเบฎเบฑเบเบฎเบนเปเบงเปเบฒเบชเปเบฒเบเปเบ namespaces เปเบเบฑเปเบ default
ะธ kube-system
, เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบเบเปเปเบกเบตเบเปเบฒเบเบเบทเป.
เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบเบตเปเบกเบเปเบฒเบเบเบทเปเปเบชเปเบเปเบญเบเปเบเบฑเปเบเบเบตเป:
kubectl label namespace default namespace=default
เปเบเปเบงเบฅเบฒเบเบฝเบงเบเบฑเบ, namespace เปเบเบเบฒเบ metadata
เบเบงเบเบญเปเบฒเบเบญเบตเบเปเบเบดเบเบเบทเปเบเบทเปเบเบเบตเปเบเบปเบงเบเบดเบ, เบเปเปเปเบกเปเบเบเปเบฒเบเบเบทเป:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-network-policy
namespace: default # <<<
spec:
...
เปเบซเบผเปเบเปเบฅเบฐเบเบฒเบเบเบฒเบ
เบเบฐเปเบเบเบฒเบ Firewall เบเบฐเบเบญเบเบเปเบงเบเบเบปเบเบฅเบฐเบเบฝเบเบเบตเปเบกเบตเปเบซเบผเปเบเปเบฅเบฐเบเบธเบเบซเบกเบฒเบเบเบฒเบเบเบฒเบ. เบเบฐโเปเบโเบเบฒเบโเปเบเบทเบญโเบเปเบฒเบ Kubernetes เบเบทเบโเบเปเบฒโเบเบปเบโเบชเปเบฒโเบฅเบฑเบโเปเบเบปเปเบฒโเบซเบกเบฒเบ - เบเบธเบโเบเบญเบ pods เบเบตเปโเปเบเบปเบฒโเปเบเบปเปเบฒโเบเปเบฒโเปเบเป - เปเบฅเบฐโเบซเบผเบฑเบโเบเบฒเบโเบเบฑเปเบโเบเปเบฒโเบเบปเบโเบเบปเบโเบฅเบฐโเบเบฝเบโเบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเบเบฐโเบฅเบฒโเบเบญเบ ingress เปเบฅเบฐ / เบซเบผเบท egress. เปเบเบเบปเบงเบขเปเบฒเบเบเบญเบเบเบงเบเปเบฎเบปเบฒ, เปเบเบปเปเบฒเบซเบกเบฒเบเบเบญเบเบเบฐเปเบเบเบฒเบเบเบฐเปเบเบฑเบ pods เบเบฑเบเบซเบกเบปเบเปเบ namespace default
เบกเบตเบเปเบฒเบเบเบทเปเบเบฑเบเบเบฐเปเบ app
เปเบฅเบฐเบเบงเบฒเบกเบซเบกเบฒเบ db
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-network-policy
namespace: default
spec:
podSelector:
matchLabels:
app: db # <<<
policyTypes:
- Ingress
- Egress
ingress:
- from:
- ipBlock:
cidr: 172.17.0.0/16
except:
- 172.17.1.0/24
- namespaceSelector:
matchLabels:
project: myproject
- podSelector:
matchLabels:
role: frontend
ports:
- protocol: TCP
port: 6379
egress:
- to:
- ipBlock:
cidr: 10.0.0.0/24
ports:
- protocol: TCP
port: 5978
เปเบงเบเบเปเบญเบ ingress
เปเบเบเบฐเปเบเบเบฒเบเบเบตเป, เปเบเบตเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเปเบเบปเปเบฒเปเบเบซเบฒ pods เปเบเบปเปเบฒเบซเบกเบฒเบ. เปเบเบเปเบฒเบชเบฑเบเบเปเบฒเบเปเบญเบทเปเบเป, ingress เปเบกเปเบเปเบซเบผเปเบเปเบฅเบฐเปเบเบปเปเบฒเบซเบกเบฒเบเปเบกเปเบเบเบธเบเบซเบกเบฒเบเบเบฒเบเบเบฒเบเบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบ. เปเบเบฑเปเบเบเบฝเบงเบเบฑเบ, egress เปเบกเปเบเบเบธเบเบซเบกเบฒเบเบเบฒเบเบเบฒเบเปเบฅเบฐเปเบเบปเปเบฒเบซเบกเบฒเบเปเบกเปเบเปเบซเบผเปเบเบเบญเบเบกเบฑเบ.
เบเบตเปเปเบกเปเบเปเบเบปเปเบฒเบเบฑเบเบชเบญเบเบเบปเบเบฅเบฐเบเบฝเบเบเบญเบ Firewall: Ingress โ Target; เปเบเบปเปเบฒเปเบฒเบ โ เบเปเบฒเบงเบญเบญเบ.
Egress เปเบฅเบฐ DNS (เบชเปเบฒเบเบฑเบ!)
เปเบเบเบเบฒเบเบเปเบฒเบเบฑเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเบญเบญเบ, เปเบญเบปเบฒเปเบเปเบชเปเปเบเบฑเบเบเบดเปเบชเบเบเปเป DNS - Kubernetes เปเบเปเบเปเบฅเบดเบเบฒเบเบเบตเปเปเบเบทเปเบญเปเบเบเบเบตเปเบเปเบฅเบดเบเบฒเบเปเบเบซเบฒเบเบตเปเบขเบนเป IP. เบเบปเบงเบขเปเบฒเบ, เบเบฐเปเบเบเบฒเบเบเปเปเปเบเบเบตเปเบเบฐเบเปเปเปเบฎเบฑเบเบงเบฝเบเปเบเบฒเบฐเบงเปเบฒเบเปเบฒเบเบเปเปเปเบเปเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบ balance
เปเบเบปเปเบฒเปเบเบดเบ DNS:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.balance
namespace: default
spec:
podSelector:
matchLabels:
app: balance
egress:
- to:
- podSelector:
matchLabels:
app: postgres
policyTypes:
- Egress
เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบเปเปเบเปเบเปเปเบเบเบเบฒเบเปเบเบตเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ DNS:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.balance
namespace: default
spec:
podSelector:
matchLabels:
app: balance
egress:
- to:
- podSelector:
matchLabels:
app: postgres
- to: # <<<
ports: # <<<
- protocol: UDP # <<<
port: 53 # <<<
policyTypes:
- Egress
เบญเบปเบเบเบฐเบเบญเบเบชเบธเบเบเปเบฒเบ to
เปเบกเปเบเบซเบงเปเบฒเบเปเบเบปเปเบฒ, เปเบฅเบฐเบเบฑเปเบเบเบฑเปเบเบกเบฑเบเปเบเบเบเบฒเบเบญเปเบญเบกเปเบฅเบทเบญเบ เบเบฑเบเบเบฑเบเปเบปเบเปเบ namespaces เบเบฑเบเปเบปเบ, เบญเบฐเบเบธเบเบฒเบเปเบซเป balance
เบชเบปเปเบเบเบฒเบเบชเบญเบเบเบฒเบก DNS เปเบเบซเบฒเบเปเบฅเบดเบเบฒเบ Kubernetes เบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก (เบเบปเบเบเบฐเบเบดเปเบฅเปเบงเปเบฅเปเบเบขเบนเปเปเบเบเบทเปเบเบเบตเป kube-system
).
เบงเบดเบเบตเบเบฒเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบ, เบขเปเบฒเบเปเบเบเปเบเบฒเบก เบญเบฐโเบเบธโเบเบฒเบโเบซเบผเบฒเบโเปเบเบตเบโเปเบโเปเบฅเบฐโเบเปเปโเบเบญเบโเปเบโ, เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒเบกเบฑเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเบฒเบเบชเบญเบเบเบฒเบก DNS เบเบทเบเบเปเบฒเปเบเบเบญเบเบเบธเปเบก.
เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบฑเบเบเบธเบเบกเบฑเบเปเบเปเปเบเบชเบฒเบกเบเบฑเปเบเบเบญเบ.
1. เบญเบฐเบเบธเบเบฒเบเปเบซเปเบชเบญเบเบเบฒเบก DNS เปเบเบปเปเบฒเบเบฑเปเบ เบเบฒเบเปเบ เบเบธเปเบกเปเบเบเบเบฒเบเปเบเบตเปเบก namespaceSelector
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.balance
namespace: default
spec:
podSelector:
matchLabels:
app: balance
egress:
- to:
- podSelector:
matchLabels:
app: postgres
- to:
- namespaceSelector: {} # <<<
ports:
- protocol: UDP
port: 53
policyTypes:
- Egress
2. เบญเบฐเบเบธเบเบฒเบเปเบซเปเบชเบญเบเบเบฒเบก DNS เบเบฒเบเปเบ namespace เปเบเบปเปเบฒเบเบฑเปเบ kube-system
.
เปเบเบทเปเบญเปเบฎเบฑเบเบชเบดเปเบเบเบตเป, เบเปเบฒเบเบเปเบฒเปเบเบฑเบเบเปเบญเบเปเบเบตเปเบกเบเปเบฒเบเบเบทเปเปเบชเป namespace kube-system
: kubectl label namespace kube-system namespace=kube-system
- เปเบฅเบฐเบเบฝเบเบกเบฑเบเบฅเบปเบเปเบเบเบฐเปเบเบเบฒเบเบเบฒเบเบเปเบฒเปเบเป namespaceSelector
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.balance
namespace: default
spec:
podSelector:
matchLabels:
app: balance
egress:
- to:
- podSelector:
matchLabels:
app: postgres
- to:
- namespaceSelector: # <<<
matchLabels: # <<<
namespace: kube-system # <<<
ports:
- protocol: UDP
port: 53
policyTypes:
- Egress
3. เบเบปเบ Paranoid เบชเบฒเบกเบฒเบเปเบเบเบทเปเบกเบญเบตเบเปเบฅเบฐเบเปเบฒเบเบฑเบเบเบฒเบเบชเบญเบเบเบฒเบก DNS เบเบฑเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ DNS เบชเบฐเปเบเบฒเบฐเปเบ kube-system
. เบเบฒเบเบชเปเบงเบ "เบเบฒเบเบเบฑเปเบเบเบญเบเปเบเบ namespaces เปเบฅเบฐ pods" เบเบฐเบเบญเบเบเปเบฒเบเบงเบดเบเบตเบเบฒเบเบเบฑเบเบฅเบธเปเบเป.
เบเบฒเบเปเบฅเบทเบญเบเบญเบทเปเบเปเบกเปเบเบเบฒเบเปเบเปเปเบ DNS เปเบเบฅเบฐเบเบฑเบ namespace. เปเบเบเปเบฅเบฐเบเบตเบเบตเป, เบกเบฑเบเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบเปเบเบตเบเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐเบเปเบฅเบดเบเบฒเบ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.dns
namespace: default
spec:
podSelector: {} # <<<
egress:
- to:
- namespaceSelector: {}
ports:
- protocol: UDP
port: 53
policyTypes:
- Egress
เบซเบงเปเบฒเบเปเบเบปเปเบฒ podSelector
เปเบฅเบทเบญเบเบเบฑเบเบเบฑเบเปเบปเบเปเบ namespace.
เบเบฒเบเปเบเปเบเบเบฑเบเบเบฑเปเบเบเปเบฒเบญเบดเบเปเบฅเบฐเบเปเบฒเบชเบฑเปเบเบเบปเบเบฅเบฐเบเบฝเบ
เปเบ Firewalls เปเบเบเบเบฑเปเบเปเบเบตเบก, เบเบฒเบเบเบฐเบเบดเบเบฑเบ (เบญเบฐเบเบธเบเบฒเบเบซเบผเบทเบเบฐเบเบดเปเบชเบ) เปเบเปเบเบฑเบเปเบเบฑเบเบเบทเบเบเปเบฒเบเบปเบเปเบเบเบเบปเบเบฅเบฐเบเบฝเบเบเปเบฒเบญเบดเบเบเบตเปเบกเบฑเบเบเปเปเบ. เปเบ Kubernetes, เบเปเบฒเบชเบฑเปเบเบเบญเบเบเบฐเปเบเบเบฒเบเบเปเปเบชเปเบฒเบเบฑเบ.
เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เปเบกเบทเปเบญเบเปเปเบกเบตเบเบฒเบเบเบฑเปเบเบเบฐเปเบเบเบฒเบ, เบเบฒเบเบชเบทเปเบชเบฒเบเบฅเบฐเบซเบงเปเบฒเบเบเบฑเบเปเบกเปเบเบญเบฐเบเบธเบเบฒเบ เปเบฅเบฐเปเบเบปเบฒเปเบเบปเปเบฒเบชเบฒเบกเบฒเบเปเบฅเบเบเปเบฝเบเบเปเปเบกเบนเบเปเบเปเบขเปเบฒเบเปเบชเบฅเบต. เปเบกเบทเปเบญเบเปเบฒเบเปเบฅเบตเปเบกเบชเปเบฒเบเบเบฐเปเบเบเบฒเบ, เปเบเปเบฅเบฐเบเบฑเบเบเบตเปเปเบเปเบฎเบฑเบเบเบปเบเบเบฐเบเบปเบเบเบฒเบเบขเปเบฒเบเบซเบเปเบญเบเบซเบเบถเปเบเบเบญเบเบกเบฑเบเบเบฐเบเบฒเบเปเบเบฑเบเบเบตเปเปเบเบเบเปเบฝเบงเบเบฒเบกเบเบงเบฒเบกเปเบเบเปเบเบ (เบซเบผเบทเปเบซเบเบเบปเบ) เบเบญเบเบเบฐเปเบเบเบฒเบเบเบฑเบเบซเบกเบปเบเบเบตเปเปเบฅเบทเบญเบเบกเบฑเบ. Pods เบเปเปเปเบเปเบฎเบฑเบเบเบปเบเบเบฐเบเบปเบเบเบฒเบเบเบฐเปเบเบเบฒเบเปเบเปเบเบฑเบเบเบปเบเปเบเบตเบเบขเบนเป.
เบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฝเบเบเบถเบเบเบดเบเปเบฒเบเบตเปเปเบเบเปเบเปเบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบฅเบญเบเปเบญเบปเบฒ.
เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบเบญเบเบญเบญเบ ("เบเบฐเบเบดเปเบชเบ")
เบเบปเบเบเบฐเบเบดเปเบฅเปเบงเบเบฐเปเบเบเบฒเบ Firewall เบเบฐเบเบดเปเบชเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเปเบเบตเปเบเปเปเปเบเปเบฎเบฑเบเบญเบฐเบเบธเบเบฒเบเบขเปเบฒเบเบเบฑเบเปเบเบ.
เบเปเปเบกเบตเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเบฐเบเบดเปเบชเบเปเบ Kubernetesเปเบเบงเปเบเบเปเปเบเบฒเบก, เบเบปเบเบเบฐเบเบปเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบเบชเบฒเบกเบฒเบเบเบฑเบเบฅเบธเปเบเปเบเปเบงเบเบเบฐเปเบเบเบฒเบเบเบปเบเบเบฐเบเบด (เบญเบฐเบเบธเบเบฒเบ) เปเบเบเบเบฒเบเปเบฅเบทเบญเบเบเบธเปเบกเปเบเบปเปเบฒเบเบญเบเบเบฑเบเปเบซเบผเปเบ (ingress):
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: deny-all
namespace: default
spec:
podSelector: {}
policyTypes:
- Ingress
เบเบฐเปเบเบเบฒเบเบเบตเปเปเบฅเบทเบญเบ pods เบเบฑเบเบซเบกเบปเบเปเบ namespace เปเบฅเบฐเบเปเบญเบเปเบซเป ingress เบเปเปเปเบเปเบเปเบฒเบเบปเบ, เบเบฐเบเบดเปเบชเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเปเบเบปเปเบฒเบเบฑเบเบซเบกเบปเบ.
เปเบเบฅเบฑเบเบชเบฐเบเบฐเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฒเบเบฑเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเบญเบญเบเบเบฑเบเบซเบกเบปเบเบเบฒเบ namespace:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: deny-all-egress
namespace: default
spec:
podSelector: {}
policyTypes:
- Egress
เบเบฐเบฅเบธเบเบฒเบชเบฑเบเปเบเบเบงเปเบฒ เบเบฐโเปเบโเบเบฒเบโเปเบเบตเปเบกโเปเบเบตเบกโเปเบโเบซเบเบถเปเบโเบเบตเปโเบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโเบเบฐโเบฅเบฒโเบเบญเบโเปเบ pods เปเบ namespace เบเบฐโเบกเบตโเบเบงเบฒเบกโเบชเปเบฒโเบเบฑเบโเปเบโเปเบฅโเบเบฐโเบเบปเบโเบฅเบฐโเบเบฝเบโเบเบตเปโ (เบเปเบฒเบเบเบทเบเบฑเบเบเบฒเบเปเบเบตเปเบกเบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบญเบฐเบเบธเบเบฒเบเบเปเบญเบเบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบเบฐเบเบดเปเบชเบเปเบเบเบฒเบเบเบฑเปเบเบเปเบฒเปเบเบงเป).
เบญเบฐเบเบธเบเบฒเบเบเบธเบเบขเปเบฒเบ (Any-Any-Any-Allow)
เปเบเบทเปเบญเบชเปเบฒเบเบเบฐเปเบเบเบฒเบเบญเบฐเบเบธเบเบฒเบเบเบฑเบเปเบปเบ, เบเปเบฒเบเบเปเบฒเปเบเบฑเบเบเปเบญเบเปเบเบตเปเบกเบเบฐเปเบเบเบฒเบเบเบฒเบเบเบฐเบเบดเปเบชเบเบเปเบฒเบเปเบเบดเบเบเปเบงเบเบญเบปเบเบเบฐเบเบญเบเบซเบงเปเบฒเบเปเบเบปเปเบฒ ingress
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-all
namespace: default
spec:
podSelector: {}
ingress: # <<<
- {} # <<<
policyTypes:
- Ingress
เบกเบฑเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบ pods เบเบฑเบเบซเบกเบปเบเปเบ namespaces เบเบฑเบเบซเบกเบปเบ (เปเบฅเบฐ IP เบเบฑเบเบซเบกเบปเบ) เบเบฑเบ pod เปเบเปเบ namespace default
. เบเบถเบเบเบดเบเปเบฒเบเบตเปเบเบทเบเปเบเบตเบเปเบเปเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เบเบฑเปเบเบเบฑเปเบเบกเบฑเบเบกเบฑเบเบเบฐเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบเบเบทเบเบเปเบฒเบเบปเบเบเบทเปเบกเบญเบตเบ. เบขเปเบฒเบเปเบเบเปเปเบเบฒเบก, เบเบฒเบเบเบฑเปเบเบเปเบฒเบเบญเบฒเบเบเบฐเบเปเบญเบเบเบดเบเบเบฒเบเบญเบฐเบเบธเบเบฒเบเบชเบฐเปเบเบฒเบฐเบเบฒเบเบญเบฑเบเบเบปเปเบงเบเบฒเบงเปเบเบทเปเบญเบงเบดเบเบดเบเปเบชเบเบฑเบเบซเบฒ.
เบเบปเบเบฅเบฐเบเบฝเบเบชเบฒเบกเบฒเบเปเบเบเบฅเบปเบเปเบเบทเปเบญเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบปเปเบฒเปเบเบดเบเบเบฝเบเปเบเป เบเบธเบเบชเบฐเปเบเบฒเบฐเบเบญเบเบเบฑเบ (app:balance
) เปเบ namespace เปเบเป default
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-all-to-balance
namespace: default
spec:
podSelector:
matchLabels:
app: balance
ingress:
- {}
policyTypes:
- Ingress
เบเบฐเปเบเบเบฒเบเบเปเปเปเบเบเบตเปเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเปเบเบปเปเบฒ เปเบฅเบฐเบเบฒเปเบเบปเปเบฒเบเบฑเบเปเบปเบ, เบฅเบงเบกเบเบฑเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ IP เปเบเปเบเบญเบเบเบธเปเบก:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-all
spec:
podSelector: {}
ingress:
- {}
egress:
- {}
policyTypes:
- Ingress
- Egress
เบเบฒเบเบฅเบงเบกเปเบญเบปเบฒเบซเบผเบฒเบเบเบฐเปเบเบเบฒเบ
เบเบฐเปเบเบเบฒเบเปเบกเปเบเบฅเบงเบกเบเบฑเบเปเบเบเปเบเปเปเบซเบเบเบปเบ OR เปเบเบชเบฒเบกเบฅเบฐเบเบฑเบ; เบเบฒเบเบญเบฐเบเบธเบเบฒเบเบเบญเบเปเบเปเบฅเบฐเบเบฑเบเปเบกเปเบเบเบทเบเบเบณเบเบปเบเปเบซเปเบชเบญเบเบเปเบญเบเบเบฑเบเบเบฒเบเปเบเบเบเบฐเปเบเบเบฒเบเบเบฑเบเปเบปเบเบเบตเปเบกเบตเบเบปเบเบเบฐเบเบปเบเบเบฑเบเบกเบฑเบ:
1. เปเบเบเบปเปเบเบเบฒ from
ะธ to
เบชเบฒเบกเบเบฐเปเบเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเบเบปเบ (เบเบฑเบเบซเบกเบปเบเบเบตเปเบเบฐเบชเบปเบกเบเบฐเบชเบฒเบเปเบเบเปเบเป OR):
-
namespaceSelector
โ เปเบฅเบทเบญเบ namespace เบเบฑเบ เบซเบกเบปเบ; -
podSelector
- เปเบฅเบทเบญเบเบเบฑเบ; -
ipBlock
โ เปเบฅเบทเบญเบ subnet เปเบเบฑเบ.
เบเบดเปเบเปเบเบเบงเปเบฒเบเบฑเปเบ, เบเปเบฒเบเบงเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบ (เปเบกเปเปเบเปเบญเบฑเบเบเบฝเบงเบเบฑเบ) เปเบเบชเปเบงเบเบเปเบญเบ from
/to
เบเปเปเบเปเบฒเบเบฑเบ. เบเบงเบเบกเบฑเบเบเบฑเบเปเบปเบเบเบฐเบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเบเบฑเบเบเปเบงเบเปเบซเบเบเบปเบ OR.
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.postgres
namespace: default
spec:
ingress:
- from:
- podSelector:
matchLabels:
app: indexer
- podSelector:
matchLabels:
app: admin
podSelector:
matchLabels:
app: postgres
policyTypes:
- Ingress
2. เบเบฒเบเปเบเบเบฒเบเบเบฐเปเบเบเบฒเบ ingress
เบชเบฒเบกเบฒเบเบกเบตเบซเบผเบฒเบเบญเบปเบเบเบฐเบเบญเบ from
(เบฅเบงเบกเบเบฑเบเบเปเบงเบเปเบซเบเบเบปเบ OR). เปเบเบฑเปเบเบเบฝเบงเบเบฑเบ, เบเบฒเบ egress
เบญเบฒเบเบเบฐเบเบฐเบเบญเบเบกเบตเบซเบผเบฒเบเบญเบปเบเบเบฐเบเบญเบ to
(เบเบฑเบเบฅเบงเบกเบเบฑเบเปเบเบเบเบฒเบเปเบเบ):
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.postgres
namespace: default
spec:
ingress:
- from:
- podSelector:
matchLabels:
app: indexer
- from:
- podSelector:
matchLabels:
app: admin
podSelector:
matchLabels:
app: postgres
policyTypes:
- Ingress
3. เบเบฐเปเบเบเบฒเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเบเบฑเบเบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเบเบฑเบเบเปเบงเบเปเบซเบเบเบปเบ OR
เปเบเปเปเบกเบทเปเบญเบฅเบงเบกเบเบงเบเบกเบฑเบ, เบกเบตเบเปเปเบเปเบฒเบเบฑเบเบซเบเบถเปเบเบเบตเป policyTypes
(Ingress
เบซเบผเบท Egress
). เบเบฐเปเบเบเบฒเบเบเบตเปเบเปเบฒเบเบปเบ ingress (เบซเบผเบท egress) เบเบฐเบเบฝเบเบเบฑเบเปเบเบดเปเบเบเบฑเบเปเบฅเบฐเบเบฑเบ.
เบเบงเบฒเบกเบชเปเบฒเบเบฑเบเบฅเบฐเบซเบงเปเบฒเบ namespaces
เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เบเบฒเบเปเบเปเบเบเบฑเบเบเปเปเบกเบนเบเบฅเบฐเบซเบงเปเบฒเบ namespaces เปเบกเปเบเบญเบฐเบเบธเบเบฒเบ. เบเบตเปเบชเบฒเบกเบฒเบเบเปเบฝเบเปเบเบเปเบเปเปเบเบเปเบเปเบเบฐเปเบเบเบฒเบเบเบฒเบเบเบฐเบเบดเปเบชเบเบเบตเปเบเบฐเบเปเบฒเบเบฑเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเบญเบญเบเปเบฅเบฐ / เบซเบผเบทเบเบฒเปเบเบปเปเบฒเปเบเบปเปเบฒเปเบเปเบ namespace (เปเบเบดเปเบ "เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบฅเบญเบเปเบญเบปเบฒ" เบเปเบฒเบเปเบเบดเบ).
เปเบกเบทเปเบญเบเปเบฒเบเปเบเปเบเบฑเบเบเบงเบฒเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ namespace (เปเบเบดเปเบ "เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบฅเบญเบเปเบญเบปเบฒ" เบเปเบฒเบเปเบเบดเบ), เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบปเบเปเบงเบฑเปเบเบเบฐเปเบเบเบฒเบเบเบฒเบเบเบฐเบเบดเปเบชเบเปเบเบเบเบฒเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบทเปเบญเบกเบเปเปเบเบฒเบ namespace เบชเบฐเปเบเบฒเบฐเปเบเบเปเบเป namespaceSelector
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: database.postgres
namespace: database
spec:
podSelector:
matchLabels:
app: postgres
ingress:
- from:
- namespaceSelector: # <<<
matchLabels:
namespace: default
policyTypes:
- Ingress
เบเบฑเปเบเบเบฑเปเบ, เบเบฑเบเบเบฑเบเบซเบกเบปเบเปเบ namespace default
เบเบฐเบกเบตเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฑเบ postgres
เปเบ namespace database
. เปเบเปเบเปเบฒเบซเบฒเบเบงเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบตเปเบเบฐเปเบเบตเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ postgres
เบชเบฐเปเบเบฒเบฐเบเบฑเบเปเบ namespace default
?
เบเบฑเปเบเบเบญเบเบเบฒเบก namespaces เปเบฅเบฐ pods
Kubernetes เปเบงเบตเบเบฑเปเบ 1.11 เปเบฅเบฐเบชเบนเบเบเบงเปเบฒเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบเบฅเบงเบกเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบ namespaceSelector
ะธ podSelector
เปเบเบเปเบเปเปเบซเบเบเบปเบ AND. เบกเบฑเบเปเบเบดเปเบเบเบทเบงเปเบฒเบเบตเป:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: database.postgres
namespace: database
spec:
podSelector:
matchLabels:
app: postgres
ingress:
- from:
- namespaceSelector:
matchLabels:
namespace: default
podSelector: # <<<
matchLabels:
app: admin
policyTypes:
- Ingress
เปเบเบฑเบเบซเบเบฑเบเบญเบฑเบเบเบตเปเบเบถเปเบเบเบทเบเบเบตเบเบงเบฒเบกเปเบฒเบเปเบเบฑเบ AND เปเบเบ OR เบเบปเบเบเบฐเบเบด?
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒ podSelector
เบเปเปเปเบเปเปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบเบเบตเบเปเบฒเบ. เปเบ YAML เบเบตเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒ podSelector
เปเบฅเบฐเบขเบทเบเบขเบนเปเบเปเปเปเปเบฒเบเบฃเบฐเบญเบปเบ namespaceSelector
เบญเปเบฒเบเปเบเบดเบเบญเบปเบเบเบฐเบเบญเบเบฅเบฒเบเบเบทเปเบเบฝเบงเบเบฑเบ. เบเบฑเปเบเบเบฑเปเบ, เบเบงเบเบกเบฑเบเบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเบเบฑเบเปเบซเบเบเบปเบ AND.
เปเบเบตเปเบกเบเบตเบเปเบฒเบเบเปเบญเบ podSelector
เบเบฐเบชเบปเปเบเบเบปเบเปเบซเปเปเบเบตเบเบญเบปเบเบเบฐเบเบญเบเบฅเบฒเบเบเบทเปเปเปเป, เปเบเบดเปเบเบเบฐเบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเบเบฑเบเบญเบฑเบเบเปเบญเบเปเปเบฒ namespaceSelector
เบเบฒเบเบเปเบฒเปเบเปเปเบซเบเบเบปเบ OR.
เปเบเบทเปเบญเปเบฅเบทเบญเบเบเบฑเบเบเบตเปเบกเบตเบเปเบฒเบเบชเบฐเปเบเบฒเบฐ เปเบ namespaces เบเบฑเบเบซเบกเบปเบ, เปเบชเปเบเปเบญเบเบซเบงเปเบฒเบ namespaceSelector
:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: database.postgres
namespace: database
spec:
podSelector:
matchLabels:
app: postgres
ingress:
- from:
- namespaceSelector: {}
podSelector:
matchLabels:
app: admin
policyTypes:
- Ingress
เบเปเบฒเบเบเบทเปเบซเบผเบฒเบเบญเบฑเบเบฎเปเบงเบกเบเบฑเบ I
เบเบปเบโเบฅเบฐโเบเบฝเบโเบชเปเบฒโเบฅเบฑเบ firewall เบเบตเปโเบกเบตโเบงเบฑเบโเบเบธโเบซเบผเบฒเบ (เปเบกเปโเบเปเบฒเบโ, เปเบเบทเบญโเบเปเบฒเบโ, เบเบธเปเบกโ) เบเบทเบโเบฅเบงเบกโเปเบเบปเปเบฒโเบเบฑเบโเปเบเบโเบเบฒเบโเบเปเบฒโเปเบเปโเบขเปเบฒเบโเบกเบตโเปเบซเบโเบเบปเบ ORโ. เบเบปเบเบฅเบฐเบเบฝเบเบเปเปเปเบเบเบตเปเบเบฐเปเบฎเบฑเบเบงเบฝเบเบเปเบฒเปเบซเบผเปเบเปเบเบฑเบเปเบเบฑเบเบเบปเบเบเบฑเบ Host_1
OR Host_2
:
| Source | Destination | Service | Action |
| ----------------------------------------|
| Host_1 | Subnet_A | HTTPS | Allow |
| Host_2 | | | |
| ----------------------------------------|
เปเบเบเบฒเบเบเบปเบเบเบฑเบเบเปเบฒเบก, เปเบ Kubernetes เบเปเบฒเบเบเบทเปเบเปเบฒเบเปเปเบ podSelector
เบซเบผเบท namespaceSelector
เบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเบเบฑเบเปเบซเบเบเบปเบ AND. เบเบปเบงเบขเปเบฒเบ, เบเบปเบเบฅเบฐเบเบฝเบเบเปเปเปเบเบเบตเปเบเบฐเปเบฅเบทเบญเบ pods เบเบตเปเบกเบตเบเปเบฒเบเบเบทเปเบเบฑเบเบชเบญเบ, role=db
ะ version=v2
:
podSelector:
matchLabels:
role: db
version: v2
เปเบซเบเบเบปเบเบเบฝเบงเบเบฑเบเปเบเปเปเบเปเบเบฑเบเบเบธเบเบเบฐเปเบเบเบเบญเบเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบ: เบเบปเบงเปเบฅเบทเบญเบเปเบเบปเปเบฒเปเบฒเบเบเบฐเปเบเบเบฒเบ, เบเบปเบงเปเบฅเบทเบญเบเบเบญเบ, เปเบฅเบฐเบเบปเบงเปเบฅเบทเบญเบ namespace.
เปเบเบทเบญเบเปเบฒเบเบเปเบญเบ เปเบฅเบฐเบเบตเปเบขเบนเป IP (IPBlocks)
Firewalls เปเบเป VLANs, เบเบตเปเบขเบนเป IP, เปเบฅเบฐเปเบเบทเบญเบเปเบฒเบเบเปเบญเบเปเบเบทเปเบญเปเบเปเบเปเบเบทเบญเบเปเบฒเบ.
เปเบ Kubernetes, เบเบตเปเบขเบนเป IP เปเบเปเบเบทเบเบกเบญเบเบซเบกเบฒเบเปเบซเป pods เบญเบฑเบเบเบฐเปเบเบกเบฑเบเปเบฅเบฐเบชเบฒเบกเบฒเบเบเปเบฝเบเปเบเบเปเบฅเบทเปเบญเบเป, เบเบฑเปเบเบเบฑเปเบเบเปเบฒเบเบเบทเปเบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเปเบฅเบทเบญเบ pods เปเบฅเบฐ namespaces เปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ.
เปเบเบทเบญเบเปเบฒเบเบเปเบญเบ (ipBlocks
) เบเบทเบโเบเปเบฒโเปเบเปโเปเบโเปเบงโเบฅเบฒโเบเบตเปโเบเบฒเบโเบเบธเปเบกโเบเบญเบโเบเบฒเบโเปเบเบปเปเบฒ (เบเบฒโเปเบเบปเปเบฒโ) เบซเบผเบทโเบเบฒโเบญเบญเบ (egressโ) เบเบฒเบโเปเบเบทเปเบญเบกโเบเปเปโเบเบฒเบโเบเบญเบ (เปเบซเบเบทเบญโเปเบเปโ)โ. เบเบปเบงเบขเปเบฒเบ, เบเบฐเปเบเบเบฒเบเบเบตเปเปเบเบตเบเปเบซเปเบเบธเบ pods เบเบฒเบ namespace default
เบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ DNS เบเบญเบ Google:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: egress-dns
namespace: default
spec:
podSelector: {}
policyTypes:
- Egress
egress:
- to:
- ipBlock:
cidr: 8.8.8.8/32
ports:
- protocol: UDP
port: 53
เบเบปเบงเปเบฅเบทเบญเบเบเบฑเบเปเบเบปเปเบฒเปเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒ "เปเบฅเบทเบญเบเบเบฑเบเบเบฑเบเบซเบกเบปเบเปเบ namespace."
เบเบฐเปเบเบเบฒเบเบเบตเปเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบปเปเบฒเปเบเบดเบ 8.8.8.8 เปเบเบปเปเบฒเบเบฑเปเบ; เบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ IP เบญเบทเปเบเปเปเบกเปเบเบเบทเบเบซเปเบฒเบก. เบเบฑเปเบเบเบฑเปเบ, เปเบเบเปเบเบทเปเบญเปเบเปเปเบฅเปเบง, เบเปเบฒเบเปเบเปเบชเบฐเบเบฑเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ DNS Kubernetes เบเบฒเบเปเบ. เบเปเบฒเบเปเบฒเบเบเบฑเบเบเปเบญเบเบเบฒเบเปเบเบตเบเบกเบฑเบ, เปเบซเปเบเบตเปเบเบญเบเบญเบฑเบเบเบตเปเบขเปเบฒเบเบเบฐเปเบเปเบ.
เบเบปเบเบเบฐเบเบดเปเบฅเปเบง ipBlocks
ะธ podSelectors
เปเบกเปเบเบชเบฐเปเบเบฒเบฐเปเบเบดเปเบเบเบฑเบเปเบฅเบฐเบเบฑเบ, เปเบเบฒเบฐเบงเปเบฒเบเบตเปเบขเบนเป IP เบเบฒเบเปเบเบเบญเบเบเบฑเบเบเปเปเปเบเปเบเบทเบเบเปเบฒเปเบเปเปเบ ipBlocks
. เปเบเบเบเบฒเบเบเบตเปเบเบญเบ เบเบฑเบ IP เบเบฒเบเปเบ, เบเปเบฒเบเบเบฐเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบทเปเบญเบกเบเปเป / เบเบฒเบ pods เบเบฑเบเบเบตเปเบขเบนเปเปเบซเบผเบปเปเบฒเบเบตเป. เปเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ, เบเปเบฒเบเบเบฐเบเปเปเบฎเบนเปเบงเปเบฒเบเบฐเปเบเปเบเบตเปเบขเบนเป IP เปเบ, เบเบฑเปเบเปเบกเปเบเปเบซเบเบเบปเบเบเบตเปเบเบงเบเปเบเบปเบฒเบเปเปเบเบงเบเปเบเปเปเบเบทเปเบญเปเบฅเบทเบญเบเบเบฑเบ.
เปเบเบเบฒเบเบฐเปเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบ, เบเบฐเปเบเบเบฒเบเบเปเปเปเบเบเบตเปเบเบฐเบเบญเบเบกเบต IPs เบเบฑเบเบซเบกเบปเบเปเบฅเบฐเบเบฑเปเบเบเบฑเปเบเบเบถเปเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบปเปเบฒเปเบเบดเบ pods เบญเบทเปเบเปเบเบฑเบเบซเบกเบปเบ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: egress-any
namespace: default
spec:
podSelector: {}
policyTypes:
- Egress
egress:
- to:
- ipBlock:
cidr: 0.0.0.0/0
เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบเบตเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฝเบเปเบเป IPs เบเบฒเบเบเบญเบ, เบเบปเบเปเบงเบฑเปเบเบเบตเปเบขเบนเป IP เบเบฒเบเปเบเบเบญเบ pods. เบเบปเบงเบขเปเบฒเบ, เบเปเบฒเปเบเบทเบญเบเปเบฒเบเบเปเบญเบเบเบญเบเบเบญเบเบเบญเบเบเปเบฒเบเปเบกเปเบ 10.16.0.0/14:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: egress-any
namespace: default
spec:
podSelector: {}
policyTypes:
- Egress
egress:
- to:
- ipBlock:
cidr: 0.0.0.0/0
except:
- 10.16.0.0/14
เบเบญเบเปเบฅเบฐเปเบเปเบเบเบญเบ
เปเบเบเบเบปเบเบเบฐเบเบด pods เบเบฑเบเบซเบเบถเปเบเบเบญเบ. เบเบตเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเบเปเบฒเบเบเปเปเบชเบฒเบกเบฒเบเบเปเบฒเบเบปเบเบเบปเบงเปเบฅเบเบเบญเบเปเบเบเบฐเปเบเบเบฒเบเปเบฅเบฐเบเปเบญเบเปเบซเปเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเปเบเบฑเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ. เบขเปเบฒเบเปเบเบเปเปเบเบฒเบก, เปเบเบฐเบเปเบฒเปเบซเปเปเบฎเบฑเบเบเบฐเปเบเบเบฒเบเบเปเบฒเบเบฑเบเปเบเบปเปเบฒเบเบตเปเปเบเบฑเบเปเบเปเบเป, เบเบฑเปเบเบเบฑเปเบเปเบเบเบฒเบเบเปเบฅเบฐเบเบตเบเปเบฒเบเบเบฑเบเบชเบฒเบกเบฒเบเบเปเบฒเบเบปเบเบเบญเบ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.postgres
namespace: default
spec:
ingress:
- from:
- podSelector:
matchLabels:
app: indexer
- podSelector:
matchLabels:
app: admin
ports: # <<<
- port: 443 # <<<
protocol: TCP # <<<
- port: 80 # <<<
protocol: TCP # <<<
podSelector:
matchLabels:
app: postgres
policyTypes:
- Ingress
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒเบเบปเบงเปเบฅเบทเบญเบ ports
เปเบเปเปเบเปเบเบฑเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเปเบปเบเปเบเบเบฅเบฑเบญเบ to
เบซเบผเบท from
, เปเบเบดเปเบเบเบฐเบเบญเบเบเปเบงเบ. เปเบเบทเปเบญเบฅเบฐเบเบธเบเบญเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบธเบเบญเบปเบเบเบฐเบเบญเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ, เปเบเบเบญเบญเบ ingress
เบซเบผเบท egress
เปเบเบปเปเบฒเปเบเปเบเบซเบผเบฒเบเบเบฒเบเบชเปเบงเบเบเปเบญเบเบเบตเปเบกเบต to
เบซเบผเบท from
เปเบฅเบฐเปเบเปเบเปเบฅเบฐเบเบฐเบเบฝเบเบเบญเบเบเบญเบเปเบเบปเปเบฒ:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default.postgres
namespace: default
spec:
ingress:
- from:
- podSelector:
matchLabels:
app: indexer
ports: # <<<
- port: 443 # <<<
protocol: TCP # <<<
- from:
- podSelector:
matchLabels:
app: admin
ports: # <<<
- port: 80 # <<<
protocol: TCP # <<<
podSelector:
matchLabels:
app: postgres
policyTypes:
- Ingress
เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบญเบเบเบญเบเปเบฅเบตเปเบกเบเบปเปเบ:
- เบเปเบฒโเบซเบฒเบโเบงเปเบฒโเบเปเบฒเบโเบเบปเบโเปเบงเบฑเปเบโเบเปเบฒโเบเบดโเบเบฒเบกโเบเบญเบโเบขเปเบฒเบโเบชเบปเบกโเบเบนเบ (
ports
), เบเบตเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเปเบเปเบเบเบญเบเบเบฑเบเบซเบกเบปเบเปเบฅเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบ; - เบเปเบฒโเบซเบฒเบโเบเปเบฒเบโเบฅเบฐโเปเบงเบฑเปเบโเบเปเบฒโเบเบดโเบเบฒเบกโเบเบญเบโเบญเบฐโเบเบธโเบชเบฑเบโเบเบฒ (
protocol
), เบเบตเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒ TCP; - เบเปเบฒโเบซเบฒเบโเบเปเบฒเบโเบเบปเบโเปเบงเบฑเปเบโเบเปเบฒโเบเบดโเบเบฒเบกโเบเบญเบ (
port
), เบเบตเปเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเบเบญเบเบเบฑเบเบซเบกเบปเบ.
เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบตเปเบเบตเบเบตเปเบชเบธเบ: เบขเปเบฒเบญเบตเบเปเบชเปเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เบฅเบฐเบเบธเบชเบดเปเบเบเบตเปเบเปเบฒเบเบเปเบญเบเบเบฒเบเบขเปเบฒเบเบเบฐเปเบเปเบ.
เบเบฐเบฅเบธเบเบฒเบฎเบฑเบเบเบฒเบเบงเปเบฒเบเปเบฒเบเบเบฐเบเปเบญเบเปเบเปเบเบญเบเบเบญเบ, เบเปเปเปเบกเปเบเบเบญเบเบเปเบฅเบดเบเบฒเบ (เปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเปเบฅเบทเปเบญเบเบเบตเปเปเบเบงเบฑเบเบเปเปเปเบ).
เบเบฐเปเบเบเบฒเบเบเบทเบเบเปเบฒเบเบปเบเบชเปเบฒเบฅเบฑเบ pods เบซเบผเบทเบเบฒเบเบเปเบฅเบดเบเบฒเบ?
เปเบเบเบเบปเบเบเบฐเบเบด, pods เปเบ Kubernetes เปเบเบปเปเบฒเปเบเบดเบเบเบฑเบเปเบฅเบฐเบเบฑเบเปเบเบเบเปเบฒเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ - virtual load balancer เบเบตเปเบเปเบฝเบเปเบชเบฑเปเบเบเบฒเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเบซเบฒ pods เบเบตเปเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ. เบเปเบฒเบเบญเบฒเบเบเบฐเบเบดเบเบงเปเบฒเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ, เปเบเปเบเบตเปเบเปเปเปเบกเปเบเบเปเบฅเบฐเบเบต. เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เปเบฎเบฑเบเบงเบฝเบเบขเบนเปเปเบเบเบญเบเบเบญเบ, เบเปเปเปเบกเปเบเบเบญเบเบเปเบฅเบดเบเบฒเบ.
เบเบปเบงเบขเปเบฒเบ, เบเปเบฒเบเปเบฅเบดเบเบฒเบเบเบฑเบเบเบญเบ 80, เปเบเปเบเปเบฝเบเปเบชเบฑเปเบเบเบฒเบเบเบฒเบเบเบฒเบฅเบฐเบเบญเบเปเบเบซเบฒเบเบญเบ 8080 เบเบญเบเบเบฑเบเบเบญเบเบกเบฑเบ, เบเปเบฒเบเบเปเบญเบเบฅเบฐเบเบธ 8080 เบขเปเบฒเบเปเบเปเบเบดเบเปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ.
เบเบปเบเปเบเบเบฑเปเบเบเปเบฒเบงเบเบงเบเปเบเปเบฎเบฑเบเบเบฒเบเบเบดเบเบฒเบฅเบฐเบเบฒเบเบตเปเบเบตเบเบตเปเบชเบธเบ: เบเปเบฒเปเบเบเบชเปเบฒเบเบเบฒเบเปเบเบเบญเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ (เบเบฑเบเบเบฒเบเปเบฒเปเบฎเบทเบญเบเบตเป pods เบเบฑเบ) เบกเบตเบเบฒเบเบเปเบฝเบเปเบเบ, เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบฐเบเปเบญเบเบเบฑเบเบเบธเบ.
เบงเบดเบเบตเบเบฒเบเบชเบฐเบเบฒเบเบฑเบเบเบฐเบเบฐเบเปเบฒเปเบซเบกเปเปเบเบเปเบเป Service Mesh (เบเบปเบงเบขเปเบฒเบ, เปเบเบดเปเบเบเปเบฝเบงเบเบฑเบ Istio เบเปเบฒเบเบฅเบธเปเบกเบเบตเป - approx. transl.) เบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบเปเบเบทเปเบญเบฎเบฑเบเบกเบทเบเบฑเบเบเบฑเบเบซเบฒเบเบตเป.
เบกเบฑเบเบเปเบฒเปเบเบฑเบเบเปเบญเบเบฅเบปเบเบเบฐเบเบฝเบเบเบฑเบ Ingress เปเบฅเบฐ Egress เบเป?
เบเปเบฒเบเบญเบเบชเบฑเปเบเปเบกเปเบเปเบกเปเบเปเบฅเปเบง, เปเบเบทเปเบญเปเบซเป pod A เบเบดเบเบเปเปเบชเบทเปเบชเบฒเบเบเบฑเบ pod B, เบกเบฑเบเบเปเบญเบเปเบเปเบฎเบฑเบเบเบฒเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเบชเปเบฒเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบฒเบญเบญเบ (เบชเปเบฒเบฅเบฑเบเบเบตเป, เบเปเบฒเบเบเปเบฒเปเบเบฑเบเบเปเบญเบเปเบเปเบเปเบฒเบเบปเบเบเบฐเปเบเบเบฒเบ egress), เปเบฅเบฐ pod B เบเบฐเบเปเบญเบเบชเบฒเบกเบฒเบเบเบญเบกเบฎเบฑเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบฒเปเบเบปเปเบฒ ( เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบตเป, เบเบฒเบกเบเบงเบฒเบกเปเบซเบกเบฒเบฐเบชเบปเบก, เบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบฐเปเบเบเบฒเบ ingress).
เบขเปเบฒเบเปเบเบเปเปเบเบฒเบก, เปเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบญเบตเบเปเบชเปเบเบฐเปเบเบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเปเบเบทเปเบญเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบทเปเบญเบกเบเปเปเปเบเบซเบเบถเปเบเบซเบผเบทเบเบฑเบเบชเบญเบเบเบดเบเบเบฒเบ.
เบเปเบฒเบเบฒเบเบเบฑเบ -เปเบซเบผเปเบเบเปเปเบกเบนเบ เบเบฐเบเบทเบเปเบฅเบทเบญเบเปเบเบเบซเบเบถเปเบเบซเบผเบทเบซเบผเบฒเบเบเบงเปเบฒเบเบฑเปเบ เบเบนเปเบเบดเบ- เบเบฑเบเบเบฒเบเปเบกเบทเบญเบ, เบเปเปเบเปเบฒเบเบฑเบเบเบตเปเบงเบฒเบเปเบงเปเบเบฐเบเบทเบเบเปเบฒเบเบปเบเปเบเบเบเบฒเบเปเบเปเบเปเบเบเบเบญเบเบเบงเบเปเบเบปเบฒ. เปเบโเบเปโเบฅเบฐโเบเบตโเบเบตเปโ, เบเปเบฒเบโเบเบฐโเบเปเบฒโเปเบเบฑเบโเบเปเบญเบโเบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโเบเบฒเบโเปเบเบทเปเบญเบกโเบเปเปโเบเบฑเบโเบเบฑเบโเบขเปเบฒเบโเบเบฑเบโเปเบเบ -เบเบฑเบเบเบนเปเบฎเบฑเบ. เบเปเบฒ pod เบเปเปเปเบเปเบเบทเบเปเบฅเบทเบญเบเปเบเบเบเบฐเปเบเบเบฒเบเปเบเป, เบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเบญเบญเบเบเบญเบเบกเบฑเบเบเบทเบเบญเบฐเบเบธเบเบฒเบเบเบฒเบกเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ.
เปเบเบฑเปเบเบเบฝเบงเบเบฑเบ, เบเบฐเบเบฒเบเปเบฒเบเบญเบเบเบฑเบเปเบกเปเบเบเบตเปเบขเบนเป, เปเบฅเบทเบญเบเปเบเบเบซเบเบถเปเบเบซเบผเบทเบซเบผเบฒเบเบเบงเปเบฒเบเบฑเปเบ เปเบเบทเปเบญเบเบเบทเปเบก- เบเบฑเบเบเบฒเบเปเบกเบทเบญเบ, เบเบฐเบเบทเบเบเปเบฒเบเบปเบเปเบเบ disjunction เบเบญเบเปเบเบปเบฒเปเบเบปเปเบฒ. เปเบเบเปเบฅเบฐเบเบตเบเบตเป, เบเปเบฒเบเบเปเบญเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเบกเบฑเบเปเบเปเบฎเบฑเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเบเบเบฑเบเปเบซเบผเปเบเบขเปเบฒเบเบเบฑเบเปเบเบ. เบเปเบฒ pod เบเปเปเปเบเปเบเบทเบเปเบฅเบทเบญเบเปเบเบเบเบฐเปเบเบเบฒเบเปเบเป, เบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฒเปเบเบปเปเบฒเบเบฑเบเบซเบกเบปเบเบชเปเบฒเบฅเบฑเบเบกเบฑเบเบเบทเบเบญเบฐเบเบธเบเบฒเบเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ.
เปเบเบดเปเบ Stateful เบซเบผเบท Stateless เบเปเบฒเบเบฅเบธเปเบกเบเบตเป.
เบเบฑเบเบเบถเบ
เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เบเปเปเบชเบฒเบกเบฒเบเบเบฑเบเบเบถเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเป. เบเบตเปเปเบฎเบฑเบเปเบซเปเบกเบฑเบเบเบฒเบเบเบตเปเบเบฐเบเปเบฒเบเบปเบเบงเปเบฒเบเบฐเปเบเบเบฒเบเปเบกเปเบเปเบฎเบฑเบเบงเบฝเบเบเบฒเบกเบเบธเบเบเบฐเบชเบปเบเปเบฅเบฐเปเบฎเบฑเบเปเบซเปเปเบเบตเบเบเบงเบฒเบกเบชเบฑเบเบชเบปเบเบซเบผเบฒเบเปเบเบเบฒเบเบงเบดเปเบเบฒเบฐเบเบงเบฒเบกเบเบญเบเปเบ.
เบเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเบเบฑเบเบเบฒเบเบเปเบฅเบดเบเบฒเบเบเบฒเบเบเบญเบ
เบเบฐโเปเบโเบเบฒเบโเปเบเบทเบญโเบเปเบฒเบ Kubernetes เบเปเปโเบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโเบเปเบฒเบโเปเบเบทเปเบญโเบฅเบฐโเบเบธโเบเบทเปโเปเบโเปเบกเบโเบเบตเปโเบกเบตโเบเบธเบโเบชเบปเบกโเบเบฑเบ (DNS) เบขเปเบฒเบโเปเบเบฑเบกโเบเบตเปโเปเบโเบเบฒเบโเบชเปเบงเบ egress. เบเบงเบฒเบกเบเบดเบเบเบตเปเปเบฎเบฑเบเปเบซเปเบเบงเบฒเบกเบเปเปเบชเบฐเบเบงเบเบเบตเปเบชเปเบฒเบเบฑเบเปเบเปเบงเบฅเบฒเบเบตเปเบเบฐเบเบฒเบเบฒเบกเบเปเบฒเบเบฑเบเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเบซเบฒเบเบธเบเบซเบกเบฒเบเบเบฒเบเบเบฒเบเบเบฒเบเบเบญเบเบเบตเปเบเปเปเบกเบตเบเบตเปเบขเบนเป IP เบเบปเบเบเบตเป (เปเบเบฑเปเบ: aws.com).
เบเบฒเบเบเบงเบเบชเบญเบเบเบฐเปเบเบเบฒเบ
Firewalls เบเบฐเปเบเบทเบญเบเบเปเบฒเบเบซเบผเบทเปเบกเปเบเบฐเบเบฑเปเบเบเบฐเบเบดเปเบชเบเบเบตเปเบเบฐเบเบญเบกเบฎเบฑเบเบเบฐเปเบเบเบฒเบเบเบตเปเบเปเปเบเบทเบเบเปเบญเบ. Kubernetes เบเบฑเบเปเบฎเบฑเบเบเบฒเบเบขเบฑเปเบเบขเบทเบเบเบฒเบเบขเปเบฒเบ. เปเบกเบทเปเบญเบเบฑเปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเปเบฒเบ kubectl, Kubernetes เบญเบฒเบเบเบฐเบเบฐเบเบฒเบเบงเปเบฒเบกเบฑเบเบเปเปเบเบทเบเบเปเบญเบ เปเบฅเบฐเบเบฐเบเบดเปเบชเบเบเปเปเบเบญเบกเบฎเบฑเบเบกเบฑเบ. เปเบเบเปเบฅเบฐเบเบตเบญเบทเปเบเป, Kubernetes เบเบฐเปเบญเบปเบฒเบเบฐเปเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบงเปเบฅเบฐเบเบทเปเบกเบเปเปเบกเบนเบเปเบชเปเปเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเบเบตเปเบเบฒเบเบซเบฒเบเปเบ. เบเบงเบเปเบเบปเบฒเบชเบฒเบกเบฒเบเปเบซเบฑเบเปเบเปเปเบเบเปเบเปเบเปเบฒเบชเบฑเปเบ:
kubernetes get networkpolicy <policy-name> -o yaml
เบเบปเปเบเบเบทเปเปเบงเปเบงเปเบฒเบฅเบฐเบเบปเบเบเบฒเบเบเบงเบเบชเบญเบ Kubernetes เปเบกเปเบเบเปเปเบเบดเบเปเบฅเบฐเบญเบฒเบเบเบฐเบเบฒเบเบเบฒเบเบเบฐเปเบเบเบเบญเบเบเบงเบฒเบกเบเบดเบเบเบฒเบ.
เบเบฒเบเบเบฐเบเบดเบเบฑเบ
Kubernetes เบเปเปเปเบเปเบเบฐเบเบดเบเบฑเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบปเบงเบกเบฑเบเปเบญเบ, เปเบเปเปเบเบฑเบเบเบฝเบเบเบฐเบเบน API เบเบตเปเบกเบญเบเบซเบกเบฒเบเบเบฒเบฅเบฐเบเบญเบเบเบฒเบเบเบงเบเบเบธเบกเปเบซเปเบเบฑเบเบฅเบฐเบเบปเบเบเบทเปเบเบเบฒเบเบเบตเปเปเบญเบตเปเบเบงเปเบฒ Container Networking Interface (CNI). เบเบฒเบเบเบฑเปเบเบเปเบฒเบเบฐเปเบเบเบฒเบเบเปเบฝเบงเบเบฑเบเบเบธเปเบก Kubernetes เปเบเบเบเปเปเบกเบตเบเบฒเบเบเปเบฒเบเบปเบ CNI เบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเปเบกเปเบเบเบทเบเบฑเบเบเบฑเบเบเบฒเบเบชเปเบฒเบเบเบฐเปเบเบเบฒเบเบเปเบฝเบงเบเบฑเบเปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบเบเบฒเบเบเบธเปเบกเบเบญเบเปเบเบงเปเปเบเบเบเปเปเบกเบตเบเบฒเบเบเบดเบเบเบฑเปเบเบเบงเบเบกเบฑเบเบขเบนเปเปเบเปเบเบงเป. เบกเบฑเบเบเบถเปเบเบเบฑเบเบเปเบฒเบเปเบเบทเปเบญเบฎเบฑเบเบเบฐเบเบฑเบเบงเปเบฒเบเปเบฒเบเบกเบต CNI เบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบซเบผเบท, เปเบเบเปเบฅเบฐเบเบตเบเบญเบเปเบงเบเบต Kubernetes, เปเบเบฑเบเปเบเบปเปเบฒเบเบฒเบเบขเบนเปเปเบเบเบฅเบฒเบง. (เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบเบดเปเบเบฅเบฒเบเบเบทเปเบเบนเปเปเบซเปเบเปเบฅเบดเบเบฒเบ
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒ Kubernetes เบเบฐเบเปเปเปเบเบทเบญเบเบเปเบฒเบเบเปเบฒเบเปเบฒเบเบเบฑเปเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเปเบเบเบเปเปเบกเบตเบเบปเบงเบเปเบงเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก CNI.
Stateful เบซเบผเบท Stateless?
Kubernetes CNI เบเบฑเบเปเบปเบเบเบตเปเบเปเบญเบเปเบเปเบเบปเบเปเบกเปเบเบชเบฐเบเบฒเบเบฐ (เบเบปเบงเบขเปเบฒเบ, Calico เปเบเป Linux conntrack). เบเบตเปเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเบฑเบเปเบเปเบฎเบฑเบเบเบฒเบเบเบญเบเบชเบฐเบซเบเบญเบเบเปเบฝเบงเบเบฑเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเป TCP เบเบตเปเบกเบฑเบเบฅเบดเปเบฅเบตเปเบกเปเบเบเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบเบชเปเบฒเบเบกเบฑเบเปเบซเบกเป. เปเบเบงเปเบเบเปเปเบเบฒเบก, เบเปเบญเบเบเปเปเบฎเบนเปเบกเบฒเบเบเบฐเบเบฒเบ Kubernetes เบเบตเปเบเบฐเบฎเบฑเบเบเบฐเบเบฑเบเบเบงเบฒเบกเบชเบปเบกเบเบนเบ.
เบเบฒเบเบเบธเปเบกเบเบญเบเบเบฐเปเบเบเบฒเบเบเบงเบฒเบกเบเบญเบเปเบเบเบฑเปเบเบชเบนเบ
เบเบตเปเปเบกเปเบเบเบฒเบเบงเบดเบเบตเปเบเบทเปเบญเบเบฑเบเบเบธเบเบเบฒเบเบเบฑเบเบเบฑเบเปเบเปเบเบฐเปเบเบเบฒเบเบเบงเบฒเบกเบเบญเบเปเบเปเบ Kubernetes:
- เบฎเบนเบเปเบเบเบชเบฐเบเบฒเบเบฑเบเบเบฐเบเบฐเบเปเบฒ Service Mesh เปเบเปเบเบนเปเบเบญเบเปเบเบเปเบเบต sidecar เปเบเบทเปเบญเบชเบฐเบซเบเบญเบเบฅเบฒเบเบฅเบฐเบญเบฝเบ telemetry เปเบฅเบฐเบเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเบเบฐเบฅเบฒเบเบญเบเปเบเบฅเบฐเบเบฑเบเบเบฒเบเบเปเบฅเบดเบเบฒเบ. เปเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเปเบญเบปเบฒ
เบญเบดเบเบดเปเบญ . - เบเบนเปเบเบฒเบ CNI เบเบฒเบเบเบปเบเปเบเปเบเบฐเบซเบเบฒเบเปเบเบทเปเบญเบเบกเบทเบเบญเบเบเบงเบเปเบเบปเบฒเปเบเบเบญเบเปเบซเบเบทเบญเบเบฒเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes.
-
Tufin Orca เบชเบฐเปเบญเบเบเบฒเบเปเบเบดเปเบเปเบซเบฑเบ เปเบฅเบฐเบฅเบฐเบเบปเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเบเบญเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes.
เบเบธเบ Tufin Orca เบเบธเปเบกเบเบญเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes (เปเบฅเบฐเปเบเบฑเบเบเบตเปเบกเบฒเบเบญเบเบเบฒเบเปเปเบฒเบเปเบเปเบฒเบเปเบเบดเบ).
เบเปเปเบกเบนเบเปเบเบตเปเบกเปเบเบตเบก
-
เบเบปเบงเบขเปเบฒเบเบเบญเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบเบตเปเบเบฐเบเบฝเบกเปเบเบ Ahmet Alp Balkan เบเบฒเบ GKE ; -
เปเบญเบเบฐเบชเบฒเบเบเบฒเบเปเบงเบฑเบเปเบเบเปเบเบฒเบเบเบฒเบ Kubernetes ; -
เบเบนเปเบกเบทเบเปเบฝเบงเบเบฑเบเบฎเบนเบเปเบเบเปเบเบทเบญเบเปเบฒเบ Kubernetes ; -
Script เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบงเบเบชเบญเบเบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ .
เบชเบฐเบซเบฅเบธเบ
เบเบฐเปเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบ Kubernetes เบชเบฐเปเปเบตเบเบธเบเปเบเบทเปเบญเบเบกเบทเบเบตเปเบเบตเบชเบณเบฅเบฑเบเบเบฒเบเปเบเปเบเบเบธเปเบกเบเบธเปเบก, เปเบเปเบเบงเบเบกเบฑเบเบเปเปเปเบเบปเปเบฒเปเบเบเปเบฒเบ เปเบฅเบฐเบกเบตเบเบงเบฒเบกเบญเปเบญเบเปเบเบเบซเบผเบฒเบ. เปเบเบทเปเบญเบเบเบฒเบเบเบงเบฒเบกเบชเบฑเบเบชเบปเบเบเบตเป, เบเปเบญเบเปเบเบทเปเบญเบงเปเบฒเบเบฐเปเบเบเบฒเบเบเบญเบเบเบธเปเบกเบเบตเปเบกเบตเบขเบนเปเบซเบผเบฒเบเปเบกเปเบ buggy. เบเบฒเบเปเบเปเปเบเบเบตเปเปเบเบฑเบเปเบเปเบเปเบชเปเบฒเบฅเบฑเบเบเบฑเบเบซเบฒเบเบตเปเบฅเบงเบกเบกเบตเบเบฒเบเบเปเบฒเบเบปเบเบเบฐเปเบเบเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเบซเบผเบทเบเบฒเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเบกเบทเบเบฒเบเปเบเปเบเบชเปเบงเบเบญเบทเปเบเป.
เบเปเบญเบเบซเบงเบฑเบเบงเปเบฒเบเบนเปเบกเบทเบเบตเปเบเบฐเบเปเบงเบเบฅเบถเบเบเบฒเบเบเปเบฒเบเบฒเบกเปเบฅเบฐเปเบเปเปเบเบเบฑเบเบซเบฒเบเบตเปเปเบเบปเปเบฒเบญเบฒเบเบเบฐเบเบปเบ.
PS เบเบฒเบเบเบฑเบเปเบ
เบญเปเบฒเบเบเบฑเบเบขเบนเปเปเบ blog เบเบญเบเบเบงเบเปเบฎเบปเบฒ:
- "เบเบฑเบเบเบทเบเปเบเบเปเบญเบเบเปเบฅเบดเบเบฒเบเบเบธเบฅเบฐเบเบฒเบเบเบฑเบ Istio":
เบเบฒเบโเบเบต 1 (เบเบฒเบโเบเปเบฒโเบชเบฐโเปเบซเบเบตโเบเปเบฝเบงโเบเบฑเบโเบฅเบฑเบโเบชเบฐโเบเบฐโเบเบปเปเบโเบเปโ) ,เบเบฒเบโเบเบต 2 (เปเบชเบฑเปเบโเบเบฒเบโ, เบเบฒเบโเบเบงเบโเบเบธเบกโเบเบฐโเบฅเบฒโเบเบญเบโ) ,เบเบฒเบโเบเบต 3 (เบเบงเบฒเบกโเบเบญเบโเปเบโ) ; - "เบเบนเปเบกเบทเบฎเบนเบเบเบฒเบเบเปเบฝเบงเบเบฑเบเปเบเบทเบญเบเปเบฒเบเปเบ Kubernetes":
เบเบฒเบเบเบต 1 เปเบฅเบฐ 2 (เบเบปเบงเปเบเบเปเบเบทเบญเบเปเบฒเบ, เปเบเบทเบญเบเปเบฒเบเบเปเบญเบเบเบฑเบ) ,เบเบฒเบโเบเบต 3 (เบเบฒเบโเบเปโเบฅเบดโเบเบฒเบโเปเบฅเบฐโเบเบฒเบโเบเบธเบโเปเบเปเบโเบเบฐโเบฅเบฒโเบเบญเบโ) ; - ยซ
Docker เปเบฅเบฐ Kubernetes เปเบเบชเบฐเบเบฒเบเปเบงเบเบฅเปเบญเบกเบเบตเปเบเปเบญเบเบเบฒเบเบเบงเบฒเบกเบเบญเบเปเบ " - ยซ
9 เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบตเปเบเบตเบเบตเปเบชเบธเบเบชเปเบฒเบฅเบฑเบเบเบงเบฒเบกเบเบญเบเปเบ Kubernetes " - ยซ
11 เบงเบดเบเบตเบเบตเปเบเบฐ (เบเปเป) เบเบปเบเปเบเบฑเบเปเบซเบเบทเปเบญเบเบญเบเบเบฒเบ Hack Kubernetes ".
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com