配置清单重要字段:
    image.png

    apiVersion:
    kind:
    metadata:
    spec:
      clusterIP: 可以自定义,也可以动态分配
      ports:(与后端容器端口关联)
      selector:(关联到哪些pod资源上)
      type:服务类型

    清单举例:
    image.png

    [root@master manifests]# vim redis-svc.yaml

    apiVersion: v1
    kind: Service
    metadata:
    name: redis
    namespace: default
    spec:
    selector:
    app: redis
    role: logstore
    clusterIP: 10.97.97.97
    type: ClusterIP
    ports:
    - port: 6379 #容器端口
    targetPort: 6379 #Pod端口

    创建服务:
    image.png

    [root@master manifests]# kubectl apply -f redis-svc.yaml

    service/redis created

    [root@master manifests]# kubectl get svc

    NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
    kubernetes ClusterIP 10.96.0.1 443/TCP 4d22h
    redis ClusterIP 10.97.97.97 6379/TCP 4s

    查看服务:
    image.png

    [root@master manifests]# kubectl describe svc redis

    Name: redis
    Namespace: default
    Labels:
    Annotations: kubectl.kubernetes.io/last-applied-configuration:
    {“apiVersion”:”v1”,”kind”:”Service”,”metadata”:{“annotations”:{},”name”:”redis”,”namespace”:”default”},”spec”:{“clusterIP”:”10.97.97.97”,”…
    Selector: app=redis,role=logstore
    Type: ClusterIP
    IP: 10.97.97.97  #service ip
    Port: 6379/TCP
    TargetPort: 6379/TCP
    Endpoints: 10.244.2.43:6379 #此处的ip+端口就是pod的ip+端口
    Session Affinity: None
    Events:

    [root@master manifests]# kubectl get pods -o wide

    NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
    filebeat-ds-h8rwk 1/1 Running 0 8m36s 10.244.1.39 node01
    filebeat-ds-kzhxw 1/1 Running 0 8m36s 10.244.2.44 node02
    readiness-httpget-pod 1/1 Running 0 2d21h 10.244.2.18 node02
    redis-76c85b5744-94djm 1/1 Running 0 8m36s 10.244.2.43 node02

    总结:
    image.png

    • service不会直接到pod,service是直接到endpoint资源,就是地址加端口,再由endpoint再关联到pod


    • service只要创建完,就会在dns中添加一个资源记录进行解析,添加完成即可进行解析,资源记录的格式为:SVC_NAME.NS_NAME.DOMAIN.LTD.


    • 默认的集群service 的A记录:svc.cluster.local.


    • redis服务创建的A记录:redis.default.svc.cluster.local.

    相关文档:https://blog.csdn.net/kenkao/article/details/87375435
    相关文档:https://www.cnblogs.com/wlbl/p/10694316.html