我在 Ubuntu 20.04.3 LTS 上运行 microk8s v1.22.2。
输出来自/etc/hosts:
127.0.0.1 localhost
127.0.1.1 main
Run Code Online (Sandbox Code Playgroud)
摘自microk8s status:
addons:
enabled:
dashboard # The Kubernetes dashboard
ha-cluster # Configure high availability on the current node
ingress # Ingress controller for external access
metrics-server # K8s Metrics Server for API access to service metrics
Run Code Online (Sandbox Code Playgroud)
我检查了正在运行的仪表板 ( kubectl get all --all-namespaces):
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system pod/calico-node-2jltr 1/1 Running 0 23m
kube-system pod/calico-kube-controllers-f744bf684-d77hv 1/1 Running 0 23m
kube-system pod/metrics-server-85df567dd8-jd6gj 1/1 …Run Code Online (Sandbox Code Playgroud) 当我尝试为我的 Kubernetes 集群创建入口资源时(入口控制器已经创建),入口资源/规则正在创建,我能够在 kubectl get 中看到。但是当我执行 kubectl describe 时,我看到了一个错误:
默认后端:default-http-backend:80(<错误:未找到端点“default-http-backend”>)
这是预期的吗??我什至无法使用hotel.example.com我在 Ingress 资源中定义的 DNS 名称 ( )连接到我的应用程序。是因为这个 http-backend 错误吗?如果没有,任何使应用程序连接的建议!!
[dockuser@kubemaster ingress-controller-domain-name-or-path-based-routing]$ kubectl describe ing hotel-ingress --namespace hotel
Name: hotel-ingress
Namespace: hotel
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
Rules:
Host Path Backends
hotel.example.com
/ hotel-svc:80 (10.36.0.2:80,10.44.0.2:80)
Annotations: Events:
apiVersion: v1
kind: Namespace
metadata:
name: hotel
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: hotel-ingress
namespace: hotel
spec:
rules:
host: hotel.example.com
http:
paths:
path: /
backend:
serviceName: hotel-svc
servicePort: …Run Code Online (Sandbox Code Playgroud) 我想使用Microk8s来玩 Spring Cloud Data Flow,所以我在 Windows 10 上安装了 Multipass,并在虚拟机中运行安装了 Microk8s 的 Ubuntu。我想实现这一点,所有容器都在 Ubuntu 上运行,这是一个由 Multipass 管理的无头 Virtualbox VM,但我希望能够从 Windows 连接到容器。
拓扑如下所示:
视窗 10:
在 Virtualbox 中运行的Ubuntu
如果我登录 Ubuntu 会ifconfig显示以下内容:
multipass@scdf:~/scdf/spring-cloud-dataflow$ ifconfig
cbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.1.1.1 netmask 255.255.255.0 broadcast 0.0.0.0
inet6 fe80::c802:9fff:fea2:93f1 prefixlen 64 scopeid 0x20<link>
ether ca:02:9f:a2:93:f1 txqueuelen 1000 (Ethernet)
RX packets 19890 bytes 6628126 (6.6 MB)
RX errors 0 dropped 0 overruns …Run Code Online (Sandbox Code Playgroud) Kubernetes/Ubuntu 新手在这里!
我正在使用单个 Raspberry Pi 设置 k8s 集群(希望将来有更多)。我正在使用 microk8sv1.18.8和 Ubuntu Server 20.04.1 LTS (GNU/Linux 5.4.0-1018-raspi aarch64)。
我试图在 port 上访问我的 k8s 服务之一80,但我无法正确设置它。我还设置了用于访问服务的静态 IP 地址,并将流量从路由器路由到服务的 IP 地址。
我想知道我做错了什么,或者是否有更好的方法来解决我想要做的事情!
我正在遵循的步骤:
microk8s enable dns metallb。我提供了 DHPC 服务器 ( 192.168.0.90-192.168.0.99)未处理的 MetalLB IP 地址。ingress-nginx通过运行安装kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.35.0/deploy/static/provider/baremetal/deploy.yaml。这会NodePort为 .创建一个服务,该服务ingress-nginx-controller不适用于 MetalLB。如前所述这里,我编辑spec.type的服务从NodePort以LoadBalancer运行kubectl edit service ingress-nginx-controller -n ingress-nginx。MetalLB 然后为192.168.0.90服务分配 IP 。 …