ααααααΈ 8 ααααααΆαα
αααα»αααααα·ααΈα
ααΆααααααααΈααΎαααΈαααΆααααα»αααΆααααα αΆα
ααααΌα αα·αααΆααααααααα αααα»α K8s
Kubernetes αααα»αααααΆααααααΌαα§ααααΆα αααα αα·ααα·ααΈααΆααααααααα»αααΆαααααααααααααααααΌαααΆααααααΎαα‘αΎαααΆααΌαααα αΎαα
- ααΌαα’ααα»ααααααΆαα α’ααΌααΈααΎααααααααΎαααΆαααΆαα½αααααααα·αααΌα ααΆααΆαααα‘αΎα config α¬ααααΎαααΆα command (Chef, Ansible...) ααα»ααααααααΎααΆαααΆααααΆαααα»ααα containers ααααΆααααααα
- ααΎαα’αΆα αααα ααααααα·ααΈααααα·ααα·αααΈ nuances αααααααα·ααΈ ααα αααααααΆααααΆαααααααΉαααααΌαααΆαααΆααα±ααααααΎαααΆαα αααααα αααααα’ααααααααααααΆ ααΆααΎαα
- ααΆαα½αααΉα K8s α’ααααα·ααααααΆαααααααΆαα αΌαααααΎα αααΎαααΆααααααα ααΆαα’αα»ααααααα’αααα»α ααΎααΆααααα αα αααααΆαα ααΆααααααααα αα αα αααααααααΎααΆαααααααΆα ααΆαααααΆααΆαααααααα½αα―α ααΆαα’ααα±αα ααααααα α»αααα
αααααΆαααΆαααΆααααα α’αααΈααααααααΆαααΊαα·ααααΌααααααα Kubernetes ααααΆαααΆααααααα αΆαααααααααΈαααααααα½ααααααα
Kubernetes αα·αααΆα ααΊααΆααΆααααα αΌαααααΆααααααααααΆααααα αΆααΆααα’ααααααα’αααααααΎααααΆααααΆααα’ααα ααααΌα Kubernetes ααα½ααα»αααααΌαα αααααααααα»ααααα»αααΆαα αΆαααΆα αα’αααααααΆαααααΆααα αααα»α ααΆαα α αααααα
ααααΌα Kubernetes ααααααααα»αααΌαααααΆααα primitives αααααΆααααΆαααΆααααΆαααα»ααααα»αααΊααα ααΆααααααααααα
ααΆα
ααα αα·αααΌα
αααααα
ααΎα ααΎαααΆααα·ααΆαα’αααΈαα½ααααα
αααα»ααααα’α·αααααααααααα
αααα»α
αααααΆααα·αααα K8s αααααα±ααΆαααα’ααα αΆαααααΎααααΈαααααΈααα»αααΆααααααΆα ααααα½ααα·αα’αααααα - ααΆααααΆαα - αααααΌαααΆαα’αααααααΎααααΆααα ααΆααααααααα ααΎ Kubernetes ααΊααΆαααα½ααα»αααααΌαααααα’ααααααααααααα ααααα αααααααΌαααααα‘αΎα αα·αααααααα ααΆααααααααα’αααΈααααααααΆααααα αΆαααΆα αααΎααααΈα±αααααα»ααααααα½ααα "αα αααα»αααΌαααΆαααααΉαααααΌα" [ααΎααααΈαααααααΆααααα αΆααΆααααΆαααααααα½ααα] α ααΎααΆαααααααααΆαααααααΆα’αααΈ? ααΌααααα‘ααααΎαα§ααΆα ααααα½αα ααα½αα
α§ααΆα ααααααααααα·ααΈαααααα
αααααΆαααα‘αΎα Kubernetes ααΎααααα ααααΆααααΆααααα’αΎαααααααααΆααααα
αΆαααΆα
ααααααΆααα’αααααααααααα pods ααΆαααααα»α node αα·α node αα·αααααΎαααΆαααααααα½αα―αααα ααΊααα Kubernetes αα·αααΆααΆααΆααααααΆααα
αΆαααΆα
ααα αααα»ααα
αα·α ααΆααααααααααΆα α
ααα»α
αααααΆαα (
α§ααΆα ααααα·ααααα·αααααΊαααααααααΆααααα»ααα·αααααα (ααΆαααΌαααααΆα α§ααααααααααααΆαααααααΆα Ceph...)α ααααΌααα½ααααααα·ααα
αααα»αααααΌαααα»ααααααΆαα½αααΉαααΆαααααα
α§ααΆα ααααααααααααα½αααΆα:
- Ingress- α§ααααααααααΆ (ααΌαααΎαααΆααα·αα·αααα‘αΎααα·ααααααα½ααααα
αααα»α
α’αααααααααΈαααααααΎαα ). -
α’αααααααααααααα·ααααΆααααααα : -
ααααα·ααααα·αα ααΊααΆααααΆααααΆααααΌααααααααα·ααΈαααααα (ααααα½ααααα αΌαα’αααααααααααααα·ααααΆααααααααααααΆαααΎαα‘αΎα) αα½αααααααααα»ααααα αα·αα§ααααααααααΆα αααααα·ααααΆααααΆαααΆααααααα½αααααααΌαααΆαααααααααααΆααααααΎααααααααααααΎαααααα»ααααα α αΎαα’αα»ααααΆαα±ααααΎααααααααααΆαααΆαα»α αααααΆαα ααΆαααααααααααααααααα½α ααΆααααα (α§ααΆα ααα DBMS) αα ααΆαα»αααααΆα αααααΆααααα½αααααΎααΆαααΆαα½α (ααΆααααα»ααααα»α αα·αααΆααααααααααααΆ)α ααααα·ααααα·αααα½αα ααα½αααααααΌαααΆαααααα - αααααΈααΆαα½αααααΆα αααΎααα·αααΆαααα½α ααΆαααααααΆααααΆαααα·αααααα ααΆααααΆααααααΆαααα αΆαααααααααΆααα»αααααα - αααααα - ααΌαααΆααα½ααααααααααααα Kubernetes ααΆααααααα ααα»α αααααΆαα (Metrics API) ααΈααΆαα’αα»αααα (αααααα·ααΈααααααααΆααΈααΈααΈααΌα ααΆα’αΆααΆααααα Prometheus ααααΆααααΆαα ααααα Datadog ... ) α
- αααααΆαα ααΆααααα½ααα·αα·ααα αα·ααααα·αα·αααααΆααααααααααα
αααα»αααΆαα’αα»αααααα·αααααΉαααααααΌαααΆα
Prometheus αα·α Grafana ααα»ααααααααΆα kube-state-metrics, node-exporter ααΆααΎαα
α αΎαααααα·ααααααΆαααααΈααααααααααΆααααααααα... α§ααΆα αααα αα αααα»αα αα»α Flant ααΎαααα‘αΎααα αα α»αααααα 29 ααΆααααααα (αααααΆααα’αααααααΎαααααα» Kubernetes ααα»αα ααα½α 249) α αα·ααΆαα±ααααΆαααα ααΎααα·αα’αΆα ααΎαααΈαα·αααααα ααααααααααααΆαααΆαααααααααα
ααααααααααααα·αααα
ααααα·ααααα·ααααααΌαααΆααα ααΆα‘αΎαααΎααααΈααααΎααααααααααααα·ααααααααα·ααααα·ααΆαααααααΆαααααΎααα½ααααααααΆαααααΆααααααα αααααΊααΆα§ααΆα ααααααα»αααΈαα·ααα·ααααααΆααααααααααα·ααααα·ααααΉαααΆαααααααααΆαααααα’α
- ααΆαααΆαα α»ααααααΈα―ααα (α§. ααΆαααΆαααΆαα αΌα) αααααΆαααΌαααΆααααααΆαααααααα·ααΈα ααΆααααΌαααΆαααααααααΆααααΈαα½ααααααΌαααΆααααααα’αΆααααααΆαααα·ααααααα’αα»ααααΆαα±ααααΆαααΆααααααααααΆααααΆαααααΉαααααΌααα αααα»ααααααΈαααααα ααΆααα·α αα ααααααΎαααΊααΎααααΈααΆααΆααΆα’αΆααααααΆαααααααααΌαααΆαααααΎααα αααα»α namespace ααΌα αααα pods α’αΆα ααΆαααααΌαααΆαα ααΆα’αΆα ααΆααααααα·ααΈααΆα αααΎα (αααααΈαα½ααααααΌαααΆαα’αΆααααααΆαα) α αΎαααΆααΆααααααααααααα»αααΆαααααΎαα αα α»ααααααααΆαα’αΆααααααΆααααααααα½αα―αααΆαααααΆαα ααΌα αααααααααΎαααααΆαααΆααα’αΆααααααΆαααααααααααΌαααΆααα»αα ααα αααααΆαααααααααααααα·ααααα·αααααα½αααααααααα ααΎααααααΎαα§ααααααααααΆαααααΉααααα αΆαα±ααα ααααααααααααα α‘αΎα α αΎαααα’ααααΎααααΉαααα·ααΆααααααααΉαααααααα’αΆααααααΆαααα α ααααααααααα
- α’αα»ααααΆαα±ααα αΌαααααΎααααΆαααΎαααΈ pods αα α’ααΈαααΊαα·αααααΌαααΆαα αΆαααΆααα ααα»αααααααααααααΆα’αΆα ααααΌαααΆαααΆαααΆαα ααΆααΆα‘αΌααΈαααααααΆααααααααΆαα’αα»ααααΆαααΆαα αΌαααααΎαααΆαααΎααααΈααααΎαααΆααααΆαααΆαααα ααααα·ααααααΌαα±ααααΆαααααΆαααΆααααΆαα α§ααΆα ααααααααααααΆαααααααΆαααΆααααΆαααα αααα»α namespace α ααΎααααα·ααααα·ααα’αΆα αα½αααΎααα ααΈααααααααααααΆ? α§ααααααααααΆααααΌαααΆααααααΎαα‘αΎαααααααα αΆαα±ααααααΆααααα αΆααα αααα»α namespace αα·ααααααααααααΆααααααααααααααΆααααΆαα αΌαααααΎα’ααΈαααΊαα·αα
- ααααΆαααΆαααααααααααΆα α§αααΆααΆααΎαααααΌαααααααα’αααΈαα½α
ααα’α»αααα½α ααααα·αααΎααΆααΆαααααΆαααααααααααΆ (ααΆαα½αααΉααααααααα½αα ααα½ααααα»ααααα)α αααααααΆαααΆαα½αααααα·ααααα·ααααΊααΆααααααα...
αα αααα»αα αααααααΆαα½α αα·α αα ααΆααααααΆααααααΌαααααααΌαααΆααααααααΆα αα·α αα·αααα· αααα’αΆα ααααΌαααΆαααααΎαααααααΎααααα·ααααα·ααα
ααα»αααααΏαααΆααα’αααααααΆααα·αααααΆ ααΎαααΆαααααα·ααααΆαααΆ αααααΆααααΆαααΆαααααααααααΆαα»αααΆααα αααα»α Kubernetes αααα’αααααααΌαααΆα: α) ααα‘αΎααααααα·ααΈαααααα, α) α’αα·ααααααααα·ααααα·αα (αααααΆαααααααααΆααα·α αα ααΆαααααααΆααααα αΆααααα)α
ααΎααααΎααΌα ααααα ααΎααααΈαααααααα ααααΈαααααααΆααααααααΆαα Kubernetes?
ααΆααΌαα αααααααΆαααααΊααΆαααα:
... ααα»αααααααααΆααααααΆααααααΆ:
- Kubernetes API ααΊααΆααΏααα·αααααΆαααααα αααΆααααα αααΎαααΎααααΈααααΎααΆααα αΆααα
- ααΆαααααααααααα·ααΈαααα·αααααααααΆααααα»ααααααααααααΆααα (ααΆααΆ Go ααααΌαααΆαααααΎαααΎαααΆααΆααΆααααααα
α·ααα ααΈαααααααΆααΆαααααααααααα·ααααααααΆααααΆ -
ααααα·ααααα·αα SDK ); - ααααΆαααΆαααΊααααααααααΆααΆαα½αααΉαααααααααααααα½αα―αα
αααααΆααααΆαααααα: ααΎααααΈαααααα§ααααααααααΆ (ααααα·ααααα·αα) ααααΌααα α αααΆαααααΆαααααΆααα ααΎααααΈαα·ααααΆαααααΆααα αααααΉαααααΌαααΆαααΆααααΆαα»α αα·ααααααΆααααααα·ααααα·αα "αα" - αα·ααΆαααΆαααααΆαα MySQL DBMS α ααα»ααααααααα·αααΎααΎαα αα αΆαα§ααΆα ααααααααΆααα·αααααΆααΆαααΎ (ααΆααααααΆαα’αΆααααααΆαα ααΆαα αΌαααααΎαααααΆαα’ααΈαααΊααα...) αααααΎαααα ααααααΎααΆαααααΉαααααΌα αααααΎαααΉααααααΆ αα·α αα αα·αααααααΉαααααααααααΆαα αααΆαααΉαααΎαααΈαααααααααααΎαααααΌαααΆαα₯α‘αΌααααα
ααΆααΌαα
αα·ααααα·ααΎαα‘αΎαα α
αααΆαααααΆαα
αααΎα α αΎααααααααα§αααααααααΉαααααΌααααααΆααααΆααααααααα
ααααΈαααααααΆααα α¬ααααΎααΆααΆαααααα
αΆαα (ααα»ααααααΏα)α ααΎααααΈαααααααΆαααΆ - ααΎααααΈαααααααααΆααααααααααα½ααααΆαααΆαααααΆααααΆααααα - ααΎαααΆααααααΎαααααααααααΆαααααα½αααααααΎαα
ααααα·ααααα·ααααα
ααΎααΆααααααΎααΆααααΆαααΌα ααααα ? α αααααααΆααααααααΆα Go binary ααΆαα½α shell-operator α αα ααΆααααΆααΊααΆαααα»α ααααα (ααααααΆααααα’α·αααααααα’αααΈαα½ααα - ααΌαααΎαααΆαααααα). ααααα·ααααα·ααααααααα½αα―αααΆαααΆααααΆαα ααααΉαααα·ααΆααα αα αααα»α Kubernetes API αα ααααααααΆααΎαααααΎαααΆαααααααααααααΌαααααΆα
ααΎβααααα·ααααα·ααβαααα αααΈβααΉαβαααβααααβααΆβαααβαααααβααααΌαβα α βαα βααΎβααααΉαααα·ααΆαααβαα½αβααΆ? ααααααΆααααααααΌαααΆααααααΌααα ααα-ααααα·ααααα·ααααααααααααααααα½αα―α α αΎααα½αααααααΎααΆαααΆαααΆαααααααα»αα
αααααααΊααΆααααααΈα Bash α¬α―αααΆααααα’αΆα
ααααα·ααααα·ααΆααααααααααααααα½αααα’αΆαα»ααααααααα½α --config
αα·αααααΎαααααΆαα½α JSON α αααααααααααααααααΆααΎααααα»ααΆαααα
αΆααα’αΆααααααα
ααααααΆ α αΎαααααΉαααα·ααΆαααααΆαα½α (αααααΆααααααα»ααΆααααα) αα½αααααααΌαααΆαααααΎααααα
α
αααα»αααΉααααα αΆαααΈααΆαα’αα»αααααα
ααΎααα - ααααα·ααααα·ααααα§ααΆα ααααα½αααααααΎα - decomposing α’αΆααααααΆαααααααΆααααΆαα
αΌααα
ααΆαααααααΈαααααα―αααααΆαα½αααΉαααΌαααΆααααααα·ααΈα ααΆααΆαααΈαααααΆααααΆαα
ααΆαα’αα»ααααα 1. αααααααααα
ααααΌααααα’αααα
αααα»ααααααααΎαααΉαααααΎαααΆα --config
ααααααα αΆαααΆααΎαα
αΆααα’αΆααααααααΎ namespaces α αΎαααΆαα·αααααΊαααααααΆααααααΎααααααα½αααα
[[ $1 == "--config" ]] ; then
cat << EOF
{
"onKubernetesEvent": [
{
"kind": "namespace",
"event": ["add"]
}
]
}
EOF
β¦
ααΎαααααα·ααααΆααΉαααΎααα ααΌα α’αααΈ? ααααΆααααααΆααα
β¦
else
createdNamespace=$(jq -r '.[0].resourceName' $BINDING_CONTEXT_PATH)
kubectl create -n ${createdNamespace} -f - << EOF
Kind: Secret
...
EOF
fi
ααα αΆαβααααΌαβααΊβααααΌαβααβα±ααβααΎαβααΆ namespace αα½αβααΆβααααΌαβααΆαβαααααΎαβα‘αΎα α αΎαβααΈααΈαβααΊβααααΌαβαααααΎαβααΆβαααβααααΎ kubectl
α’αΆααααααΆαααααααΆααααα ααααααααα
ααΆαα’αα»ααααα 2. ααΆααααααΌααααα»αααΌαααΆα
α’αααΈααααα αααααΊααααΌααααααΌαααααααααααΆααααααΎααα ααα - ααααα·ααααα·αα - ααααααααΎααΆ? Shell-operator αααα½αααΆααααΆααΌαααΆα Docker ααΌα ααααααΆααα·α αα ααααααΎαααΊααααΌαααααααααααααα αααα·ααααα αααα»αααΌαααΆααααα
FROM flant/shell-operator:v1.0.0-beta.1
ADD my-handler.sh /hooks
α’αααΈααααα αααααΊααααΌααααααΌααααα»αααΆα αΎααα»αααΆα
$ docker build -t registry.example.com/my-operator:v1 .
$ docker push registry.example.com/my-operator:v1
ααΆααααα α»ααααααααΊααααΌαααΆαααααααΆαααΌαααΆααα ααΆααα αααααα ααΎααααΈααααΎααΌα αααααΌαααααα ααΆαααΆαααααααΆα:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: my-operator
spec:
template:
spec:
containers:
- name: my-operator
image: registry.example.com/my-operator:v1 # 1
serviceAccountName: my-operator # 2
ααΆαα ααα»α ααΈααααααααΌαααα α·ααααα»αααΆααα
- ααΆαα ααα’α»ααααα αΆαααααΌαααΆααααααΆααααααΎαααααΈ;
- αααααΊααΆαααΆαααΆαα»ααααααααααα (αααΆααα·α ) ααααΌαααΆααα·αααα·αααα»αααΆαααΆαααααΉαααα·ααΆααααα αααα»α Kubernetes αα·αααΎααααΈαααα ααααΆααααααΆαααα ααΆαα namespaces ααΌα ααααααΎααααααΎα ServiceAccount (αα·ααααα»αααα αααΆαα) αααααΆαααααααα
αααααα - ααΎαααΆααααααααΆααααα αΆααααααΎαα ααΆα αααΆαα· αααααΆαα Kubernetes ααΆαααααααααααααΎαααααα·ααααα·αααααααΆααααΆααααααα’αΆααααααΆααα
αα»αααΆαααα-ααααα·ααααα·ααααααααααα
ααΎααααΈαααααααααα»αααααααααααα’αααααΆαααααΎαααΎαααααααααααΉαααααΎαααΆαααΆαα½α, αα½αααα’αΆα
ααααΌαααΆαααααααααΎαααΎααααααααα
ααΆαααααΆαααΆααααΆαα (α¬ααΆαααααΎααααΆαα matchExpressions
):
"onKubernetesEvent": [
{
"selector": {
"matchLabels": {
"foo": "bar",
},
"matchExpressions": [
{
"key": "allow",
"operation": "In",
"values": ["wan", "warehouse"],
},
],
}
β¦
}
]
ααΆαααααα ααααααΆαααααΆα ααα»αααα - αααααααΎααααα jq - α’αα»ααααΆαα±ααα’ααααααααααααα» JSON αααα ααΆααααα»ααΌα ααααααΆααααααΆαααΆααααααααΆαααααααααα ααααααααΎαα ααααΆαααΆαααΆαααααΆααααααΌαα
αα αααααααααααααααΌαααΆαα α ααααα·ααααα·αααααααααααΆααααΆα αα·ααααααααααα»αααα’αΆα ααααΌαααΆαααααΎαααααΆαααααααΌαααΆαααΆαα½αα
ααααΉαααα·ααΆαααααααααααααααα·αααααΌαααΆααααααα ααααααααΉαααα·ααΆααα Kubernetes ααα ααααα·ααααα·ααααααααααααΆαααΆαααααααααΆαα α α αααααααΆααααααααΆ (αααααααα ααΉα crontab αα αααα»ααααααα·ααΈαααααααααααααααΈ) ααααΌα ααΆααααΉαααα·ααΆααααα·ααααα½αα αααα αΆααααααΎα. ααααΉαααα·ααΆαααααΆααα’αααααα’αΆα ααααΌαααΆααααα αΌαααααΆ αα·αααααααα αααααααΌα ααααΆα
αα·ααααααααα·αααααΈααααααααααα-ααααα·ααααα·ααα
- ααΆβααααΎαααΆα α’ααααΆα. α αΆααααΆααααΈααααΉαααα·ααΆααα Kubernetes (ααΌα ααΆααααα»ααααααα»αααααΌαααΆααααααΎα) ααααΌαααΆαααα½α ααααΉαααα·ααΆααααααααααα (ααΌα ααΆααααα»ααΌα ααααΆααααααα»αααααΌαααΆααα»α) α’αΆα ααΎαα‘αΎααα αααα»αα ααααα α αΎααααααααααΌαααα½ααα»αααααΌαα αααααααα αΆαααα ααααα·αααΎαααααααααΌαααΆαααααα·ααααα·αααααΆαααα α»α αααααΆαααααΆαααΎαααΆααΉαααΆα α α ααααααα αα αΌααααααΆααααα ααααααααααα (α₯αα·ααΆαααααα’αΆα ααααΆααααααΌαααΆα)α
- ααΆααΆαα αα αααααα αααααΆαα Prometheus αααα’αααα’αΆα αααααΆααΎ shell-operator ααααΎαααΆαα¬α’αα ααααααααααΈα ααα½αααα α»ααααααΆαααααααααΈαα½αα αα·αααα ααα½ααα αα α»ααααααα
ααΎααααΈααααααααααααααααΆαααΆααααααα
ααΆαααα‘αΎααααααα·ααΈαααααα
αααααΆααααΆαααΆαααααααααααΆαα»αααΆαααΆαα½α Kubernetes αααααΌαααΆααααα»αααΆαααα‘αΎααααααα·ααΈααααααααααααΌαααΆαααΎαα‘αΎααααααα αααα»αααΉαααααΆααα’αααα’αααΈααΆαααααααΎα§ααΆα αααααααααΌααααααααα»αα αα»αααααααΎαα αααααααααααααΎαααααΎααΆα₯α‘αΌααααα
ααΎαααΆαα αΆααααααΎαααααΎααΆαααΆαα½α Kubernetes ααΆαα½αααΉαα αααααααΆα αααΎα αααααΆααΆααααααααααα½ααααααΊ Ingress α ααΆααααΌαααΆαααΎααααΈααα‘αΎααα»ααααααΆαα αααα»αα αααααααΈαα½αα α αΎαααΎαααΆααααααΎαααΆαααααααα ααΆαααααααα YAML ααΆα αααΎααααααΆααααα·ααααΆαααααααααααΆα αααααα AWS...
αααααΆαααΆαα αααααααΆααααα αααΎα ααΆααΆαααΆαααααααα ααΆααααααααααΆααααα αααΎαα ααΎαααΈααα ααΎαααΆααααααα’ααΆαααααααα ααΆααααααααααΆαααααααααααα½ααα½αααααααΆαα αααααΆααααααααααα½αααΆααααααΆαα»αααΈααααααΆα
ααΎααααΈβααΆααβα’αααΈβαααααβαααΆαβααΆαβααααΆαα ααΎαβα
αΆααβααααΎαβαααβααααααΈα (install-ingress.sh
) αααααΆαααααΆα’αααα’αααΆαααααααααααα
ααααααααααΎαααΉαααΆαααααααΆα ααΆααααααΎαααΆαααααααα
ααΆαααααααα YAML α
αΆαααΆα
α α αΎαααΆααααααΌαααΆαα
Kubernetes α
ααα»ααα ααΆαααΆαααααααααααααααΎα αα·αα ααα»αααααααΆααααααΉαααΆααΆαααΌα ααΆααααααα
- ααΎααααΈααααΎααΆαααΆαα½αααΆαααααααα ααΆαααααααα YAML αααΆαααΈαααααΌααΊααααΌαααΆαααΆαααΆα (αα ααααΆααααΆαααααΌααααααΊααΆαααα sed);
- ααΆαα½αααΉαααΆαααΎαα‘αΎαααα ααα½αα ααααα αααααΌαααΆααααααΆααααΆαααααΎαα αα α»ααααααααΆααααααααααααααααα·ααΆααα (αααααααααΆαααααΌααααα»αααΊααααΌαααΆααααααααΈααα αααα»α Git ααααΎαα αα α»ααααααααΆαααΆαααααααΎ cron α αΎαααααΎαααΆαααΆ);
- ααααααΈαααααααααααΆααααΌαααΆαααΆαααΆααααααΆαα Prometheus (
install-prometheus.sh
) αααααΈααΆαααΆαααΆααααα ααΆαα½αα±ααααααααααΆαααααααΆααααΆααα·ααααααΆααΆααααΌαααΆααα·αααααααααα αΌαα αααΎα ααααΌα ααΆααΆααααα»ααααααα½ααα (ααΆαααααααααα’ - αααααΆα αα·ααα αααα»αα ααααα) α αΎααα·αααααααα½αα ααα½α (ααΆααααααααΆαα) α’αΆα ααΉαααααΌαααΆααααααΎααααααααααααααααα·: - α αΆαα·αααααααΆαααΆααα ααααΌαα’αααΈααααα»αα ααααααΆαααΎαα‘αΎαααα ααα½αα ααααααααα»αααΎαα‘αΎαα₯αααααα ααΌα ααααααΎαααΉαααΆα’αααααα‘αΎα (α§. ααααααΈαααΈαα αααααΆαα Ingress αα·α Prometheus) ααααΆααααΆαααΊααααΌαααΆαααΆα αΆαααΆα α (ααΆααΆααΆα αααΎααα αααα»α Git, crons ααΆα αααΎαααΎααααΈααααΎαα αα α»ααααααααΆααα½αααΆαα αααα»αααΆααααααααΌαααααΆ: α ααααααααααΆααααααααΆα α¬ααΆααααα);
- Ρ
kubectl apply
ααΆααΆαααααΆααα ααΆααΆαααααΆααααα»αααΆαααααΎααΆαααΆαα½ααααααααΆαα·ααααααΆααΆααααααΆα αα·αα’αΆα αααααΎαααΆαααααααα»ααα»ααααα ααα»αααααα·αααααΎααΆααααααα α α·αααααΎααααΆαααΆα/αα»ααα½αααΆα - ααΎαααΆαααα»αααΆααα½αα
ααα½ααααααΎααα·αααΆαα’αα»αααααα
ααααααα
- ααΆααααααααααααααααααΎααααααααααΆαααααΎαα αα α»ααααααααΆαα ααααα,
- ααΆαααααααααααααααααααααα·αααααΆαααΆαααααααα½αα ααα½α (αααα αΌααααααΆααααααααΈαααα‘αΎα) αααααα’ααααΎαα·αααααααααα’αΆα ααα½αααΆαααΈα ααααα (ααΆαααααΎα)
- ααΆαα’αα·ααααααα‘αΌααΈααααααααΆαααα»αααααααααααΆαααααΎαααΆαααααααααΆααα
ααΎαααΆαα’αα»αααααααα·αααααααααααααΌαααΆαααΆααα’ααααααα
αααα»ααααααααααααααααααααααααααααααααΎα -
Addon-ααααα·ααααα·αα
ααΆααααΌαααΆαααα’ααααΎ shell-operator αααααΆααααααΆαααα½α α αΎαα ααααααααααΆααααΌαααΎααα ααΌα αααα
ααΆαααααααααααααΌαααΆααααααααα αααααααα-ααααα·ααααα·ααα
- ααΆααααα»αααααα,
- ααααΌαααΆααα½ααα»ααααα·ααΆα,
- αααΆαααΆααααα αααα½ααα·αα·αααα αΆαααααα α αΎα - αααα»αααααΈααΆαααΆαααααΆααααααΌαααΆαα½α - αα»αα±αα Helm ααααααΆααΆαα‘αΎααα·αα
ααΌα
αααα ααΎαα’αΆα
ααααα·ααααα
ααααααααΉαααα·ααΆααααα½ααα
αααα»α Kubernetes α
αΆααααααΎαααααα α αΎαααΈαααααααα ααΎαα’αΆα
ααααΎααΆαααααΆααααααΌααα
ααΎαααααααααα»α αααααΆααααΈαααααΆααΆαααΉαααααΌαααΆαααΆαααα‘αΎααα·αα αα
αααα»αααααΆααααΆααααααα ααΎααααα
αααααα»αααααααα αα·αααααΌαααΆααα
ααΆαααΆαααΆααα½α αααααΎαα α
ααΆ αααΌαα»α:
ααΆα’αΆα
ααΆααααΌαα»αααΆα
αααΎα α αΎαα
αααααα½αααΆ ααΎααααααααααααααα α αΆααααααααα αα·ααααΆαααΆαααααααα½ααα·αα·αααα αΆαααααααα
α₯α‘αΌαααα αα ααααααααΆαα’αααΈαα½αααΎαα‘αΎααα αααα»α Kubernetes ααΎαα’αΆα ααααα·ααααα ααααααΆαααααααΎαααααααα α αΎαααααΆααααααΌαα’αααΈαα½ααα αααα»αα αΆααααα ααΆαααααΆααααααΌααααααΉαααααΌαααΆαααααααααΆαα α αΎαααΉαααααΎα±αααααΌαα»αααΆααα’αααα αααα»αα αααααααααΌαααΆαααΆααα±ααααααΎαααΆαα
αααααααΆααααααααααααααααΌαααΆαααΆααα’αααααααΆααααΆαααα‘αΎααααααα·ααΈαααααααααααααΌαααΆααααααΆααααΆαααΎα
- Helm ααΆααααα½ααα»αααααΌαα ααααααααΌ αα·αααΆααααααΆαα
- αααα αΆααααΆαα’αΆααααααααααααααααααααα·ααααΌαααΆααααααααΆααααααααΎαααααααΆαα αααα αΌααα αααααΈαααααααΆαααΆααα·ααΆα α αΎαααααα·αααΎααΆααΎαααΌαααΆαααααααααααααΈαα ααΈααα ααααααΆα αα (α§. "αααα½αααΆ")α
- ααΆααααααΆαα»αααΆαααααααα αααα»αα αααααααααΌαααΆαα’αα»αααααααααααΎ ConfigMapαααααΆααα·ααααααα αααααααααΆααααΆααααα»α (αα αααα αΆααααααΎααα½αααΆααααΌαααΆααααα»ααα αααα»ααααααααααα»α)α
- αααα αΆααΆαα½αααΆααααααΎαααΆααααααααΆαα ααΆαααααΎα αα·αααΆαααααΎαααΆαααααααααΆααααααΌαααΆααααααααΆααααααααΎαααααα
- ααααΆααααΆαααααΌαααΆααααααα αααα’ααα»αα ααααααααΆαααα Docker ααΆααααα ααααΈαααα’ααα
- ααααααααααΌαααΆααααα½ααα·αα·ααααααααααΎαααααααααααΎαα’αΆα αααααΈααααΆαααΆαα
ααααααααααΆααααΌααααααααΌαααΆαα’αα»ααααααΆαααααααααααααααααααΈααααα½ααα αααα»α Go αααααααΌαααΆαααα α ααΆ addon-operator α αααααααΎα±ααααααΆααααΆαααΎααα ααΆααααααΆααα»αα
αααΆαααΆαααααΆαααα
αααα»αααααΆααααΆααααααΊααΆαααα»ααααααΌαα»α (ααααα·α
ααΆαααααααααααΆαααααα). α₯α‘αΌααααααΎαα’αΆα
ααααααααΌαα»ααααααΆαααααααα·ααΈαααααααααααααΌαααΆααααααΆαααΆααα·αααααααΉαααααααα·α
αα½α
α αΎαααααΌαααααΆααααΆααΆααΉαααααΌαααΆαααα‘αΎααα
αααα»αα
αααααααΈαα½αα ααΉαααααΌαααΆαα’αΆααααα αα·αααααΎααααα
ααΉαααααΉαααα·ααΆααααααααΆααααΌαααΆααα
αααα»αα
αααααα
"Flant" ααααΎ
ααΎαααα»αα’αΆα ααα½αααΆααααΌαα»ααααααΆαα addon-operator αα α―ααΆ? ααΆααααααααΆααααααΆαααααααααΎαααΊααΆααααΆααααΆααααααΆαααααααΆααααΎα ααΎαααΆαααααααααααΎααΆαα αααΌααααα α
ααΈααα’αΌ αα·αααααΆα
ααΈααα’αΌααΈααΆααααααα (~α€α§ ααΆααΈ)α
αααααα αΆααααααΆαααΆαααα
PS
αααΆαααΆααααααααααααα ααΎαααααααααααΎαα
- Β«
ααΌαααααΆααα·αααααα αα·α Kubernetes Β» (Dmitry Stolyarov; ααααααΈ 8 αααα·α ααα·ααΆααααΆα 2018 αα ααΎ HighLoad ++); - Β«
ααΆααααα½ααα·αα·ααα αα·α Kubernetes Β» (Dmitry Stolyarov; 28 α§αααΆ 2018 αα RootConf); - Β«
CI/CD ααΆαα’αα»ααααααα’αααα»αααΆαα½α Kubernetes αα·α GitLab Β» (Dmitry Stolyarov; ααααααΈ 7 αααα·α ααα·ααΆααααΆα 2017 αα ααΎ HighLoad ++); - Β«
αααα·αααααααααααΎαααΆαα½α Kubernetes αααα»αααααααααΌα α Β» (Dmitry Stolyarov; ααααααΈ 6 αααα·αα»ααΆ ααααΆα 2017 αα RootConf).
α’αααααα’αΆα α αΆααα’αΆααααααααΎααΆαααααα»αααααΆααααααα
ααααα: www.habr.com