kubernetes:pods 创建自动化
kubernetes: pods creation automation
在学习 kubernetes 时,经常会出现 kubectl、主节点、api 服务器等术语。 Kubectl 是与 k8s 集群交互的客户端,用于执行创建 pods、管理它们等操作。例如,在本地我使用它来处理 minikube。
但 kubectl 更像是 运行 命令的手动交互。在生产环境中,pods 应该在需要时自动生成。那么这是怎么发生的呢?还是我对 kubectl 的理解有误?
对于 Production 也可以使用 Kubectl 或 Helm 或 kustomize 来应用YAML
理想情况下,在生产环境中,您应该在最后应用 YAML 来部署应用程序。
您可以选择helm 或kustomize 来创建或生成YAML 作为特定的应用程序。 YAML 准备就绪后,您可以使用 kubectl.
应用 YAML
kubectl apply -f file-name.yaml
或者您可以使用 helm chart 来部署应用程序的发布。
helm install <chart-name>
头盔阅读更多:https://helm.sh/docs/topics/charts/
Kustomize 是 K8s 本机配置管理阅读更多:https://kustomize.io/
最终,您将为应用程序创建如下所示的 YAML,并使用 Kubectl 进行应用,dev、stag 或 prod 都无关紧要
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
在没有 YAML 的情况下使用 kubectl cli 进行部署也可以,但灵活性不高。
虽然通过查看 YAML,您可以了解部署的内容和配置。
在学习 kubernetes 时,经常会出现 kubectl、主节点、api 服务器等术语。 Kubectl 是与 k8s 集群交互的客户端,用于执行创建 pods、管理它们等操作。例如,在本地我使用它来处理 minikube。
但 kubectl 更像是 运行 命令的手动交互。在生产环境中,pods 应该在需要时自动生成。那么这是怎么发生的呢?还是我对 kubectl 的理解有误?
对于 Production 也可以使用 Kubectl 或 Helm 或 kustomize 来应用YAML
理想情况下,在生产环境中,您应该在最后应用 YAML 来部署应用程序。
您可以选择helm 或kustomize 来创建或生成YAML 作为特定的应用程序。 YAML 准备就绪后,您可以使用 kubectl.
应用 YAMLkubectl apply -f file-name.yaml
或者您可以使用 helm chart 来部署应用程序的发布。
helm install <chart-name>
头盔阅读更多:https://helm.sh/docs/topics/charts/
Kustomize 是 K8s 本机配置管理阅读更多:https://kustomize.io/
最终,您将为应用程序创建如下所示的 YAML,并使用 Kubectl 进行应用,dev、stag 或 prod 都无关紧要
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
在没有 YAML 的情况下使用 kubectl cli 进行部署也可以,但灵活性不高。
虽然通过查看 YAML,您可以了解部署的内容和配置。