Azure 用自定义名称替换kubernetes中的ip地址
我创建了一个示例spring boot应用程序,并执行了以下操作:- 1.创建了一个docker映像 2.创建了Azure容器注册表,并进行了docker推送 3.在Azure Kubernetes服务中创建了一个群集并成功部署。我已为此选择了外部端点选项 对于服务对服务呼叫,我不想像使用IP一样使用另一个自定义名称,但我如何才能做到这一点? 此外,如果我选择了内部,那么是否有任何方法来替换名称。Azure 用自定义名称替换kubernetes中的ip地址,azure,kubernetes,azure-aks,Azure,Kubernetes,Azure Aks,我创建了一个示例spring boot应用程序,并执行了以下操作:- 1.创建了一个docker映像 2.创建了Azure容器注册表,并进行了docker推送 3.在Azure Kubernetes服务中创建了一个群集并成功部署。我已为此选择了外部端点选项 对于服务对服务呼叫,我不想像使用IP一样使用另一个自定义名称,但我如何才能做到这一点? 此外,如果我选择了内部,那么是否有任何方法来替换名称。 尝试使用endpoint name属性编辑YAML,但失败。有什么想法吗?我认为您混淆了一些概念
尝试使用endpoint name属性编辑YAML,但失败。有什么想法吗?我认为您混淆了一些概念,因此我将尝试解释并帮助您实现所需
name
。在这里,您可以为部署和容器配置名称
内部
和外部
。您可以找到所有服务类型ClusterIP
(默认),这意味着只有您的集群才能到达POD。要从其他pod访问您的服务,您可以使用由my svc.my namespace.svc.cluster domain.example
组成的
以下是用于上述部署的服务示例:
apiVersion: v1
kind: Service
metadata:
name: echo-svc
spec:
selector:
app: echo
ports:
- protocol: TCP
port: 80
targetPort: 80
NodePort
、LoadBalancer
或使用apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/use-regex: "false"
name: echo-ingress
spec:
rules:
- host: myapp.mydomain.com
http:
paths:
- path: "/"
backend:
serviceName: echo-svc
servicePort: 80
在本例中,我使用的是dns名称myapp.mydomain.com
,因此这意味着您只能通过此名称访问您的应用程序
创建入口后,您可以使用命令
kubectl get ing
查看外部ip,并且您可以在dns服务器中创建一个条目。您遇到了什么错误?通过“更改名称”,我假设您的意思是要为该ip地址分配一个dns名称?!好的,让我解释一下。如果我需要一个自定义域,那么我需要注册rt。比如说,如果我的ext端点是1.1.1.1,那么就为我运行。我想要的是,我部署的这个pod应该在app-->自定义名称的位置。我可能需要使用它来调用服务对服务调用。我尝试了nginx控制器,但面临某些问题。有更好的方法吗?
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/use-regex: "false"
name: echo-ingress
spec:
rules:
- host: myapp.mydomain.com
http:
paths:
- path: "/"
backend:
serviceName: echo-svc
servicePort: 80