áá»áœááºá¯ááºááá¯á·á Kubernetes á¡ááŒááºá
áááºá
á®ážáá®ážááŸááŒáá¯ááá¯áá«áááºá á€áááºááŸá¬ áá»áœááºá¯ááºááá¯á·á¡áœááºááá¯ááºážááŸáá·áº áá»áœááºá¯ááºááá¯á·ááááºáááºážáá»á¬ážááœáẠáááºáá¶áááŸáááá·áº á
áááºáááºá
á¬ážá
áá¬á¡áá±á¬ááºážáá¯á¶ážáá±ážááœááºážáá»á¬ážáá«ááŸááá±á¬ áá¯á¶ááŸááºáá±á¬áºáá¶áá
áºáá¯ááŒá
áºáááºá Kubernetes áá»áœááºážáá»ááºáá° á¡ááŒá±áá»á¬ážá
ááá±á·áá±ááºááá¬ááŸááºááẠDaniel Polenchik (
Daniele Polencic ) Daniel ááŸá¬ áááºážááŒááá¬áá²á· áá±á¬á·ááºáá² developer á¡ááŒá Ạá¡áá¯ááºáá¯ááºáá«áááºáLearnk8s .
áááºážáá²á·áá±ážááœááºážááᯠáá±á¬ááºááá¯á·á
áºááŸá¬ ááŒá±áá»ááºáááºá
ááááºááá¯á·á
áºáá»á¬ážááᯠááœááºááœá¬ážáá«ááá¬ážá
ááá°áá®áá±á¬áá±áá¬á ááºáá¬áá»á¬ážááœáẠKubernetes á¡á á¯á¡áá±ážáá»á¬ážááᯠáááºááá¯á·áá»áááºáááºááááºáááºážá
á¡ááá¯áá»á¯ááº:
Kubefed v2 áááŒá¬áá®áá¬áááºá , ááŸáá·áºáá«áááºáááºážá¡ááŒá±á¬ááºážáááºáááºá¡ááŒá¶ááŒá¯áá«áááºááááºá¹áá±á¬áááºáᰠОmulti-cluster-scheduler ááá±á¬áá»áẠ.
áááŒá¬ááááá¯áááá¯á á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶áá»á¬ážááᯠááá°áá®áá±á¬áá±ááá»á¬ážáá áºáá»áŸá±á¬ááºá á¡áá°ážáááŒáá·áº ááááºážáá»á¯ááºáá¬ážáá±á¬áááºáááºážáá»ááºáá»á¬ážááœáẠáá¯á¶áá°áá°ážáá»áá¬ážáá«áááºá
á¡áááºá áá±ááá áºáá¯á០ááááŸáááá¯ááºáá«á á¡ááŸá±á¬áá·áºá¡ááŸááºáá»á¬ážááᯠááŸá±á¬ááºááŸá¬ážááẠá¡ááŒá¬ážáá áºáá¯ááá¯á· áááºážááŒá±á¬ááºážááŒá±á¬ááºážááœá¬ážáááºááŒá áºáááºá
Kubernetes ááŒáá·áº áááºááẠá¡áá¬ážáá°áááºážáá»á°áá¬ááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž ááá°áá®áá±á¬ áá±ááá»á¬ážáá áºáá»áŸá±á¬áẠá¡áá¯ááºáá»áááºáá»á¬ážááᯠááŒáá·áºáá±ááá¯ááºáááºá
á¡ááœá²á·á áá±áá áááºáááºážáá»ááºá ááá¯á·ááá¯áẠá€ááŒááºá ááºáá»á¬ážá áá±á«ááºážá ááºááŸá¯áá áºáᯠááá¯á·ááá¯áẠáá áºáá¯áááºááá¯áá±á¬ á¡á á¯á¡áá±ážáá»á¬áž ááá·áºááœáẠááŸáááá¯ááºáá«áááºá
áááºá á¡á á¯á¡áá±ážáá»á¬ážááᯠááá°áá®áá±á¬ ááááºááá¯ááºáá»á¬ážááŸáá·áº áá¯ááºá¡ááœááºážááœáẠáááºáá¶áá»ááºážáááá¯ááºáá«áááºá
ááá¯á·áá±á¬áº ááá¯áá²á·ááá¯á·áá±á¬ áááá®áááºááŒáá·áºááœá¬ážááŸá¯á¡ááœáẠá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááᯠáááºáááºáá²á·ááá¯á· á
á®á
ááºááááºážá
ááœááºáááºáá
áºáá¯áááºážááŸá cloud áááºáááºážáá»ááºáá»á¬ážá
áœá¬á¡ááœáẠááŒá®ážáá¬ážáá±á¬á¡á
á¯á¡áá±ážáá
áºáá¯ááᯠáááºáá®ážááẠááá¯á¡ááºáá«ááá¬ážá
ááá¯á·ááá¯áẠáá±ážáááºáá±á¬á¡á
á¯á¡áá±ážáá»á¬ážá
áœá¬ááŸáá áááºážááá¯á·ááᯠááááºážáá»á¯ááºááŒá®áž áá
áºááŒáá¯ááºáááºážáá¯ááºáá±á¬ááºááẠáááºážáááºážááŸá¬áá«ááá¬ážá
áá±á«ááºážáá±á¬ááºááŸá¯á¡á á¯á¡ááœá²á·áá áºáá¯
ááœááºáááºáá áºáá¯áááºážááœáẠá¡á á¯á¡ááœá²á·áá áºáá¯áááºáá®ážááŒááºážááẠááœááºáá°áááºááá¯ááºá
ááá·áºááœáẠááá±á¬áºááááŸá¯áá áºáá¯ááŸááá±áááºáᯠááŒááºáá±á¬ááºááŒáá·áºáá«á á¡á á¯á¡ááœá²á·áá»á¬ážááŒá¬áž áá»áááºáááºááŸá¯ ááŒááºáá±á¬ááºááœá¬ážáááºá
ááá·áºááœáẠáá¬á áá¬áá¬áá¬áá áºáá¯ááŸááá«áá á¡áááºážá¡ááŒá áºáá»á¬ážá áááºáááºááẠáá¬á áá¬ááᯠáááºááœááºááá¯ááºáááºááá¯ááºáá±á¬ááŒá±á¬áá·áº á¡áááá·áºá¡áá áºáá»á¬ážááᯠáááºáá¶áááŸááááºááá¯ááºáá«á
áá
áºáá»áááºáááºážááŸá¬ááẠááá·áºááœáẠáááºážááŒááá¬ážáá±á¬ááºážáá»á¬áž ááŸáááẠ(kube-proxy
á¡áá
áºáá»á¬ážááᯠáá±á«ááºážáá¯ááºáá¯ááºááááá«) ááŸáá·áº áá±á¬ááºááẠpods áá»á¬ážáááŸááá« (kubelet ááẠá¡ááºááááºáá»á¬ážááᯠáá±á¬ááºážááá¯ááááá«)á
ááá¯ááá¯ážáááºááŸá¬á Kubernetes ááẠnode áá áºáá¯ááᯠáááœá±á·áá«áá áááºážááẠáááºážááᯠááááá²á·á¡ááŒá Ạá¡ááŸááºá¡áá¬ážááŒá¯ááŒá®áž áá»á±á¬ááºáá¯á¶ážáá±áá±á¬ pods áá»á¬ážááᯠáááºááŸá node áá»á¬ážááá¯á· ááŒáá·áºáá±áá±ážáá«áááºá
ááááºá¡áá±áá²á· ááá·áºááŸá¬ á¡á á±á·ááŸá áºááá»á¬ážáá«áááºá
á¡áááºá áááºááẠáá±ááá áºáá¯á á®á¡ááœáẠáá¬á áá¬áá¬áá¬áá áºáá¯ááᯠááŒá¯áá¯ááºáá«áá etcd áá±áá¬áá±á·á áºááœáẠá¡áá»á¬ážááá¹á á¡ááºáááá¯áá®áááºááŸáá·áº ááŒá¿áá¬áá»á¬ážááŸááááá·áºáááºá (á¡áá®ážá ááºáá¯á¶áž ed - ááááºáá±á¬á·á etcd áá±áá¬áá±á·á áºááẠáá¬á áá¬áá¬áá¬áá»á¬ážáá±á«áºááœáẠáááºááŸááá±ááẠáááá¯á¡ááºáá«á áááºážááᯠáá°áá®áá±á¬áá±áááŸá áá®ážááŒá¬ážáá¬áá¬á¡á¯ááºá á¯áá áºáá¯áá±á«áºááœáẠáá¯ááºáá±á¬ááºááá¯ááºáááºá áá áºáá»áááºáááºážááŸá¬ááẠá¡á á¯á¡ááœá²á·á ááŸá¯á¶ážáááá·áºááŸá¯á¡ááŸááºááᯠáááŸáááŒááºážááŸá¬ ááŸááºáá«áááºá áá«áá±ááá·áº ááŒááºááŒááºá)
etcd á¡áá¯á¶ážááŒá¯áááºá
ááá¯ááá¯áááºááŸá¬á áá¬ááá¡áá»á¬ážá
á¯ááẠááŒááºáááºááᯠetcd ááá¯á· á
á¬ááá±ážáá®ááœáẠá¡áá»á¬ážááá±á¬ááá¹áááᯠáá¶áá°ááááºááŒá
áºáááºá
etcd instances áá»á¬ážááŒá¬ážááœáẠlatency áááááá¬áá¬ááá¯ážáá¬áá«áá ááá°áá®áá±á¬áá±ááá»á¬ážááŸá etcd instances áá¯á¶ážáá¯áá²á·ááá¯á·á value áá
áºáá¯ááŸáááŸáá¯ááºážááŒá®áž disk ááœááºáá±ážááẠá¡áá»áááºá¡áá±á¬áºááŒá¬áá«áááºá
áááºážááẠKubernetes ááááºážáá»á¯ááºáááááá¬áá»á¬ážááœáẠáááºáááºáá±áááºá
ááááºážáá»á¯ááºáá°áááºáá±áá»á¬ááẠá¡ááŒá±á¬ááºážá¡áá²á¡ááŒá±á¬ááºáž áá±á·áá¬áááºááŸáá·áº áá±áá¬áá±á·á áºááá¯á· áá¯á¶á·ááŒááºááŸá¯ááᯠáá±ážáá¬ážááẠá¡áá»áááºááá¯ááá¯á¡ááºáááºá
controller áá áºáá¯ááŸáááŸááá±ááá·áº áá±á¬áºáá±á¬áºáá»á¬ážáá»á¬ážá ááœááºážáááºáá¯á¶á·ááŒááºááŸá¯ááááºáá»á¬ážááŸáá·áº á¡á á¯á¡áá±ážáá áºáá¯áá¯á¶ážááẠá¡ááœááºááŸá±ážááœá±ážá áœá¬ á¡áá¯ááºáá¯ááºáá«áááºá.
etcd ááẠá¡ááœáẠlatency á¡ááááá¶ááá¯ááºáá±á¬á¡áá»ááºááŒá
áºáááºá
áááºááŸáááœáẠá¡á á¯á¡ááœá²á·áá áºáá¯á¡ááœáẠááŒá®ážáá¬ážáá±á¬ááœááºáááºá ááá°áá¬áá±á¬ááºážáá»á¬áž áááŸááá«á
á¡ááŒá±áá¶á¡á¬ážááŒáá·áºá developer á¡ááá¯ááºážá¡ááá¯ááºážááŸáá·áº SIG-cluster á¡ááœá²á·ááá¯á·ááẠKubernetes ááœááºááááºáá¬áá»á¬ážááᯠá á¯á ááºážáá¬ážááá·áºáááºážá¡ááá¯ááºážááẠá¡á á¯á¡áá±ážáá»á¬ážááᯠáááºááá¯á·á á®á ááºááááºááᯠááŸá¬ááœá±áá±á¬áºáá¯ááºááẠááŒáá¯ážá á¬ážáá±ááŒáááºá
ááœá±ážáá»ááºááŸá¯ 1- kubefed ááŒáá·áº á¡á á¯á¡ááœá²á· áááºááááº
SIG-cluster ááŸááá¬ážáááºáá¯á¶á·ááŒááºáá»áẠ-
áááá¡ááŒáááºá áá»áœááºá¯ááºááá¯á·ááẠkube áááºááááºáá°ážááºááᯠá¡áá¯á¶ážááŒá¯á áá áºáá¯áááºážáá±á¬á¡áá¬áá áºáá¯á¡ááŒá Ạá¡á á¯á¡áá±ážáá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááẠááŒáá¯ážá á¬ážáá²á·áááºá
á áááºááŒááºážááŸá¬ áá±á¬ááºážááœááºáá±á¬áºáááºáž á¡áá¯á¶ážááœáẠKube á¡ááœá²á·áá»á¯ááºááẠá¡áááºážá¡ááŒá áºá¡á¬ážáá¯á¶ážááᯠááá¶á·ááá¯ážááá¯ááºáá±á¬ááŒá±á¬áá·áº áá±áááºážá á¬ážáá¬áá²á·áááºá
áááºážááẠáááá¯ááœá²áá±ááá¯á·áá±á¬ááºáá±ážááŸáá·áº áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáá±á¬áºáááºáž á¥ááá¬á¡á¬ážááŒáá·áº StatefulSets ááá¯ááºáá«á
ááá¯á·á¡ááŒááºá á¡ááœá²á·áá»á¯ááºááœá²á·á
ááºážáá¯á¶ááœá²á·á
ááºážáá¯á¶ááᯠááŸááºáá»ááºáá»á¬ážáá¯á¶á
á¶ááŒáá·áº áá¯ááºááœáŸáá·áºáá²á·ááŒá®áž ááá¯ááºáá»á±á¬áá®ááœá±áááŒá
áºáá«á
ááŸááºáá»ááºáá»á¬ážááá¯áá¬á¡áá¯á¶ážááŒá¯á á¡á á¯á¡ááœá²á·áá áºáá¯á á®ááŸá á¡á á¯á¡ááœá²á·áá áºáá¯á á®á¡ááœáẠáá¯á¶áá°á¡ááá¯ááºážááœá²ááŒááºážááᯠáááºáááºááá¯á·áá±á¬áºááŒááá¯ááºáááºááᯠá áááºáá°ážááŒáá·áºáá«á
ááŒá®ážááŒáá·áºá á¯á¶áá±á¬ á¡ááŸá¯ááºá¡ááœá±ážááŒá áºáá²á·áááºá
SIG-cluster ááẠkubefed v1 ááŒá®ážáá±á¬áẠá¡áá¯ááºáá»á¬ážá áœá¬áá¯ááºáá²á·ááŒá®áž ááá°áá®áá±á¬áá±á¬áá·áºá០ááŒá¿áá¬ááá¯áá»ááºážáááºááẠáá¯á¶ážááŒááºáá²á·áááºá
ááŸááºáá»ááºáá»á¬ážá¡á á¬ážá á¡á á¯á¡áá±ážáá»á¬ážáá±á«áºááœááºáááºáááºáá¬ážááá·áº ááááºážáá»á¯ááºáááááá¬ááᯠáá¯ááºááœáŸááºááẠáá¯á¶ážááŒááºáá²á·áááºá Custom Resource Definitions (CRDs) ááᯠá¡áá¯á¶ážááŒá¯á á áááºááŒáá¯ááºááŒááºáááºááá¯ááºáááºá
á¡ááœá²á·áá»á¯ááºá á¡á áááºá¡ááá¯ááºážááŒá áºááá·áº á¡áááºážá¡ááŒá áºáá áºáá¯á á®á¡ááœááºá á¡ááá¯ááºážáá¯á¶ážááá¯ááºážáá«áá±á¬ á áááºááŒáá¯áẠCRD á¡áááá¹áá«ááºááœáá·áºááá¯áá»ááºáá áºáᯠááŸááááº-
- á¡áááºážá¡ááŒá áºáá áºáá¯á á á¶áááºááŸááºáá»ááºá á¥ááᬠá¡áá¯á¶ážáá»ááŒááºážá
- á¡ááá¯ááºáž
placement
áááºááááºááœáẠá¡áááºážá¡ááŒá áºáá»á¬ážááᯠáááºááá¯á·ááœá²áá±áááºááᯠáááºáááºááŸááºááá·áºáá±áá¬ááœááºá - á¡ááá¯ááºáž
override
áááá»áá±á¬á¡áááºážá¡ááŒá áºáá áºáá¯á¡ááœáẠáá±áá¬áá»áá¬ážááŸá¯á០á¡áá±ážáá»áááºááŸáá·áº ááá·áºáááºáá»ááºáá»á¬ážááᯠá¡á á¬ážááá¯ážááá¯ááºáááºá
á€áááºááŸá¬ áá±áá¬áá»áá¬ážááŒááºážááŸáá·áº áááºáá±ážááá·áºá¡ááá¯ááºážáá»á¬áž áá±á«ááºážá ááºáá±ážááá¯á·ááŒááºážá á¥ááá¬áá áºáá¯ááŒá áºáááºá
apiVersion: types.federation.k8s.io/v1alpha1
kind: FederatedDeployment
metadata:
name: test-deployment
namespace: test-namespace
spec:
template:
metadata:
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- image: nginx
name: nginx
placement:
clusterNames:
- cluster2
- cluster1
overrides:
- clusterName: cluster2
clusterOverrides:
- path: spec.replicas
value: 5
áááºááœá±á·ááŒááºáááá·áºá¡ááá¯ááºážá áá±á¬ááºáá¶á·ááŸá¯ááᯠá¡á
á¯ááŸá
áºáá¯ááœáẠááŒáá·áºáá±áááº- cluster1
О cluster2
.
áááá¡á á¯ááẠáá¯á¶á á¶áá° á áá¯ááᯠáá±á¬ááºáá¶á·áá±ážááŒá®áž áá¯áááá¡á á¯ááẠá áᯠáááºááŸááºáá¬ážáááºá
áá¯á¶áá°á¡áá±á¡ááœááºááᯠááá¯ááá¯ááááºážáá»á¯ááºááá¯áá»áŸáẠkubefed2 ááẠáá¯á¶áá°áá»á¬ážááᯠáá»áááºááœááºááá¯ááºááá·áº ReplicaSchedulingPreference object á¡áá áºááᯠáá¶á·ááá¯ážáá±ážáááº-
apiVersion: scheduling.federation.k8s.io/v1alpha1
kind: ReplicaSchedulingPreference
metadata:
name: test-deployment
namespace: test-ns
spec:
targetKind: FederatedDeployment
totalReplicas: 9
clusters:
A:
weight: 1
B:
weight: 2
CRD ááœá²á·á ááºážáá¯á¶ááŸáá·áº API ááẠá¡áááºááá·áºáááŒá áºáá±ážáá²á ááá¬ážáááºááá±á¬áá»ááºááá¯ááŸá±á¬ááºááŸá¯ááœáẠáááºááŒáœá áœá¬áá¯ááºáá±á¬ááºáá±áá«áááºá
kubefed2 ááᯠá á±á¬áá·áºááŒáá·áºáá«á ááá¯á·áá±á¬áº áááºážááẠáá¯ááºáá¯ááºáááºá¡ááœáẠáááá·áºáá»á±á¬áºáá±ážááŒá±á¬ááºáž áááááá«á
kubefed2 áá¶á០ááá¯ááá¯áá±á·áá¬áá«á
ááœá±ážáá»ááºááŸá¯ 2- Booking.com á ááá¯ááºááœáẠá¡á á¯á¡áá±ážáá»á¬ážááᯠáá±á«ááºážá ááºááŒááºážá
Booking.com á developer áá»á¬ážááẠkubefed v2 ááœáẠá¡áá¯ááºááá¯ááºáá±á¬áºáááºáž áááºážááá¯á·ááẠá¡á á¯á¡áá±ážáá»á¬ážá áœá¬á áá±áá¡áá»á¬ážá¡ááŒá¬ážááŸáá·áº cloud á¡áá»á¬ážá¡ááŒá¬ážááœáẠáá±ážááá¯á·áááºá¡ááœáẠá¡á±á¬áºááá±áá¬áá áºáá¯ááŒá áºááá·áº Shipper ááŸáá·áº áá±á¬ááºááŸááá¬áá«áááºá
áááááá¬ááŸá áºáá¯áá¯á¶ážááẠááá·áºá¡á¬áž áááºá á¡á á¯ááá¯ááºá¡áá»á¬ážá¡ááŒá¬áž ááŒáá·áºáá»ááºááŸá¯áá»á°áá¬ááᯠá áááºááŒáá¯ááºááŒááºáááºááá¯ááºá á±ááẠ(á¡á á¯á¡áá±ážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž áááºážááá¯á·ááœáẠáá¯á¶áá°áááºáá»áŸááŸááááº)á
áá«áá±áá²á· Shipper ááááºááŸááºážáá»ááºááŸá¬ ááá¯á·áá±á¬ááºá ááºá¡ááœááºáž á¡ááŸá¬ážá¡ááœááºážáá»á¬ážááŒá áºááá¯ááºáá»á±ááᯠáá»áŸá±á¬á·áá»áááºááŒá áºáááºá
Shipper ááœááºá áááºááẠááááºááŸáá·áº áááºááŸáááŒáá·áºáá»ááºááŸá¯ááŸáá·áº á¡áááºá¡ááœá¬ážá¡áá¬ááá¬áá¡ááŒá¬áž áá¯á¶áá°áá¯á¶áá°áá»á¬áž ááá¯ááºážááŒá¬ážááŸá¯ááᯠáá±á¬áºááŒááá·áº á¡ááá·áºáá»á¬ážá áœá¬ááᯠáááºááŸááºááá¯ááºáááºá
á¡áááºážá¡ááŒá áºáá áºáá¯á¡á¬áž á¡á á¯á¡áá±ážáá áºáá¯ááá¯á· ááœááºážááá¯ááºáá±á¬á¡áá«á Shipper controller ááẠáá»áááºáááºáá¬ážáá±á¬ á¡á á¯á¡áá±ážáá»á¬ážá¡á¬ážáá¯á¶ážááœáẠááá¯ááŒá±á¬ááºážáá²ááŸá¯ááᯠááŒááºážááŒááºážáá»ááºáž áá¯ááºááŒáá«áááºá
ááá¯á·á¡ááŒáẠShipper ááẠá¡ááœááºá¡ááá·áºá¡áááºááŸááááºá
á¥ááá¬á¡á¬ážááŒáá·áº, áááºážááẠinput á¡ááŒá
Ạáá²á·á
ááºááá¬ážáá»á¬ážááᯠáááºáá¶áááºá vanilla á¡áááºážá¡ááŒá
áºáá»á¬ážááᯠááá¶á·ááá¯ážáá«á
áá±áá¯áá»á¡á¬ážááŒáá·áº Shipper ááẠá€áá²á·ááá¯á·á¡áá¯ááºáá¯ááºáááºá
á á¶ááŸá¯ááºážáá±ážááá¯á·ááŒááºážá¡á á¬áž Helm ááá¬ážáá«áááºááá·áº á¡ááá®áá±ážááŸááºážáááºážááŒá áºááᯠáááºáá®ážááẠááá¯á¡ááºáááº-
apiVersion: shipper.booking.com/v1alpha1
kind: Application
metadata:
name: super-server
spec:
revisionHistoryLimit: 3
template:
chart:
name: nginx
repoUrl: https://storage.googleapis.com/shipper-demo
version: 0.0.1
clusterRequirements:
regions:
- name: local
strategy:
steps:
- capacity:
contender: 1
incumbent: 100
name: staging
traffic:
contender: 0
incumbent: 100
- capacity:
contender: 100
incumbent: 0
name: full on
traffic:
contender: 100
incumbent: 0
values:
replicaCount: 3
Shipper ááẠá¡á á¯á¡áá±ážáá»á¬ážá áœá¬ááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠáá±á¬ááºážááœááºáá±á¬ááœá±ážáá»ááºááŸá¯áá áºáá¯ááŒá áºáá±á¬áºáááºáž Helm ááŸáá·áº áááºážááááºážááŸá®ážáá±á¬áááºáá¶áá±ážááẠáááºážááœááºáá¬ááŸááááºá
áá«ááá¯á·á¡á¬ážáá¯á¶áž Helm ááá¯ááŒá±á¬ááºážááẠáá¬ááŒá
áºááá²á
Shipper á¡ááŒá±á¬ááºážááŸáá·áº áááºážááá¶áá°áá»ááºááᯠááœááºááá¯ááá¯ááŸá¬ááœá±áá«á
áá¯ááºáá°ážáá»ááºáááºá
ááœá±ážáá»ááºá áᬠ3- "ááŸá±á¬áº" á¡á á¯á¡áá±ážááᯠáá±á«ááºážá ááºážááŒááºážá
Kubefed v2 ááŸáá·áº Shipper ááá¯á·ááẠá áááºááŒáá¯ááºá¡áááºážá¡ááŒá Ạá¡áááá¹áá«ááºááœáá·áºááá¯áá»ááºááŒáá·áº á¡á á¯á¡ááœá²á·áá»á¬ážá¡ááœáẠá¡áááºážá¡ááŒá áºá¡áá áºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáᬠá¡á á¯á¡ááœá²á·áá»á¬ážá¡ááœá²á·áá»á¯ááºááŸáá·áº á¡áá¯ááºáá¯ááºáá«áááºá
ááá¯á·áá±á¬áº áá±ážááá¯á·ááŸá¯áá»á¬ážá StatefulSetsá DaemonSets á¡á ááŸááááºááá¯á·ááᯠáá±á«ááºážá ááºážááẠáá±ážááá¯á·ááŸá¯á¡á¬ážáá¯á¶ážááᯠááŒááºáááºááá±ážááá¯áá»áŸááºáá±á¬á
YAML ááá¯áááŒá±á¬ááºážáá²áá² á¡ááœá²á·áá»á¯ááºáá áºáá¯ááœáẠááŸáááŒá®ážáá¬ážá¡á á¯á¡áá±ážáá áºáá¯ááᯠáááºááá¯á·ááá·áºááœááºážááááºáááºážá
ááá¯á·áá±á¬áº á áááºááŒáá¯ááºá¡áááá¹áá«ááºááœáá·áºááá¯áá»ááºáá»á¬ážááœáẠá¡á á¯á¡á ááºážáá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºá¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááẠáááºážáááºážá¡áá áºááŒáá·áº ááœááºáá±á«áºáá¬ááá·áºá¡á á¬ážá á¡á á¯á¡áá±áž-á¡áá»áááºááá¬ážáá±á«ááºážáá»á¬ážá áœá¬ááᯠá ᶠKubernetes áááá¶ááá¬ááœáẠááá·áºááœááºážáá¬ážááŒá®áž pods áááºáá®ážááá·áºáá±á«áºááá¯ááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠááŒá¬ážááŒááºáááºááŒá áºáááºá
áááºáá®ážáá¬ážáá±á¬ áá°ážáá áºáá¯á á®ááᯠá¡ááá¯ááºá á¬ážáá áºáá¯ááŸáá·áº áá»ááºáá»ááºážá¡á á¬ážááá¯ážáááºá
multi-cluster-scheduler ááá¯á¡áá¯á¶ážááŒá¯áááºá
áááºáá±á¬ááºááœááºážáá¶ááŸá¯á¡ááœáẠwebhooks áá±á«áºááá¯ááŸá¯ááá¯ááŒá¬ážááŒááºáááºááŸáá·áº idle dummy pod áá áºáá¯áááºáá®ážáááºá
áá°áá¡ááœá²á·ááẠá¡ááœá²á·áá»á¯ááºáá áºáá¯áá¯á¶ážááᯠáá²ááŸáá¯ááºááŒá®ážáá±á¬áẠáá±áá¬áá»áá¬ážáá±áž áá¯á¶ážááŒááºáá»ááºáá»ááá·áºáá±á¬áẠá¡á á®á¡á ááºááœá²ááá·áºá ááºááá¯ááºážááᯠááŒááºáááºážáááºá
áá±á¬ááºáá¯á¶ážááœáẠpod ááᯠáá áºááŸááºá¡á á¯á¡áá±ážááá¯á· ááá¯á·áá±á¬ááºáááºá
ááááºá¡áá±ááŒáá·áº ááá·áºááœáẠáá¬ááŸááá¯ááºááá¯ááºáá±á¬ á¡ááᯠpod áá áºáá¯ááŸááááºá áá±áá¬áá°áá¯á¶áá¬ááŒá áºáááºá
á¡á¬ážáá¬áá»ááºááŸá¬ áá±á¬ááºáá¶á·áá±ážáá á¹á ááºážáá»á¬ážááᯠáá±á«ááºážá ááºááẠá¡áááºážá¡ááŒá áºá¡áá áºáá»á¬áž áá±ážáá¬ážááẠáááá¯á¡ááºáá«á
pod áá áºáá¯ááᯠáááºáá®ážááá·áº á¡áááºážá¡ááŒá áºáá áºáá¯á á®ááẠá¡ááá¯á¡áá»á±á¬áẠáá±á«ááºážá ááºážááẠá¡ááá·áºááŒá áºáá±áá«ááŒá®á
á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº ááá·áºááœáẠáá±áá¡áá»á¬ážá¡ááŒá¬ážááœáẠááŒáá·áºáá±áá¬ážáá±á¬ á¡áá±á¬ááºá¡áá¶á·áá»á¬áž áá¯ááºááááºááŸááá±áááŒáá·áº áááºáááááá¬ážáááá±á¬ááŒá±á¬áá·áº áááºážááẠá áááºáááºá á¬ážá áá¬áá±á¬ááºážáá«áááºá ááá¯á·áá±á¬áº á€á¡áá¬á¡á¬ážáá¯á¶ážááẠááŸá±á¬áºááá¬áá±á«áºááœáẠáááºáá±á¬ááŒá±á¬áá·áºá áááºážááẠá¡ááœááºá¡áá¹ááá¬ááºáá»á¬ážáááºá
ááá¯á·áá±á¬áº Shipper ááẠááá¯á·áá±á¬ááºááŸá¯áá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááᯠáá»áŸá±á¬á·áá»ááẠá¡áá»á¬ážá á¯ááŒáá¯ážá á¬ážáá±áá±á¬áºáááºážá á¡á á¯ááá¯ááº-á á®á ááºáá°á¡áá»á¬ážá¡ááŒá¬ážááẠááá¯ááá¯áá±áá¯áá»á¡áá¯ááºáá»á¬ážááᯠááá¯ááºááœááºááŒááŒá®áž á¡á á¯ááá¯ááºá¡áá¯ááºáá»á¬ážá¡ááœáẠááá¯ááá·áºáá±á¬áºáá±á¬ááºážááŒá áºááá¯ááºáááºá
áááºážááœáẠá¡ááá·áºááŒáá·áº ááŒááºážááŒááºážáá»ááºáž áá±ážááá¯á·ááŒááºáž ááá¹ááá¬áž áááŸááá«á
Multi-cluster-scheduler á¡ááŒá±á¬ááºážááá¯ááá¯ááááŸáááá¯ááºáááº
áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá
áœá¬áá«áááºááá·áº á¡á
á¯á¡áá±áž-á¡áá»áááºááá¬ážááᯠáááºáááºááá¯áá«áá Admiralty ááœááºááŸááááºá
á¡ááŒá¬ážáááááá¬áá»á¬ážááŸáá·áº ááŒá±ááŸááºážáááºážáá»á¬áž
á¡á á¯á¡áá±ážáá»á¬ážá áœá¬ááᯠáá»áááºáááºááŒááºážááŸáá·áº á á®áá¶ááá·áºááœá²ááŒááºážááẠááŸá¯ááºááœá±ážáá±á¬á¡áá¯ááºááŒá áºááŒá®áž universal solution áááŸááá«á
á€á¡ááŒá±á¬ááºážá¡áá¬ááᯠáááºáá¶áá±á·áá¬ááá¯áá«áá á€áá±áá¬ááœáẠá¡áááºážá¡ááŒá áºá¡áá»áá¯á·ááŸááá«áááºá
Rancher á០áá±áá¯ááºáááºá¹áá±á¬ ááá°áá®áá±á¬ Kubernetes á¡á á¯á¡áá±ážáá»á¬ážá áááºááá·áºááœááºáááºáá»á¬ážááᯠáá»áááºáááºáá±ážááá·áº áááááá¬áá áºáá¯ááŒá áºáááºá- áááºáá®ááá¯ááºááœá²áá»á¬ážááᯠáá
áºááŸááºá¡áá¯á¶ážááŒá¯áááºá
Unimatrix ááẠSpinnaker ááŸáá·áº áá±á«ááºážá ááºááŒá®áž á¡á á¯á¡áá±ážáá»á¬ážá áœá¬ááœáẠááŒáá·áºáá»ááºááŸá¯ááᯠááŒáá¯ážááá¯ááºáááºá . - IPV6 ááŸáá·áº á
ááºážáá¯á¶ážááŒáá·áºáá«á
áá±ááá»á¬ážá áœá¬ááœáẠááœááºáááºáá áºáá¯áááºáž . - á¥ááá¬á¡á¬ážááŒáá·áº áááºááẠservice mesh ááá¯áá¯á¶ážááá¯ááºáááºá
á¡á á¯á¡áá±ážáá»á¬ážá áœá¬ááᯠáá»áááºáááºáááºá¡ááœáẠIstio . - Ciliumá ááœááºááááºáá¬ááœááºáááºááŒá¬ážáᶠááááºá¡ááºá áááºážááŸááºážáá»ááº
cluster mesh áá¯ááºáá±á¬ááºáá»áẠá¡á á¯á¡áá±ážáá»á¬ážá áœá¬ááᯠáá±á«ááºážá ááºááá¯ááºá á±ááá·áºá
áá®áá±á·á¡ááœáẠáá®áá±á¬ááºáá«áá²á
á¡áá¯á¶ážáááááºáá±ážááá¯á· áá»á±ážáá°ážáááºáá«áááºá
á¡á
á¯áá»á¬ážá
áœá¬ááᯠááá¯ááá¯áááá±á¬ááºá
áœá¬ áá»áááºáááºáááºážááᯠáááºáááá«áá
ááá·áºáááºážáááºážááᯠááá·áºááºáá»á¬ážááœáẠáá»áœááºá¯ááºááá¯á· áá±á«ááºážááá·áºáá«áááºá
Chris Nesbitt-Smith á¡á¬áž á¡áá°ážáá»á±ážáá°ážáááºááŸááá«áááºá
source: www.habr.com