Maison > Tutoriel CMS > WordPresse > le corps du texte

Exemple officiel : k8s gère facilement un wordpress

藏色散人
Libérer: 2021-11-24 16:02:53
avant
3519 Les gens l'ont consulté

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
Copier après la connexion
# 下载两个配置文件
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
Copier après la connexion

À 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
Copier après la connexion

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!

Étiquettes associées:
source:juejin.im
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal