La colonne Tutoriel WordPress suivante vous présentera l'exemple de méthode officielle de déploiement de wordpress dans k8s. J'espère que cela sera utile aux amis dans le besoin !
exemple officiel de méthode de déploiement de wordpress de k8s
Il est facile de dire qu'il est facile d'exécuter un wordpress en utilisant k8s, mais il est difficile de dire qu'il est difficile de dire que les exigences de base sont relativement élevées, impliquant le service, persistentVolumeClaim, volumes
La facilité réside dans l'exemple officiel Ready-made (https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/)
Suivez le tutoriel, cela ne prend que quelques lignes de code pour le faire
Tout d'abord, créez une personnalisation. Le contenu du fichier yaml est le suivant
secretGenerator: - name: mysql-pass literals: - password=123456 resources: - mysql-deployment.yaml - wordpress-deployment.yaml
# 下载两个配置文件 curl -LO https://k8s.io/examples/application/wordpress/mysql-deployment.yaml curl -LO https://k8s.io/examples/application/wordpress/wordpress-deployment.yaml # 最后运行 kubectl apply -k . # 查看暴露出来的IP kubectl get services wordpress
À propos de kustomize
Un outil simple pour réduire la charge de travail liée à la maintenance de plusieurs environnements yaml
. Points faibles résolus par kustomize
Les applications générales auront plusieurs environnements de déploiement : environnement de développement, environnement de test, environnement de production, plusieurs environnements signifient qu'il existe plusieurs ensembles de ressources d'application K8S YAML. Il n'y a que des différences de configuration mineures entre tant d'ensembles de YAML, telles que différentes versions d'images, différentes étiquettes, etc. YAML dans ces différents environnements conduit souvent à des erreurs de configuration dues à la négligence humaine. De plus, la maintenance de YAML dans plusieurs environnements se fait généralement en copiant le YAML dans un environnement et en modifiant les différences. Certains outils de gestion d'applications tels que Helm nécessitent un apprentissage supplémentaire de la syntaxe DSL. Pour résumer ce qui précède, les applications avec plusieurs environnements dans l'environnement k8s rencontrent souvent les problèmes suivants :
Comment gérer les ressources Kubernetes YAML des applications dans différents environnements ou différentes équipes Comment gérer les légères différences dans différents environnements d'une certaine manière, afin que la configuration des ressources puisse être réutilisée, réduisant ainsi la charge de travail de copie et de modification. Comment simplifier le processus de maintenance des applications sans apprentissage supplémentaire de la syntaxe des modèles ? Kustomize résout les problèmes ci-dessus de la manière suivante :
kustomize utilise Base & Overlays (expliqué). ci-dessous) kustomize utilise la méthode patch pour maintenir les configurations d'application dans différents environnements, et utilise la méthode patch pour réutiliser la configuration de base et implémenter la réutilisation des ressources dans la différence entre la description de superposition et la configuration de l'application de base. Toutes les gestions de kustomize sont des YAML natifs de Kubernetes. fichiers, et il n'est pas nécessaire d'apprendre la syntaxe DSL supplémentaire
Remarque
Étant donné que le type de service officiel est LoadBalancer, il n'est valable que lorsqu'il est déployé sur le cloud public. Si vous utilisez des k8 construits par vous-même, vous pouvez utiliser celui de NodePort. service pour fournir un exemple de référence
apiVersion: v1 kind: Service metadata: name: service-wordpress labels: app: wordpress spec: selector: app: wordpress tier: frontend type: NodePort # service类型 ports: - port: 80 # 默认情况下,为了方便起见,`targetPort` 被设置为与 `port` 字段相同的值。 nodePort: 30012 # 指定绑定的node的端口(默认的取值范围是:30000-32767), 如果不指定,会默认分配 targetPort: 80
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!