αααααααααα’αααααααΊααΎααααΈααααΆαα’αααα’αΆαα’αααΈααΌαααααΆαααααΉααααααααΆα αα·αααΆααααααααααααααααααΆααααααΆααα
αααα»α Kubernetes ααααΌα
ααΆαααααα·ααΈαααα½α Calico ααΆααΈααΈααΈααααααααΈααααααααΆααααααααΆαα αα
ααΆαααααΌα ααΆαααΆααααα½αααααΆαααααααα
ααΆαααααααα αα·ααααααααα·ααααα½αα
ααα½αααΉαααααΌαααΆααααα αΆααααααααΎα§ααΆα αααααΆαααααααααΈαααα·αααααααααα·ααααα·ααΆαααααααΎαα
ααΆαααααΆααα ααα ααααα§ααααααααααΆα Kubernetes
α
ααααα Kubernetes αα·αα’αΆα
ααααΌαααΆαααααααααααααΆααααααΆαααα ααΎαβααΆαβααααα»αααβα―αααΆαβααΎβααΌαααααΆαβααααβαα½αααβαα½α
βα αΎαα "
αα
αααα»αααα·ααααα’αααααααα ααΆααΆααΏαααααΆαααααα»αααΆαααααααααΆααααΆ K8s αααα½αααΆαα·αααα½ααα»αααααΌαα
ααααααΆαααααΆαααααααΆααααΆααα»αααΊααα αα·αααααΆααααα αααααΆαααααα αΆααα αααααα αααααα·ααΈαααα½α CNI (α
ααα»α
αααααΆαααααααΆααα»αααΊααα) α αααααααααα’αααΈαααα·ααααααΎα
α§ααΆα ααα ααααααΆαααα»ααααααααα·ααΈαααα½αααΆαααααααΊ
α αΎα "αααα
αααα’αα" αααααΆααααΆααααα
αααΆααααααααααααααααααΆααααααΆααα
αααα»αα
ααααα Kubernetes ααααΌαααΆααααααααΌα
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-network-policy
namespace: default
spec:
podSelector:
matchLabels:
role: 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
ααααα·ααααααΆα§ααΆα αααααααααα»ααααααα
ααΆααΆα‘αΌααΈαααααα ααΆα αααααΆα 2 αααααα: α αΌααα (α αΌα) αα·αα ααααΈααΆ (α’ααΈα αααα) α
ααΆαβαα·α αααααΆαβααααΌαβααΆαβαααβα
ααβααΆβα’βααααααβααα αααβααα’ααβααΎβαα·ααα
βααβα
αααΆα
αα»ααααααααααααααΌαααΆααααααΆααααΊα§αααααααααΎαααΎα; α’ααααααα αααΆααα’αα»ααααα αααα’αΆα ααΆ pods (α¬αααα»ααα pods) α¬ααα·ααααΆα (α§. α αααααααααα)α ααααααΆααααα’α·αααααΆααα ααααααααΆααααΈαααααααα»ααΆαααααααααΌαααααΆαααααΆα (ααααΆα αα αααα»αααΆαααααααα Kubernetes) - ααΆαααααααΊααΆααΆααααααα’ααααααααΆαααααΎααααα·ααααα·ααΆαααΆαα½αα
ααααααααΈααΎα ααα½ααααααααα’αααααααΎαααΎαααααα½ααα½ααααααααααααααααΆααα½αα ααα½α ααΆα’αΆα αααααα αααΆααααΌα ααΆ "α’αα»ααααΆα/ααα·αααα’αααΈααααααααΆα/α’ααααααααααααΆ" αα αααα»αααΆααααααααα½αααααααααααΆα α αααααααααααααα αααααααααααααααααΌαααΆαααααΎααααΆααα
podSelector: {}
ingress: []
policyTypes:
- Ingress
β αααα»αα§ααΆα αααααα ααααΆααα’αααα αααα»αααα·ααααΆαααααΌαααΆαααΆααΆααααΈα ααΆα αααα αΌαα α’αΆαααααα·αα·ααΆαααα»αα’αΆα αααααα ααΆαααΆαα½αααΉαααΆαααΆααααααΌα ααΆααααααα
podSelector: {}
ingress:
- {}
policyTypes:
- Ingress
ααΌα ααααΆαααααααααααΆααααΆαα αα:
podSelector: {}
policyTypes:
- Egress
- ααΎααααΈαα·αααΆα α αΎααααααΆα’αααΈαααααααΌααα½ααααα αΌαα
podSelector: {}
egress:
- {}
policyTypes:
- Egress
αααααααα
αααααΎααααααααα·ααΈαααα½α CNI αααααΆααα
αααααααΆαα½αα’αααααααααΆαα αα·ααααααααααααααα·ααΈαααα½ααααααΆαααΆαααα NetworkPolicy ααα. α§ααΆα ααα Flannel αααααΆααααααΆαααα½α
α αΎα αα·αααΉαααΈααααααααααααααΆααααααααΆα
ααααΆαα Calico: ααααΉααααΈ
αααααα·ααΈαααα½α Calico α’αΆα
ααααΌαααΆαααααΎαα
αααα»αααΆααα½ααααα
αΌαααΆαα½α Flannel (αααααααα
ααΎααΆαααααΎααααΆαααααααααααΆα "αααα’αα" K8s αα·α API αααααΆααααααααΈ Calico αααααα±ααΆαα’αααΈαααα?
αααααΆα’αααΈαααααααΌαααΆααααααΎαα‘αΎααα αααα»α NetworkPolicyα
- α’ααααααααΆαααααΌαααΆαααααααααααα·ααααΆαα
- αααααΆαααααααΌαααΆαα’αα»ααααα αααααααααααααααααΆαααααααααΆαα
- α αααΆααα’αΆα ααααΌαααΆαα’αα»αααααα pods ααα·ααααΆα α¬αααααΆαααα
- α αααΆααα’αΆα ααΆααα·ααΈααΆα ααααα α¬αααααααα αα αααααα ααααα·αα·ααααααααΆα
αααααΆααααααα Calico αααααΈααα»αααΆαααΆαααααα
- αααααΆαααα’αΆα ααααΌαααΆαα’αα»ααααα ααααααααα»ααΆαα½αα αα αα»αααΊααα αααΆαααΈααα·αααα·α α¬α ααα»α αααααΆααα
- α αααΆααα’αΆα ααΆααααααααΆαααΆααααΆαααα½α (ααΆαα αΆαααΆαα ααΆαα’αα»ααααΆα ααΆαααΆααααΎ);
- ααααα α¬αααααααα αααΆααα’αΆα ααΆα ααα αα½αααα ααα αα·ααΈααΆα αα»ααααααα HTTP α¬ ICMP IP α¬αααααΆααα (ααααΆααααΈ 4 α¬ααΈ 6) α§αααααααααΎαααΎαααΆαα½α (ααααΆαα αααΆαααΈα ααα·ααααΆα) α
- ααΎαααΈαααααα α’αααα’αΆα αααααααααααΆαααααααΆααααα ααΆα ααααααααααΎααΆαααααα DNAT αα·αααααααααΆααααααΌαααααα ααΆα αααα
ααΆαααααααααΆα
α·αααααΎαααααΌααα
ααΎ GitHub αα
αααα»αααααΆαα Calico ααΆαααΆαααα·α
αααααααα‘αααα
ααααααααΆ ααααΆα 2016 α αΎααα½αααααΆαααααααα αααααααααααΆαααΆααααΆαααα»ααααααααΆααα»ααααααα»αααΆααααα
αααΆααααααΆαααααααΆα Kubernetes - αααααααΌαααΆααααα αΆαααΆα§ααΆα αααααααααααααααααααα·α
αααααααααΆααααααΆαααααααααααααααΆα
αααΎαααΆαα½α K8s ααΌα
ααΆ
αααααΆααααΆααααααα α’αααΈαααΊα’ααα
αΆααααα
ααΈαααα αααα»αααΆαααΆαααααααα·ααααααααα½ααα αααα»αα’αα·αααααα Calico ααΆααααα αΆαααΈααααΎαααΆαααΆααΆααΆααααα αααααααΎαααΆαααΆα 50000 αα»αααΊαααααΎααααΆαα 500 αααααΆαα’ααααΆαααααΎα 20 αα»ααααα»ααα½ααα·ααΆααΈα αα·αααΆααααα αΆααααΌαααΆααααααΆααααΆαα½αααΆαααααΎααΆαααααααΆαααα αααααααααααα
ααααααααααααα»αα’αα·αααααααΆαααΆαααα αα ααΆααΆααααααΆαααΆααα
αααα»ααααααααααΆαααααααα·αααααααΆαααααααααα K8s, OpenShift, OpenStack ααΆα’αΆα
ααααΎ Calico αα
αααααΆαααααααΆαα
ααααααααααααΎ
α αααΉαα αΆααααΆαα½α Calico
αααα»αααααΈααΌαα
ααααΆαααααΎααααΆαααααΆααΈα‘αΆ Kubernetes ααΆαααα‘αΎα CNI ααααΎααΆαααααΎααααΆααα―αααΆα calico.yaml
, kubectl apply -f
.
ααΆααααα½ααα½α αααααα αα α»αααααααααααααα·ααΈαααα½αααΊααααΌαααααΆααΆαα½ααααα 2-3 α α»αααααααααα»ααααα Kubernetesα ααααα·ααααα·ααΆααα αααα»αααααα αΆαααα·αααααΌαααΆαααΆααααα αα·ααα·αααααΌαααΆαααΆααΆααα αααααΆαα’αααα’αα·αααααα Calico ααααΎαααΆαααΎααΊαααααΈαα»α ααΎαααΈ 3.10 αααααααΎαααΆα CentOS 7, Ubuntu 16 α¬ Debian 8 αα ααΎααααΌα iptables α¬ IPVS α
ααΆαα―αααααα»αααα·ααΆααΆα
αααααΆααααΆααααααΉαααΌαα ααΌααααα‘ααααΎαααααΈααΆαααααα½α ααΎααααΈαααααΈααααααααααααΆααααααααΆααα αααα»ααααααΆαααααΆαα Calico αα»αααΈαααααααΆα αα·αααααααααα·ααΈααΆααααααααα»αααΆααααααΎαα αααΆααααααΎα±ααααΆαααΆααααα½αααααΆαα’αΆα αα·αααΆαααααααααααΆαααααααα ααΆαααααααααααααα½αααα
ααΆααααααα·ααΈαααααΆαα
ααα½α 2 αααααααΌαααΆαααΆαααααααΆααααα»αα
αααααα αα
αααα»α Node.js αα·α PHP ααααα½ααααα»αα
αααααααααααΎ Redis α ααΎααααΈαααααααΆααααΆαα
αΌαααααΎ Redis ααΈ PHP ααααααααααααααΆααΆαααααΆααααΆαα½α Node.js ααααΆααααα’αα»αααααααααΆαααααΆααααααα
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
name: allow-redis-nodejs
spec:
podSelector:
matchLabels:
service: redis
ingress:
- from:
- podSelector:
matchLabels:
service: nodejs
ports:
- protocol: TCP
port: 6379
ααααΆααααΎαα’αα»ααααΆαα±ααα ααΆα αα αΌααα ααΆααα ααα Redis ααΈ Node.js α α αΎαβααβα αααΆααβααΆβαα·αβααΆαβα αΆαβααΆααβα’αααΈβαααααβαααα αααΆαααΆ NetworkPolicy ααα α‘αΎα α’αααααααΎαααΎαααΆααα’αααααααΆααααααΆαααα αααα»αααΆα αΆααααααΎαααΆα ααααα‘αα ααΎααααααααΆαααΆααααααΆαααααααααΈαααα αααααΆαααΆαααΆααααα α αααΆααααΆα ααααα‘αααα·αα’αα»ααααα ααααααααα»ααααααααααααα·αααααΌαααΆααααααααααααααα§αααααααααΎαααΎαααα
α§ααΆα αααααααΎ apiVersion
Kubernetes α
ααααΈαααα’αα ααα»ααααααααΆαα’αααΈααΆααΆααα’αααααΈααΆαααααΎααααΆααααΆααα
apiVersion: crd.projectcalico.org/v1
kind: NetworkPolicy
metadata:
name: allow-redis-nodejs
spec:
selector: service == 'redis'
ingress:
- action: Allow
protocol: TCP
source:
selector: service == 'nodejs'
destination:
ports:
- 6379
ααααααααααΆααααααΆααααΆαααΎαααααΆααααΆαα’αα»ααααΆα α¬ααα·αααα
ααΆα
αααααΆααα’ααααΆαααα NetworkPolicy API ααααααΆααΆααα
ααΆααααααααααΆαα½αααΉαααααααα
αααααα·ααΆαααα αα·αα
αα
αΆαα αααα»αααααΈ Calico ααΎααααΈααααΆααααααΌααααααα·ααααΆααα
αααΆαααααααΆααααααΎααα
αααα»αααΊααααΆααααααααΆααααααΌα action: Allow
αα
ααΎ action: Deny
.
ααΆαα―αααααααα·ααααΆα
α₯α‘αΌαααααααααααΎαααααΆαααΆαααααααααα·ααΈαααααΎααααααΆααα’αΆααΈααααααααααΆααααΆααααααΌααααα»ααα αααα»α Prometheus αα·αααΆααα·ααΆααααααααααααααΎ Grafana α ααΆαα’αΆααα‘αΌαα’αΆα ααΆααα·αααααααααΎα αααα’αΆα ααΎαααΆααΆααΆααααααααααααΆαααααΆαααΎαα α αΌαβααΆααβαα·ααααααβαααβααΈβαααααβααΎαβαα α
ααΆααααα½ααα½α Prometheus ααααΌαααΆαααΆαααααα»αααα·ααΆααΆαααααΆααααααΆα
ααααα‘αα - αααα»αα§ααΆα αααααΆααΉαααΆαα
ααααααααααααΌα
αααα
apiVersion: v1
kind: Namespace
metadata:
labels:
module: prometheus
name: kube-prometheus
ααΆα metadata.labels
αααβααΆαβααααΆαβαα
βααΆβαα·αβααΆαβαααααααααΆααα ααΌα
αααααΆααααααΆααααΆαααΎα namespaceSelector
(ααααΌα
ααΆ podSelector
) ααααΎαααΆαααΆαα½αααααΆαα ααΌα
αααα ααΎααααΈα’αα»ααααΆαα±ααααααααααααΌαααΆαααα
ααααΈααααΆααα’αααα
ααΎα
αααααΆααααΆαααα½α α’αααααΉαααααΌαααααααααααααααααααΆααα½αα
ααα½α (α¬ααααΈααααα»αααααΆαααααΆαα) α αΎααααααΆααααα’αα»ααααααΆαααααααα
ααΆααααααααααΌα
ααΆα
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-metrics-prom
spec:
podSelector: {}
ingress:
- from:
- namespaceSelector:
matchLabels:
module: prometheus
ports:
- protocol: TCP
port: 9100
α αΎαααααα·αααΎα’αααααααΎαααααΆααα Calico ααΆαααααααααααααΉαααΌα αααα
apiVersion: crd.projectcalico.org/v1
kind: NetworkPolicy
metadata:
name: allow-metrics-prom
spec:
ingress:
- action: Allow
protocol: TCP
source:
namespaceSelector: module == 'prometheus'
destination:
ports:
- 9100
ααΆααΌαα αααααΆαααααααααααααααΆαααααααααΆααααααααααΆαααααααΌαααΆαααΆααααΆαα α’αααα’αΆα ααΆαααΆααααααΆααααΉαααΆααααααααααααααααΆααααα·αα’αΆααααα α¬ααΆααααααααααααααα ααααααα αααα»αααααα·ααααα·ααΆααααααααα·ααΈαα αααα»αα αααααα
ααΆαα’αα»ααααααα’αααα»α ααααα
ααΆαα’ααααααααΎα Calico ααΊαα·ααΈααΆααααα "αααααααΆααα’αααΈαααααααααΆα α αΎαααΎααααΆαα
αααΆααααΆααααΌαα’αααΈαααα’αααααααΌαααΆα" αααα
αααααααΆα―αααΆααα
αααα»α
ααΆαααααΎααααΆααααααα» Calico αααααα
αααα»αααΌαααααΉαα’αααααΆ ααΆαααααααα»ααααααααα Calico APIs α’αααα’αΆα
αααααααααααΆαα’αΆα
ααααΆααα nodes αα·ααααααα
αααα pods αααααα αααα»αα§ααΆα αααααΆαααααααααααααΎ GlobalNetworkPolicy
αααααααΆααααα»αααΆαααααααΆααααααΎ ICMP αα
αααα»αα
αααααααααΌαααΆααα·α (α§ααΆα ααα pings ααΈ pods αα
node αααΆα pods α¬ααΈ node αα
IP pod)α
apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
name: block-icmp
spec:
order: 200
selector: all()
types:
- Ingress
- Egress
ingress:
- action: Deny
protocol: ICMP
egress:
- action: Deny
protocol: ICMP
αααα»αααααΈααΆαααΎ ααΆαα
ααα’αΆα
ααααΎαα
ααΆααααααΆααααααΆααα
αααααααΎααααΈ "ααΆαααα" ααααΆαα
αα·ααα
ααααΆαααα ICMP α α αΎααααα αΆαααααααΌαααΆααααααααΆαααααααααααΆα GlobalNetworkPolicy
α’αα»ααααα
ααααα’αααααΆα HostEndpoint
:
apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
name: deny-icmp-kube-02
spec:
selector: "role == 'k8s-node'"
order: 0
ingress:
- action: Allow
protocol: ICMP
egress:
- action: Allow
protocol: ICMP
---
apiVersion: crd.projectcalico.org/v1
kind: HostEndpoint
metadata:
name: kube-02-eth0
labels:
role: k8s-node
spec:
interfaceName: eth0
node: kube-02
expectedIPs: ["192.168.2.2"]
ααααΈ VPN
ααΆα α»αααααα αααα»αααΉααααααα§ααΆα αααααΆαααααααααααΆαααααΎααααΆαααα»αααΆα Calico αααααΆααααααΈααα’αααααααααα·αα ααααα αα αααααααααα»ααααααΆααααααααααΆααα·ααααααααααΆααα ααΎααααΈα αΌαααααΎαααααα·ααΈααα ααααα α’αα·αα·ααααααΎααααΌαααΌααααααααΈ VPN α αΎαααΆαα αΌαααααΎαααααααΌαααΆαααααααααααααΆαααΉααααΉα αα·ααααααα αααααααααΈααΆααααΆααααααααΆαααααααααααΌαααΆαα’αα»ααααΆααααααΆααααααΎααααΆααα
α’αα·αα·ααααααΆαααα
VPN ααΆααααα
ααα UDP αααααααΆα 1194 α αΎααα
αααααααΆαα ααα½αααααΌααα
ααΆαααααααΆααααααα αα·αααααΆααααα αααααΆαααααΆααααΌαααααΌαααΆααα»α ααΎααααΈαα»αα±ααααΆαααααααααΆααααααα‘α»ααααα
αΆααααααΎαα‘αΎααα·α αα·αααΆαααααΆααααααΌαα’αΆααααααΆαα
α ααααα αααα»αααΆαααααααα ααΆααααααααααΊαααααααΆα αααααΆααα ααα»α αα½αα ααα½αααΎααααΎαααΆαααααΆαααααααα ααΆαααααααααααααα·ααΈ αα·ααααααααΆαα αααα»α Kubernetes α α§ααΆα ααα αα αααα»α AWS LoadBalancer ααΌα ααααΆαααααΆαα UDP ααΆααααα αΆααααα½αααΆααααααααααα α α»αααααΆααα»ααα αααα»ααααααΈααααααααααΆαααααα α αΎα NodePort αα·αα’αΆα ααααΎααααΆααααΆααααααααΆαααααΆααααααΌαααααααααααΆαα ααΎααααΆααα αααααααΆααα’αα α αΎαααΆαα·αα’αΆα αα αα½α αααααα»αααΆαααααΎααΆαααααααΆαα ααα½αααααααΈαααΆαααΈααααααααΆαα αααααααααααΆαα’ααα±αααα α»αα ααΎαααΈααα α’αααααΉαααααΌαααααΆααααααΌααα½αααααΆαααΎαααα ααα...
ααΆααααααααααΆααααααααααΆαααααααααααααΆααααα’αΆα ααΆα ααΆαααααααααααααΌαααΆαααααΎαααΎαα
- Pods ααΆαα½α VPN ααααΌαααΆααααααααααααα»ααα½α node αααα»α
hostNetwork
αααααΊαα IP αα·αααααΆααα - ααααΆαααααααΌαααΆααααα αααα
ααΆααααα
ααΆαααα
ClusterIP
. α ααααα½αααααΌαααΆαααα‘αΎααα ααΎααααΆαααααα’αΆα α αΌαααΆαααΈααΆααααα ααΆαα½αααΉαααΆαααααα·α αα½α (ααααααΆαααΆαααααααααααα’αΆααααααΆα IP αα·αααααΆαα) α - ααΆαβαααααβααααΆααβαααβααααΆβααΈαβα α½αβααΈβαα·ααΆαααΆαβααβααΏαβααααβααΎαα αααα»αααΉααα·ααΆαααΆα’αααα’αΆα "ααααΆαα" ααααΆαααααααΆαααΉααααΉααα ααΉαααααΆααα¬αααααααααΆααααααααααααΌα αα½ααααααΉααααα½ααα·αα·αααα’αΆααααααΆα IP αα αα α»ααααααααααααΆαααα VPN αα·αααααααα½ααααααααααΆ DNS αααααΆαα α»ααααααααΆαα½αα’αα·αα·αα - α’ααααααααΆαααΆααααααΎαααααααααααααααΆααα
ααΆαααααααααααΌα ααΎαα’αΆα αααααα’ααααααααΆααααΆαααΈαααααα VPN αααα’αΆααααααΆα IP ααααααΆα ααααααααΆαααΈααα VPN α ααΆαααααααααααΊααΆα§ααΆα αααααααΌαααααΆαααΆααααααα·αααΆαα αΌαααααΎααααΆααααααΆααααααααα’αα·αα·αααααααα αααααΆααααα αΆααα ααΎ Redis αααααΆααααααΆααααΆαααΎα
apiVersion: crd.projectcalico.org/v1
kind: HostEndpoint
metadata:
name: vpnclient-eth0
labels:
role: vpnclient
environment: production
spec:
interfaceName: "*"
node: kube-02
expectedIPs: ["172.176.176.2"]
---
apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
name: vpn-rules
spec:
selector: "role == 'vpnclient'"
order: 0
applyOnForward: true
preDNAT: true
ingress:
- action: Deny
protocol: TCP
destination:
ports: [6379]
- action: Allow
protocol: UDP
destination:
ports: [53, 67]
αα ααΈααα ααΆαααααΆαααα ααΆααα ααα 6379 ααααΌαααΆαα αΆαααΆαααααΆαααΉααααΉα ααα»αααααα αααααΆαα½αααααΆααα ααααα·ααααα·ααΆαααααααΆαααα DNS ααααΌαααΆααααααΆ ααααΎαααΆαααααααααααα½ααααα ααααααααΎαα αααΆααα ααΈααααα ααΌα αααααΆααααααΆααααΈαα»α αα αααα’αααααααΎαααΎααα½αααα α‘αΎα αααααΆαααααα·αααααααΆαααΎαααααΌαααΆαα’αα»ααααα ααααααΆ ααΎααααααααΆαααΆααααααΆααααααααααα
αααααα
ααΌα αααα αααααααΎ API ααααα·αααααααααα Calico α’αααα’αΆα ααααααα ααΆαααααααααααααΆααααααα αα·αααααΆααααααΌααα·ααα αααα»α αα·ααα»ααα·αα αααααα ααΆααΌαα ααΆαααααΎααααΆααααααααΆααΎααα ααΌα ααΆααΆααα αΆααααααΆαα»αααΆαα α αΎαααΆαα’αα»αααααααααΆα L3 ααΆαα½αααααΌαααΌααααααααΈ BGP αα·α IP-IP ααΎααα α’ααα αΆααααααα»αααΆαααα‘αΎα Kubernetes ααΆαααααα ααΎαααααΆαααΆαααααΎ... αααααΆαααΆαααΆααααα α§ααααααααααΎααα α’αΆα ααααΎαααΆαααΆα αα·αααΆαααααααααα .
ααΆαααααΆα αα αααααααΎααααΈαααααααΆααααααΌαααΆααα»ααααα·ααΆααααα ααααΆαα·ααααααα’αΆα ααααΎαα ααΆααα α αΎααααααΊααΆααααααααα Calico (α¬αααααααααΆαααααααααααΆ) αααα½αααααααααα α§ααΆα ααααααααΆααααααα±αααα αααα»αα’αααααααα (ααΆαα½αααΉαααΆααααααααα·α αα½α ) ααααΌαααΆαααααΎαα αααα»αααΆαααα‘αΎαααΆα αααΎαααα’αα·αα·ααααααααΎααα αααα»α AWS α
PS
ααΌαα’αΆαααααααα ααΎαααααααααααΎαα
- Β«
ααΆαααααΆαα’αααΈαααααΆααααααααΆα Kubernetes αααααΆααα’αααααααΆαααααααα»ααααα·ααΆα Β» - "ααααα»αααααααααααΌαααΎαααααΆααα
αααα»α Kubernetes"α
αααααααΈ 1 αα·αααΈ 2 (ααααΌαααααΆα αααααΆααααα½αααΎααααΆ) ,αααααααΈ 3 (ααααΆαααα αα·αααααΎαααΆαα ααΆα ααα) ; - Β«
α ααα»α αααααΆαααααααΆααα»αααΊααα (CNI) - α ααα»α αααααΆαααααααΆααα·ααααααααΆααααααΆαααα»αααΈαα»α "α
ααααα: www.habr.com