k8s-endpoint

发布时间 2023-08-04 18:04:45作者: vba是最好的语言

第一步创建mysql的pod

apiVersion: v1
kind: Pod
metadata:
  name: mysql-pod
  namespace: dev
  labels:
    app: mysql-pod
spec:
  containers:
  - name: mysql-pod
    image: mysql:5.7
    env:
    - name: MYSQL_ROOT_PASSWORD
      value: "123456"
    - name: MYSQL_DATABASE
      value: ssm
    args:
      - "--lower_case_table_names=1"
      - "--character-set-server=utf8mb4"
      - "--collation-server=utf8mb4_general_ci"
      - "--default-authentication-plugin=mysql_native_password"    
    ports:
    - containerPort:  3306
  restartPolicy: Always

第二步创建 service。注意selector: app:mysql-pod,不能写错

apiVersion: v1
kind: Service
metadata:
  name: mysql-service    #Service 的名称
  namespace: dev
  labels:         #Service 自己的标签
    app: mysql-svc    #为该 Service 设置 key 为 app,value 为 nginx 的标签
spec:        #这是关于该 Service 的定义,描述了 Service 如何选择 Pod,如何被访问
  selector:        #标签选择器
    app: mysql-pod    #选择包含标签 app:nginx 的 Pod
  ports:
  - name: mysql-port    #端口的名字
    protocol: TCP        #协议类型 TCP/UDP
    port: 3306            #集群内的其他容器组可通过 80 端口访问 Service
    targetPort: 3306 # 集群内部mysql-pod暴露的端口。
    nodePort: 30306
  type: NodePort     #Serive的类型,ClusterIP/NodePort/LoaderBalancer

上面两个完成后,查看endpoints可以在mysql-pod上看到endpoints信息,如下图:

 

详细信息:https://www.cnblogs.com/liwenchao1995/p/16699840.html