Comment créer une plateforme d'orchestration de conteneurs sûre et fiable sous Linux ?
Introduction :
La technologie des conteneurs a été largement utilisée et développée ces dernières années. Son émergence a rendu le déploiement et les mises à niveau des applications plus flexibles et efficaces. La plateforme d'orchestration de conteneurs peut encore améliorer l'automatisation et la fiabilité de la gestion des conteneurs. Cet article explique comment créer une plate-forme d'orchestration de conteneurs sûre et fiable sous Linux et fournit des exemples de code pertinents.
La commande pour installer Docker sur Ubuntu est la suivante :
sudo apt update sudo apt install docker.io
La commande pour installer Kubernetes sur Ubuntu est la suivante :
sudo apt update sudo apt install kubeadm kubelet kubectl
Initialiser le cluster Kubernetes
Avant de créer la plateforme d'orchestration de conteneurs, vous devez initialiser le cluster Kubernetes. Tout d'abord, exécutez la commande suivante sur le nœud maître pour l'initialisation :
sudo kubeadm init
Ensuite, selon la sortie du terminal, enregistrez le jeton généré. Ensuite, exécutez la commande suivante sur le nœud de travail pour rejoindre le cluster :
sudo kubeadm join <master-ip>:<master-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
où, <master-ip>
是主节点的IP地址,<master-port>
是主节点的端口号,<token>
和<hash>
est le jeton et le hachage générés lors de l'initialisation du nœud maître.
Exécutez la commande suivante sur le nœud maître pour installer :
kubectl create -f https://docs.projectcalico.org/v3.14/manifests/calico.yaml
L'exemple de fichier YAML est le suivant :
apiVersion: apps/v1 kind: Deployment metadata: name: my-app spec: replicas: 3 selector: matchLabels: app: my-app template: metadata: labels: app: my-app spec: containers: - name: my-app-container image: my-app-image:latest ports: - containerPort: 80
Ensuite, exécutez la commande suivante pour déployer :
kubectl apply -f my-app.yaml
Déployer Prometheus et Grafana :
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.28.0/deploy/mandatory.yaml kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.28.0/deploy/provider/cloud-generic.yaml
Déployer EFK :
kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/es-statefulset.yaml kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/es-service.yaml kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-ds.yaml kubectl apply -f https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/kibana-service.yaml
Conclusion :
Cet article présente comment créer une plate-forme d'orchestration de conteneurs sûre et fiable sous Linux. En installant Docker et Kubernetes et en utilisant le plug-in réseau Calico, vous pouvez obtenir une haute disponibilité et une mise à l'échelle élastique des conteneurs. De plus, en déployant Prometheus et Grafana pour la surveillance et en déployant EFK pour la gestion des journaux, la fiabilité et la sécurité de la gestion des conteneurs peuvent être améliorées. J'espère que cet article sera utile à tout le monde dans la création d'une plateforme d'orchestration de conteneurs.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!