一、rc/deployment,保证有指定数量的pod资源在运行;svc让pod资源能够被外界所访问

二、定义mysql-rc.yaml文件

[root@k8s-master tomcat]# cat mysql-rc.yaml 
apiVersion: v1
kind: ReplicationController
metadata:
  name: mysql
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: mysql
    spec:
      containers:
        - name: mysql
          image: 10.0.0.11:5000/mysql:5.7
          ports:
          - containerPort: 3306
          env:
          - name: MYSQL_ROOT_PASSWORD
            value: '123456'

三、定义mysql-svc.yaml文件

[root@k8s-master tomcat]# cat mysql-svc.yaml 
apiVersion: v1
kind: Service
metadata:
  name: mysql
spec:
  ports:
    - port: 3306
      targetPort: 3306
  selector:
    app: mysql

四、运行mysql的rc+svc资源

[root@k8s-master tomcat]# kubectl create -f mysql-rc.yaml 
replicationcontroller "mysql" created
[root@k8s-master tomcat]# kubectl create -f mysql-svc.yml 
service "mysql" created

五、查看mysql-svc的vip地址

[root@k8s-master tomcat]# kubectl get svc
NAME         CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
kubernetes   10.254.0.1      <none>        443/TCP    1h
mysql        10.254.55.178   <none>        3306/TCP   19m

六、定义tomcat-rc.yaml文件

[root@k8s-master tomcat]# cat tomcat-rc.yaml 
apiVersion: v1
kind: ReplicationController
metadata:
  name: myweb
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: myweb
    spec:
      containers:
        - name: myweb
          image: 10.0.0.11:5000/tomcat-app:v2
          ports:
          - containerPort: 8080
          env:
          - name: MYSQL_SERVICE_HOST
            value: '10.254.55.178' #vip地址连接mysql
          - name: MYSQL_SERVICE_PORT
            value: '3306'

七、定义tomcat-svc.yaml文件

[root@k8s-master tomcat]# cat tomcat-svc.yaml 
apiVersion: v1
kind: Service
metadata:
  name: myweb
spec:
  type: NodePort
  ports:
    - port: 8080
      nodePort: 30008
  selector:
    app: myweb

八、运行tomcat的rc+svc资源

[root@k8s-master tomcat]# kubectl create -f tomcat-rc.yaml 
replicationcontroller "myweb" created
[root@k8s-master tomcat]# kubectl create -f tomcat-svc.yaml 
service "myweb" created

九、pod资源正常运行

[root@k8s-master tomcat]# kubectl get pod 
NAME          READY     STATUS    RESTARTS   AGE
mysql-zwr37   1/1       Running   0          13m
myweb-txm2n   1/1       Running   0          1m

十、页面访问 10.0.0.12:30008

Categories: docker&k8s

0 Comments

发表评论

Avatar placeholder

邮箱地址不会被公开。 必填项已用*标注