zoukankan      html  css  js  c++  java
  • k8s外部访问内部的service

    如果不指定Service的spec.type的值,创建的Service的类型默认为ClusterIP类型。这种类型的Service只会得到虚拟的IP和端口,只能在Kubernetes集群内部被访问。

    如果指定Service的spec.type的值为“NodePort”,创建的Service的类型默认为NodePort类型。这种类型的Service除了会得到虚拟的IP和端口,Kubernetes还会在所有Node节点上为其分配端口。分配的端口的值可以通过spec.ports[*].nodePort指定,或由Knubernetes在配置好的区间里分配(默认为30000-32767)。这种Service即可以从Kubernetes集群通过虚拟IP:端口访问,也可以从集群外部通过Node节点的IP:nodePort访问

     

    如果指定Service的spec.type的值为“LoadBalancer”,创建的Service的类型默认为LoadBalancer类型。这种类型的Service除了会得到虚拟的IP和端口,Kubernetes还会在所有Node节点上为其分配端口,然后为其开通负载均衡。这种Service即可以从Kubernetes集群通过虚拟IP:端口访问,也可以从集群外部通过Node节点的IP:nodePort访问,还可以通过负载均衡的IP访问。

     

    pyxis-controller.yaml

    apiVersion: v1

    kind: ReplicationController

    metadata:

      name: firmament-pyxis

      namespace: sky-firmament

      labels:

        app: firmament-pyxis

        version: v0.3

    spec:

      replicas: 1

      selector:

        app: firmament-pyxis

      template:

        metadata:

          labels:

            app: firmament-pyxis

            version: v0.3

        spec:

          nodeName: gprsgx11

          containers:

          - name: firmament-pyxis

            image: reg.ai.cbbscloud.com:5000/pyxis:v0.3

            imagePullPolicy: Always

            env:

               - name: KUBERNETES_URL

                 valueFrom:

                   configMapKeyRef:

                     name: config

                     key: kubernetes.url

            resources:

              limits:

                cpu: 500m

                memory: 200Mi

              requests:

                cpu: 500m

                memory: 200Mi

            ports:

            - containerPort: 8080

            volumeMounts:

              - name: kubectl-path

                mountPath: /usr/bin/kubectl

          volumes:

            - name: kubectl-path

              hostPath:

     

                path: /usr/bin/kubectl

     

    pyxis-service.yaml

    apiVersion: v1

    kind: Service

    metadata:

      name: pyxis-firmament-com

      namespace: sky-firmament

      labels:

        app: firmament-pyxis

    spec:

      selector:

        app: firmament-pyxis

      ports:

      - port: 8081

        targetPort: 8080

        nodePort: 31081

     

      type: NodePort





  • 相关阅读:
    将html转换成image图片png格式
    maven 发布打包部署 命令
    javap 指令集
    国内maven仓库地址
    五行大义
    oracle
    【Centos linux系统】命令行(静默)安装oracle 11gR2
    windows安装mysql-5.7压缩版详细教程
    k8s入门系列之扩展组件(一)DNS安装篇
    k8s入门系列之集群安装篇
  • 原文地址:https://www.cnblogs.com/fangh/p/9038149.html
Copyright © 2011-2022 走看看