K8S简单部署案例
2021/6/13 10:21:16
本文主要是介绍K8S简单部署案例,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
部署MYSQL
准备yaml文件
位置:/etc/kubernetes/manifests
mysql-rc.yaml
apiVersion: v1 kind: ReplicationController metadata: name: mysql spec: replicas: 1 selector: app: mysql template: metadata: labels: app: mysql spec: containers: - name: mysql image: mysql:5.7.29 ports: - containerPort: 3306 env: - name: MYSQL_ROOT_PASSWORD value: "123456"
mysql-svc.yaml
apiVersion: v1 kind: Service metadata: name: mysql spec: type: NodePort ports: - port: 3307 nodePort: 32307 targetPort: 3306 selector: app: mysql
在master上执行
kubectl create -f mysql-rc.yaml
kubectl create -f mysql-svc.yaml
进入到容器中
- 方式一:使用docker命令:
查看pod运行在哪台节点
kubecte get pods -o wide
查看mysql的镜像名
docker ps -a
docker命令进入
docker exec -it a5d12fedbc19 /bin/bash
- 方式二:使用kubectl进入
进入master节点
kubectl run -it --rm --image=mysql:5.7 --restart=Never -- mysql -p123456
部署nginx
无状态部署
- 生成yaml配置文件
kubectl create deployment web --image=nginx -o yaml --dry-run >> nginx.yaml
- 使用yaml文件进行部署
kubectl apply -f nginx.yaml
- 查看创建的pod
kubectl get pods
- 对外暴露访问端口
- 生成yaml配置文件
kubectl expose deployment web --port=80 --type=NodePort --target-port=80 --name=web1 -o yaml >> nginx-web1.yaml
- 使用yaml文件进行部署
kubectl apply -f nginx-web1.yaml
访问任意一个node节点验证
http://192.168.119.12:31132/
使用StatefulSet部署有状态应用
- 准备配置文件
apiVersion: v1 kind: Service metadata: name: nginx labels: app: nginx spec: ports: - port: 80 name: web clusterIP: None selector: app: nginx --- apiVersion: apps/v1 kind: StatefulSet metadata: name: nginx-statefulset namespace: default spec: serviceName: nginx replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:latest ports: - containerPort: 80
- 使用yaml文件进行部署
kubectl apply -f sts.yaml
- 查看创建的pod
三个副本
进入其中一个容器查看默认生成的域名
这篇关于K8S简单部署案例的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-2610 个你不知道自己需要的 Kubernetes 工具
- 2024-09-25MicroK8s 概览 — 使用一条命令部署自己的 Kubernetes 集群
- 2024-08-19云原生周刊:Kubernetes v1.31 发布
- 2024-08-13探索 Kubernetes 持久化存储之 Rook Ceph 初窥门径
- 2024-07-25探索 Kubernetes 持久化存储之 Longhorn 初窥门径
- 2024-07-23云原生周刊:Kubernetes v1.31 中的移除和主要变更|2024.7.22
- 2024-07-22Kubernetes 持久化存储之 NFS 终极实战指南
- 2024-07-15云原生周刊:Argo Rollouts 支持 Kubernetes Gateway API 1.0 | 2024.7.1
- 2024-07-15云原生周刊:一条 Kubernetes 命令引发的悲剧
- 2024-07-15K8s GPU 资源管理探索:在 KubeSphere 上部署 AI 大模型 Ollama