共计 1646 个字符,预计需要花费 5 分钟才能阅读完成。
本篇内容介绍了“k8s 怎么跑起一个 wordpress”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
k8s 部署 wordpress 官方例子方式
要使用 k8s 跑起一个 wordpress 说容易也容易,说难也难 难点是对基础要求比较高,涉及到 Service,persistentVolumeClaim,volumes
按照教程,只需要几行代码就可以搞定
首先,创建一个 kustomization.yaml 文件 内容如下
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
关于 kustomize
简单说一个工具,减少维护多套环境 yaml 的工作量
kustomize 解决的痛点
一般应用都会存在多套部署环境:开发环境、测试环境、生产环境,多套环境意味着存在多套 K8S 应用资源 YAML。而这么多套 YAML 之间只存在微小配置差异,比如镜像版本不同、Label 不同等,而这些不同环境下的 YAML 经常会因为人为疏忽导致配置错误。再者,多套环境的 YAML 维护通常是通过把一个环境下的 YAML 拷贝出来然后对差异的地方进行修改。一些类似 Helm 等应用管理工具需要额外学习 DSL 语法。总结以上,在 k8s 环境下存在多套环境的应用,经常遇到以下几个问题:
如何管理不同环境或不同团队的应用的 Kubernetes YAML 资源 如何以某种方式管理不同环境的微小差异,使得资源配置可以复用,减少 copy and change 的工作量 如何简化维护应用的流程,不需要额外学习模板语法 Kustomize 通过以下几种方式解决了上述问题:
kustomize 通过 Base Overlays 方式 (下文会说明) 方式维护不同环境的应用配置 kustomize 使用 patch 方式复用 Base 配置,并在 Overlay 描述与 Base 应用配置的差异部分来实现资源复用 kustomize 管理的都是 Kubernetes 原生 YAML 文件,不需要学习额外的 DSL 语法
注意
由于官方中使用 service 类型是 LoadBalancer,这个只有部署到公有云上才有效,如果你使用自己搭建的 k8s,可以使用 NodePort 的 service 提供一个参考的例子
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
“k8s 怎么跑起一个 wordpress”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!