z f*_*aye 9 kubernetes kubernetes-ingress
我是 k8s 新手。我在 minikube 上部署了一个入口,我发现它的地址是localhost不应该的,我猜。为此,我不知道如何继续,因为我应该编辑/etc/hosts/以添加 dns 项目,但我不能。

这是我的配置文件
kiloson@ubuntu:~$ cat kubia-ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: kubia
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
rules:
- host: kubia.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: kubia-nodeport
port:
number: 80
Run Code Online (Sandbox Code Playgroud)
minikube版本
kiloson@ubuntu:~$ minikube version
minikube version: v1.24.0
commit: 76b94fb3c4e8ac5062daf70d60cf03ddcc0a741b
Run Code Online (Sandbox Code Playgroud)
乌班图信息
kiloson@ubuntu:~$ neofetch
.-/+oossssoo+/-. kiloson@ubuntu
`:+ssssssssssssssssss+:` --------------
-+ssssssssssssssssssyyssss+- OS: Ubuntu 20.04.3 LTS x86_64
.ossssssssssssssssssdMMMNysssso. Host: Virtual Machine 7.0
/ssssssssssshdmmNNmmyNMMMMhssssss/ Kernel: 5.11.0-1022-azure
+ssssssssshmydMMMMMMMNddddyssssssss+ Uptime: 2 hours, 33 mins
/sssssssshNMMMyhhyyyyhmNMMMNhssssssss/ Packages: 648 (dpkg), 4 (snap)
.ssssssssdMMMNhsssssssssshNMMMdssssssss. Shell: bash 5.0.17
+sssshhhyNMMNyssssssssssssyNMMMysssssss+ Terminal: /dev/pts/0
ossyNMMMNyMMhsssssssssssssshmmmhssssssso CPU: Intel Xeon E5-2673 v4 (2) @ 2.294GHz
ossyNMMMNyMMhsssssssssssssshmmmhssssssso GPU: 00:08.0 Microsoft Corporation Hyper-V virtual VGA
+sssshhhyNMMNyssssssssssssyNMMMysssssss+ Memory: 1493MiB / 7959MiB
.ssssssssdMMMNhsssssssssshNMMMdssssssss.
/sssssssshNMMMyhhyyyyhdNMMMNhssssssss/
+sssssssssdmydMMMMMMMMddddyssssssss+
/ssssssssssshdmNNNNmyNMMMMhssssss/
.ossssssssssssssssssdMMMNysssso.
-+sssssssssssssssssyyyssss+-
`:+ssssssssssssssssss+:`
.-/+oossssoo+/-.
Run Code Online (Sandbox Code Playgroud)
我对此进行了一段时间的思考,并且刚刚开始工作,所以我将为其他答案添加色彩。
首先,正如这个相关问题所指出的,当您最初运行它时,minikube addons enable ingress它会打印After the addon is enabled, please run "minikube tunnel" and your ingress resources would be available at "127.0.0.1"。
完成教程中的步骤并遇到此问题中的问题后,我能够通过启动minikube tunnel并添加127.0.0.1 hello-world.info到我的/etc/hosts.
我不确定为什么教程执行会kubectl get ingress返回非本地主机 IP,但localhost在本地运行时会返回,但这里的主要问题似乎是,当您在运行 minikube 的 docker 容器上创建入口时,您需要转发流量到容器中,到达minikube tunnelminikube 中现在打开的入口。
小智 4
localhost地址是正确的。这就是 minikube 的工作原理。
您可以通过以下方式获取您的 minikube 集群 ip
minikube ip
Run Code Online (Sandbox Code Playgroud)
或者
minikube service <service-name> --url
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6293 次 |
| 最近记录: |