繁体   English   中英

kubernetes DNS 是如何工作的,服务的主机名是什么?

[英]How does kubernetes DNS work and what is the hostname of the service?

例如,我部署了一个 ASP.NET Core Web api“mydotnetservice1”。 我尝试使用http://mydotnetservice1:5000调用 API,但它似乎不起作用,这是正确的地址吗?

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: mydotnetservice1
spec:
  replicas: 2
  template:
    metadata:
      labels:
        app: mydotnetservice1
    spec:
      containers:
        - image: "mydockerimages/mydotnetservice1"
          imagePullPolicy: Always
          name: mydotnetservice1
          ports:
            - containerPort: 80

——

apiVersion: v1
kind: Service
metadata:
  name: mydotnetservice1
spec:
  type: LoadBalancer
  ports:
  - port: 5000
    targetPort: 80
  selector:
    app: mydotnetservice1

服务的 dns 名称采用以下格式

servicename.namespace.svc.cluster.local

服务是虚拟的。 您可以在服务定义中使用端口作为 80。 这样,可以避免端口。 在您的情况下,端口号为 5000。您还需要包含端口号以从其他 pod 调用该服务

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM