相关疑难解决方法(0)

通过 http 使用 nginx-ingress 的 Microk8s 仪表板无法正常工作(错误:`在版本“extensions/v1beta1”中没有与类型“Ingress”匹配`)

我在 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)

http kubernetes kubernetes-ingress nginx-ingress microk8s

35
推荐指数
2
解决办法
5万
查看次数

在 Ingress 资源中找不到端点“default-http-backend”

当我尝试为我的 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)

kubernetes kubernetes-ingress

11
推荐指数
4
解决办法
3万
查看次数

如何公开 Microk8s 容器,以便它们可以从另一台机器上获得?

我想使用Microk8s来玩 Spring Cloud Data Flow,所以我在 Windows 10 上安装了 Multipass,并在虚拟机中运行安装了 Microk8s 的 Ubuntu。我想实现这一点,所有容器都在 Ubuntu 上运行,这是一个由 Multipass 管理的无头 Virtualbox VM,但我希望能够从 Windows 连接到容器。

拓扑如下所示:

视窗 10

  • 192.168.1.107 由我家路由器提供

在 Virtualbox 中运行的Ubuntu

  • 192.168.52.1 由 Windows for Virtualbox(Virtualbox Host-Only Network)提供

如果我登录 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 microk8s

9
推荐指数
1
解决办法
1万
查看次数

Microk8s、MetalLB、ingress-nginx - 如何路由外部流量?

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 地址。

我想知道我做错了什么,或者是否有更好的方法来解决我想要做的事情!

我正在遵循的步骤:

  1. 我已经运行microk8s enable dns metallb。我提供了 DHPC 服务器 ( 192.168.0.90-192.168.0.99)未处理的 MetalLB IP 地址。
  2. 我已经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的服务从NodePortLoadBalancer运行kubectl edit service ingress-nginx-controller -n ingress-nginx。MetalLB 然后为192.168.0.90服务分配 IP 。 …

ubuntu-server kubernetes microk8s metallb raspberry-pi4

7
推荐指数
1
解决办法
5641
查看次数