目录
kubernetes 实操:tomcat+mysql
1. 先搭建k8s
https://blog.csdn.net/weixin_45842014/article/details/108757132
2. Kubernetes 实战:部署DashBoard
https://blog.csdn.net/weixin_45842014/article/details/108778229
上面链接只用实现到登录到web界面就可以
3. 启动容器mysql、myweb
mysql服务
cd /usr/local/src
mkdir web
vim mysql-rc.ymal ------编写文件
apiVersion: v1
kind: ReplicationController #副本控制器RC
metadata:
name: mysql #RC的名称(全局唯一)
spec:
replicas: 1 #pod副本的期待数量
selector: #选择器:用来选择对象的
app: mysql
template: #根据模板创建pod实例
metadata:
labels:#pod副本拥有的标签,对应RC的selector
app: mysql
spec:
containers: #pod内 容器的定义部分
- name: mysql #容器名称
image: mysql:5.6 #容器对应的镜像名称
ports: #容器应用监听的端口号
- containerPort: 3306
env: #注入容器内的环境变量
- name: MYSQL_ROOT_PASSWORD
value: "123456"
cd /usr/local/src/web
vim mysql-svc.yaml -----编写文件
apiVersion: v1
kind: Service #主要提供负载均衡和服务发现
metadata:
name: mysql
spec:
ports: #service提供服务的端口号
- port: 3306
selector: #选择器 (自动发现拥有此标签的pod)
app: mysql
web服务
cd /usr/local/src/web
vim myweb-rc.yaml -----编辑文件
apiVersion: v1
kind: ReplicationController
metadata:
name: myweb
spec:
replicas: 3
selector:
app: myweb
template:
metadata:
labels:
app: myweb
spec:
containers:
- name: myweb
image: kubeguide/tomcat-app:v1
ports:
- containerPort: 8080
env:
- name: MYSQL_SERVICE_HOST
value: 'mysql'
- name: MYSQL_SERVICE_PORT
value: '3306'
cd /usr/local/src/web
vim myweb-svc.yaml -----编辑文件
apiVersion: v1
kind: Service
metadata:
name: myweb
spec:
type: NodePort #开启外网访问模式
ports:
- port: 8080
nodePort: 30010 #将容器的8080端口映射到主机节点的30010端口
selector:
app: myweb
cd /usr/local/src/web
kubectl create -f . ------创建所有(. 代表当前 文件有mysql-rc.yaml、mysql-svc.yaml、myweb-rc.yaml、myweb-svc.yaml)
netstat -lptnu|grep 30010 -----查看端口是否启动