gpt4 book ai didi

kubernetes - 从Kubernetes中的其他命名空间调用Rest API

转载 作者:行者123 更新时间:2023-12-02 11:55:07 24 4
gpt4 key购买 nike

我在Kubernetes中部署了REST API应用程序YAML,并尝试从另一个 namespace 访问该API。但它显示错误。如何从其他 namespace 访问其余API。以下是我的部署YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: configuration
labels:
app: configuration
namespace: restapi
spec:
replicas: 1
selector:
matchLabels:
app: configuration
template:
metadata:
labels:
app: configuration
spec:
containers:
- name: configuration
image: global.azurecr.io/config:1
env:
- name: AzureFunctionsJobHost__functions__0
value: configuration
envFrom:
- secretRef:
name: configuration
imagePullSecrets:
- name: pull
来自其他命名空间的API调用网址为
“http://configuration.restapi:80 / api / configuration”
我在网址中尝试了 .restapi ,但无法正常工作。
我可以在同一 namespace 中调用rest API。

最佳答案

您始终可以进行简单的测试,以检查是否可以从其他 namespace 访问。
可以说您没有服务。
然后,您可以使用如下所示的ip直接到达pod。

kubectl run dnstest --image=busybox:1.28 --restart=Never --rm -ti -- nslookup 10-36-0-2.default.pod
Server: 10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name: 10-36-0-2.default.pod
Address 1: 10.36.0.2
pod "dnstest" deleted

如果您按如下所示公开服务
kubectl expose deployment configuration --port 80 -n restapi
然后,测试结果如下。
kubectl run dnstest --image=busybox:1.28 --restart=Never --rm -ti -- nslookup configuration.restapi
Server: 10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name: configuration.restapi
Address 1: 10.105.110.174 configuration.restapi.svc.cluster.local
pod "dnstest" deleted
您可以在标准kubernetes环境中使用configuration.restapi或configuration.restapi.svc或configuration.restapi.svc.cluster.local。

关于kubernetes - 从Kubernetes中的其他命名空间调用Rest API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63400853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com