Die folgende Kolumne „WordPress-Tutorial“ stellt Ihnen die offizielle Beispielmethode für die Bereitstellung von WordPress in k8s vor. Ich hoffe, dass sie Freunden in Not hilfreich sein wird!
k8s offizielle Beispielmethode für die Bereitstellung von WordPressEs ist leichter gesagt als getan, ein WordPress mit k8s auszuführen, aber es ist auch schwer zu sagen, dass die Grundanforderungen relativ hoch sind, einschließlich Service, persistentVolumeClaim und Volumes
The Die Leichtigkeit liegt im offiziellen vorgefertigten Beispiel (https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/)
Folgen Sie dem Tutorial, es sind nur ein paar Zeilen Code erforderlich Machen Sie es fertig
Erstellen Sie zunächst eine Kustomisierung. Der Inhalt der Yaml-Datei lautet wie folgt:
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
Ein einfaches Tool, um den Arbeitsaufwand für die Pflege mehrerer Yaml-Umgebungen zu reduzieren
Durch Kustomize gelöste ProblemeAllgemeine Anwendungen verfügen über mehrere Bereitstellungsumgebungen: Entwicklungsumgebung, Testumgebung, Produktionsumgebung. Mehrere Umgebungen bedeuten, dass es mehrere Sätze von K8S-Anwendungsressourcen-YAML gibt. Es gibt nur geringfügige Konfigurationsunterschiede zwischen so vielen YAML-Sätzen, wie z. B. unterschiedliche Bildversionen, unterschiedliche Beschriftungen usw. YAML führt in diesen unterschiedlichen Umgebungen häufig zu Konfigurationsfehlern aufgrund menschlicher Fahrlässigkeit. Darüber hinaus erfolgt die YAML-Wartung in mehreren Umgebungen normalerweise durch Kopieren des YAML in einer Umgebung und Ändern der Unterschiede. Einige Anwendungsverwaltungstools wie Helm erfordern zusätzliche Kenntnisse der DSL-Syntax. Zusammenfassend lässt sich sagen, dass Anwendungen mit mehreren Umgebungen in der k8s-Umgebung häufig auf die folgenden Probleme stoßen:
Wie verwaltet man die Kubernetes-YAML-Ressourcen von Anwendungen in verschiedenen Umgebungen oder verschiedenen Teams? Wie verwaltet man die geringfügigen Unterschiede in verschiedenen Umgebungen auf eine bestimmte Weise? Damit Ressourcenkonfigurationen wiederverwendet werden können, reduziert sich der Arbeitsaufwand für das Kopieren und Ändern von Anwendungen, ohne dass zusätzliches Erlernen der Vorlagensyntax erforderlich ist. Kustomize verwendet die Base & Overlays-Methode (unten erklärt) kustomize verwendet die Patch-Methode, um Anwendungskonfigurationen in verschiedenen Umgebungen zu verwalten, und verwendet die Patch-Methode, um die Basiskonfiguration wiederzuverwenden und die Wiederverwendung von Ressourcen im Unterschied zwischen der Overlay-Beschreibung und der Basisanwendungskonfiguration zu implementieren. Alle kustomize-Verwaltungen sind Kubernetes native YAML-Dateien, und es ist nicht erforderlich, zusätzliche DSL-Syntax zu lernen
HinweisDa der offizielle Diensttyp LoadBalancer ist, ist dies nur gültig, wenn Sie selbst erstellte k8s verwenden Verwenden Sie den Dienst von NodePort, um ein Referenzbeispiel bereitzustellen Das obige ist der detaillierte Inhalt vonOffizielles Beispiel: k8s führt problemlos WordPress aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!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