• 创建一个service


    一,nginx_deploy.yaml

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-deployment
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
            - name: nginx
              image: nginx
              readinessProbe:
                exec:
                  command:
                    - cat
                    - /tmp/healthy
                initialDelaySeconds: 5
                periodSeconds: 5

    *注意,yaml里面得label字段,service通过label字段,来和pod形式对应关系

    二:创建nginx服务pod

    k create -f nginx-deploy.yaml

    三,service得yaml

    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-basic
    spec:
      type: ClusterIP
      ports:
        - port: 80
          protocol: TCP
          name: http
      selector:
        app: nginx

    * 注意selector字段,通过selector字段,来找到对应得pod

    四,创建service

    k create -f service.yaml

    五,nginx一直没有ready, 查看:

    k describe po nginx-deployment-57586646f7-gknvs

    六,缺少健康检查文件, 容器里创建一个:

    k exec -it nginx-deployment-57586646f7-gknvs -- touch /tmp/healthy

    七,pod  ready之后,查看一下endpoint,endpoint里存放service和pod得对应关系

    八,测试service是否可用,这个虚拟ip只能在集群内测试使用:

    curl 10.108.185.127

    九: 如果想集群外访问这个服务,需要修改下service 类型:

    九:可以通过节点ip:31135 来访问nginx服务了

    然而并没有通,待解

  • 相关阅读:
    1166
    SpringBoot(八) Caching
    将本地项目上传到码云
    《码出高效 Java开发手册》
    Sourcetree报错: 您没有已经配置扩展集成设置的远端
    看准网免登陆查看
    redis入门基础
    Java泛型类型
    SpringBoot(七) Working with data: SQL
    ORA-12514: TNS:监听程序当前无法识别连接描述符中请求的服务
  • 原文地址:https://www.cnblogs.com/chaojiyingxiong/p/16054230.html
Copyright © 2020-2023  润新知