KlusterKit: ΠΠ»Π°ΡΠ½ΠΈΠΊ ΡΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ Π·Π° ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ°ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π°ΡΠ°ΡΠ° Π½Π° Kubernetes ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π²ΠΎ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ Π²ΠΎ ΠΏΡΠΎΡΡΠΎΡΠΈΠΈΡΠ΅
ΠΠ΅Π½Π΅Ρ ΡΠΌΠ΅ Π²ΠΎΠ·Π±ΡΠ΄Π΅Π½ΠΈ Π΄Π° ΠΎΠ±ΡΠ°Π²ΠΈΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΠ»Π°ΡΡΠΎΡΠΌΠ° 9 Π΅ ΡΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΈΠ·Π²ΠΎΡΠΈ Klusterkit, ΠΏΠ°ΠΊΠ΅Ρ ΠΎΠ΄ ΡΡΠΈ Π°Π»Π°ΡΠΊΠΈ, ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° Apache v2.0 Π½Π° GitHub.
ΠΠ°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ ΠΏΡΡΡΠ°Π°Ρ ΡΠΎΡΡΠ²Π΅Ρ Π²ΠΎ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΈ ΡΠ΅Π½ΡΡΠΈ Π·Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΊΠΎΠΈ ΡΠ΅ΡΡΠΎ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ (ΠΎΠ΄ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈ ΠΏΡΠΈΡΠΈΠ½ΠΈ). ΠΠ²ΠΈΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ°ΠΊΠ°Π°Ρ Π΄Π° Π³ΠΈ ΠΈΡΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° Kubernetes ΠΈ Π΄Π° Π³ΠΈ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·ΠΈΡΠ°Π°Ρ Π½ΠΈΠ²Π½ΠΈΡΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ Π²ΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΈ ΠΏΡΡΡΠ°Ρ Π²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ΅Π½ΡΡΠΈ Π·Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, ΠΊΠΎΠΈ ΡΠ΅ΡΡΠΎ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ Π½Π°Π΄Π²ΠΎΡΠ΅ΡΠ½ΠΈΠΎΡ ΡΠ²Π΅Ρ. ΠΠ²Π° Π΅ ΠΌΠ΅ΡΡΠΎΡΠΎ ΠΊΠ°Π΄Π΅ ΡΡΠΎ Π΄ΠΎΠ°ΡΠ° Klusterkit, ΡΡΠΎ Π³ΠΎ ΠΎΠ»Π΅ΡΠ½ΡΠ²Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°ΡΠ΅ΡΠΎ ΠΈ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ΡΠΎ ΡΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΡΠ΅ Π½Π° K8 Π²ΠΎ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ.
Klusterkit Π²ΠΊΠ»ΡΡΡΠ²Π° ΡΡΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈ ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π·Π°Π΅Π΄Π½ΠΎ ΠΈΠ»ΠΈ ΠΎΠ΄Π΄Π΅Π»Π½ΠΎ Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΆΠΈΠ²ΠΎΡΠ½ΠΈΠΎΡ ΡΠΈΠΊΠ»ΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΠΎΡ ΠΊΠ»Π°ΡΡΠ΅Ρ Kubernetes:
ΠΈΡΠ½Π΄Π°Π΄ΠΌ , CLI Π·Π° ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½ΠΎ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈ etcd.nodeadm , CLI Π·Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈ ΡΡΠΎ Π³ΠΎ ΠΏΡΠΎΡΠΈΡΡΠ²Π° kubeadm ΠΈ Π³ΠΈ ΡΠ°ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π° Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ Π·Π° kubeadm.cctl , Π°Π»Π°ΡΠΊΠ° Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΆΠΈΠ²ΠΎΡΠ½ΠΈΠΎΡ ΡΠΈΠΊΠ»ΡΡ Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ ΡΡΠΎ Π³ΠΎ ΡΡΠ²ΠΎΡΡΠ²Π° Cluster API ΠΎΠ΄ Π·Π°Π΅Π΄Π½ΠΈΡΠ°ΡΠ° Kubernetes ΠΈ ΠΊΠΎΡΠΈΡΡΠΈ nodeadm ΠΈ etcdadm Π·Π° Π±Π΅ΡΠΏΡΠ΅ΠΊΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΡΠ°ΡΡΠ²Π°ΡΠ΅ ΠΈ ΠΎΠ΄ΡΠΆΡΠ²Π°ΡΠ΅ Π½Π° Π²ΠΈΡΠΎΠΊΠΎ Π΄ΠΎΡΡΠ°ΠΏΠ½ΠΈ Kubernetes ΠΊΠ»Π°ΡΡΠ΅ΡΠΈ Π²ΠΎ ΠΏΡΠΎΡΡΠΎΡΠΈΠΈ, ΠΏΠ° Π΄ΡΡΠΈ ΠΈ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ.
ΠΠ°Π΅Π΄Π½ΠΎ, ΠΎΠ²ΠΈΠ΅ ΡΡΠΈ Π°Π»Π°ΡΠΊΠΈ Π³ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°Π°Ρ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π·Π°Π΄Π°ΡΠΈ:
- ΠΠ΅ΡΠ½ΠΎ ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅ΡΠ΅ ΠΈ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΡΠ΅ ΡΠΎ Π²ΠΈΡΠΎΠΊΠΎ Π΄ΠΎΡΡΠ°ΠΏΠ½ΠΈΠΎΡ etcd ΠΊΠ»Π°ΡΡΠ΅Ρ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΠ°Π±Π»Π° Π½Π° Kubernetes Π²ΠΎ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ Π²ΠΎ ΠΏΡΠΎΡΡΠΎΡΠΈΠΈΡΠ΅ ΠΏΡΠ΅ΠΊΡ Cluster API.
- ΠΡΠ°ΡΠ°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΠ°Π±Π»Π° Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ ΠΏΠΎ Π΄Π΅ΡΠ΅ΠΊΡ ΡΠΎ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½Π° ΠΊΠΎΠΏΠΈΡΠ° ΠΎΠ΄ etcd.
- ΠΠ°ΠΊΡΠ²Π°ΡΠ΅ Π½Π° ΡΠΈΡΠ΅ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ Π·Π° ΠΈΡΠΏΠΎΡΠ°ΠΊΠ° Π½Π° Kubernetes Π²ΠΎ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ.
ΠΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° Klusterkit
- ΠΡΠ»ΡΠΈ-ΠΌΠ°ΡΡΠ΅Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° (HA ΠΊΠ»Π°ΡΡΠ΅Ρ K8s).
- ΠΡΠΏΠΎΡΠ°ΠΊΠ° ΠΈ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ Π±Π΅Π·Π±Π΅Π΄Π½ΠΈ etcd ΠΊΠ»Π°ΡΡΠ΅ΡΠΈ.
- Π Π°Π±ΠΎΡΠ° Π²ΠΎ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ.
- ΠΠΎΠ΄Π΄ΡΠΆΡΠ²Π° ΠΏΡΠ΅Π²ΡΡΠ»ΠΈΠ²ΠΈ Π½Π°Π΄Π³ΡΠ°Π΄Π±ΠΈ ΠΈ Π²ΡΠ°ΡΠ°ΡΠ΅ Π½Π°Π·Π°Π΄.
- Π€Π»Π°Π½Π΅Π» (vxlan) ΠΊΠ°ΠΊΠΎ CNI Π·Π° Π·Π°Π΄Π½ΠΈΠΎΡ Π΄Π΅Π»; ΠΠΎΡΡΠΎΡΠ°Ρ ΠΏΠ»Π°Π½ΠΎΠ²ΠΈ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π½Π° Π΄ΡΡΠ³ΠΈ Π¦ΠΠ.
- Π Π΅Π·Π΅ΡΠ²Π½Π° ΠΊΠΎΠΏΠΈΡΠ° ΠΈ ΡΠ΅ΡΡΠ°Π²ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΈ etcd ΠΏΠΎ Π³ΡΠ±Π΅ΡΠ΅ Π½Π° ΠΊΠ²ΠΎΡΡΠΌΠΎΡ.
- ΠΠ° ΡΡΠΈΡΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΠ°Π±Π»Π° ΠΎΠ΄ ΡΠ½Π΅ΠΌΡΠ²Π°ΡΠ΅ Π½Π° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ° ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΎΡ.
Klusterkit Solution Architecture
ΠΠ° ΡΠΎΠ»Π΅ΡΠ°Π½ΡΠΈΡΠ° Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎΡΡ, Klusterkit ΠΊΠΎΡΠΈΡΡΠΈ Π΅Π΄Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° cctl-state.yaml Π·Π° ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΌΠ΅ΡΠ°ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ Kubernetes. ΠΡΠ΅ΠΊΡ cctl CLI, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΆΠΈΠ²ΠΎΡΠ½ΠΈΠΎΡ ΡΠΈΠΊΠ»ΡΡ Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ Kubernetes Π½Π° ΠΊΠΎΡΠ° Π±ΠΈΠ»ΠΎ ΠΌΠ°ΡΠΈΠ½Π° ΡΡΠΎ ΡΠ° ΠΈΠΌΠ° ΠΎΠ²Π°Π° ΡΠΎΡΡΠΎΡΠ±Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°. ΠΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΠ΄Π΅ Π»Π°ΠΏΡΠΎΠΏ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΈΠ»ΠΈ ΠΊΠΎΡ Π±ΠΈΠ»ΠΎ Π΄ΡΡΠ³ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΡΡΠΎ Π΅ Π΄Π΅Π» ΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ Kubernetes.
Cctl ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΠΈ ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π° ΠΊΠ»Π°ΡΡΠ΅Ρ-Π°ΠΏΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΠΎΠ΄ Π³ΠΎΡΠ΅ ΠΊΠ°ΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π·Π° CRUD ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΈ. Π’ΠΎΡ ΠΊΠΎΡΠΈΡΡΠΈ
ΠΠ°ΠΊΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Klusterkit ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ:
1 - ΠΠΈΠ»ΠΎ ΠΊΠΎΡΠ° ΠΎΠ΄ ΡΡΠΈΡΠ΅ Π°Π»Π°ΡΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΡΠΎΠ±Π΅ΡΠ΅ ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° go get:
go get -u github.com/platform9/cctl
go get -u github.com/platform9/nodeadm
go get -u github.com/kubernetes-sigs/etcdadm
2 β ΠΠ²ΠΈΠ΅ ΠΈΠ·Π²ΡΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΏΠΎΡΠΎΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠΏΠ°ΠΊΡΠ²Π°Π°Ρ ΠΈ ΠΊΠΎΠΏΠΈΡΠ°Π°Ρ Π²ΠΎ ΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π²ΠΈΡΠΎΠΊΠΎ Π΄ΠΎΡΡΠ°ΠΏΠ½ΠΈΠΎΡ ΠΊΠ»Π°ΡΡΠ΅Ρ Kubernetes. Π‘ΡΠ°Π²Π΅ΡΠ΅ Π³ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈΡΠ΅ nodeadm ΠΈ etcdadm Π²ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΠΌΠΈΡΠ΅ Π½Π° Π²Π΅ΡΠ·ΠΈΠΈ:
cp $GOPATH/bin/nodeadm /var/cache/ssh-provider/nodeadm//
cp $GOPATH/bin/etcdadm /var/cache/ssh-provider/etcdadm//
3 β ΠΠΊΠΎ ΡΡΠ΅Π±Π° Π»ΠΎΠΊΠ°Π»Π½ΠΎ Π΄Π° ΠΎΡΠΊΠ΅ΡΡΡΠΈΡΠ°ΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅Ρ ΠΡΠ±Π΅ΡΠ½Π΅ΡΠ΅Ρ, Π²ΠΎ ΡΠΈΠ·ΠΈΡΠΊΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π° ΡΡΠ΅Π΄ΠΈΠ½Π°, ΠΏΠΎΡΡΠ΅Π±Π½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π·Π΅ΠΌΠ°Ρ ΠΎΠ΄Π½Π°ΠΏΡΠ΅Π΄ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΡΠΎ ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° Π·Π° ΠΏΡΠ΅Π·Π΅ΠΌΠ°ΡΠ΅ nodeadm ΠΈ etcdadm. ΠΠΎΡΠΎΠ° ΠΏΡΠ΅Π·Π΅ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΡΠ°Π²ΠΊΠΈ (Ρ.Π΅. kubelet ΠΈ kubelet Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° Π·Π° systemd, CNI ΠΈΠ·Π²ΡΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ, kubeadm Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, ΡΠΈΡΠ΅ ΡΠ»ΠΈΠΊΠΈ ΠΎΠ΄ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅Ρ Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ Π³ΠΈ Kubernetes, keepalived ΡΠ»ΠΈΠΊΠ° ΠΈ systemd Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, ΠΈΡΠ½. ΡΠΎ cctl, nodeadm ΠΈ etcdadm. (ΠΠΈΠ΄Π΅ΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ Π²ΠΎ
4 β ΠΡΠΊΠ°ΠΊΠΎ ΡΓ¨ Π΅ Π½Π° ΠΌΠ΅ΡΡΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ ΠΏΡΠ²ΠΈΠΎΡ ΠΊΠ»Π°ΡΡΠ΅Ρ Kubernetes ΡΠΎ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ:
β ΠΡΠ²ΠΎ ΠΊΡΠ΅ΠΈΡΠ°ΡΡΠ΅ Π°ΠΊΡΠ΅Π΄ΠΈΡΠΈΠ²ΠΈ Π·Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ.
$GOPATH/bin/cctl create credential --user root --private-key ~/.ssh/id_rsa
β ΠΠΎΡΠΎΠ° ΠΊΡΠ΅ΠΈΡΠ°ΡΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ. βΠΏΠΎΠΌΠΎΡ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° Π»ΠΈΡΡΠ° Π½Π° ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ΠΈ ΠΎΠΏΡΠΈΠΈ.
$GOPATH/bin/cctl create cluster --pod-network 192.168.0.0/16 --service-network 192.169.0.0/24
β ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΊΡΠ΅ΠΈΡΠ°ΡΡΠ΅ ΡΠ° ΠΏΡΠ²Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π° Π²ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ.
$GOPATH/bin/cctl create machine --ip $MACHINE_IP --role master
ΠΡΠΎΡΠΈΡΠ°ΡΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π°
ΠΠ·Π²ΠΎΡ: www.habr.com