![](/img/trans.png)
[英]How do I find and call the kube-apiserver in k3s / k3d (with Calico and without it)?
[英]How to expose traefik v2 dashboard in k3d/k3s via configuration?
*交叉發布到k3d github 討論<\/a>、 Rancher 論壇<\/a>中的線程以及traefik 的社區討論板<\/a><\/em>
2020 年的教程是<\/a>指編輯 traefik configmap。 它去哪兒了?
traefik 安裝說明<\/a>參考了幾種公開儀表板的方法:
這有效,但不是持久的:使用 1 次命令
kubectl -n kube-system port-forward $(kubectl -n kube-system get pods --selector "app.kubernetes.io\/name=traefik" --output=name) 9000:9000<\/code>
我無法讓它工作:創建一個“IngressRoute”yaml 文件並將其應用於集群。 這可能是由於 Klipper LB 和\/或我的無知。
對於 2-server、2-agent 集群...
kubectl -n kube-system describe deploy traefik<\/code>不顯示任何 configmap:
沒有“traefik”配置圖<\/h3>
而且, kubectl get -n kube-system cm<\/code>顯示:
traefik pod 沒有使用 configmap<\/h3>
描述吊艙也不會出現任何問題。 kubectl -n kube-system describe pod traefik-....<\/code>也沒有配置映射。
但是,我確實看到了使用端口的 traefik pod 的參數:
但是,這些端口並未暴露。
因此,我嘗試使用
kubectl port-forward pods\/traefik-97b44b794-r9srz 9000:9000 8000:8000 8443:8443 -n kube-system --address 0.0.0.0<\/code> ,但是當我
curl -v localhost:9000<\/code> (或 8000 或 8443)和
curl -v localhost:9000\/dashboard<\/code> ,我得到“404 Not Found”。
將終端連接到 traefik 后,我發現本地端口已打開,但似乎沒有任何響應:
版本<\/h3>
k3d version v4.4.7 k3s version v1.21.2-k3s1 (default)<\/code><\/pre>"
我找到了一個解決方案,希望有人能盡快找到更好的解決方案
/etc/rancher/k3s/k3s.yaml
添加到您的本地~/.kube/config
(以便在最后一步中將端口轉發到您的個人電腦)
kubectl get pod -n kube-system
並搜索traefik-something-somethingElse
我的是traefik-97b44b794-bsvjn
kubectl port-forward traefik-97b44b794-bsvjn -n kube-system 9000:9000
http://localhost:9000/dashboard/
並且不要忘記第二個斜杠請注意,您必須首先在/var/lib/rancher/k3s/server/manifests/traefik.yaml
通過添加啟用儀表板
dashboard:
enabled: true
對於當前最新版本的 k3s (1.21.4):
根據 traefik 的安裝指南( https://doc.traefik.io/traefik/getting-started/install-traefik/#exposing-the-traefik-dashboard ),使用正確的 CRD 內容創建dashboard.yaml,然后運行kubectl apply -f dashboard.yaml
創建 DNS 記錄或修改主機名的主機文件 - 為您在上一步設置的 ip 映射
Jakub 的回答非常好。 但另一個不幸的是,如果 k3s 重新啟動,配置會被重置。 根據
k3s 文檔<\/a>,如果您創建一個名為
\/var\/lib\/rancher\/k3s\/server\/manifests\/traefik-config.yaml<\/code>的自定義文件,k3s 的 traefik 將使用這個新配置自動更新並使用它的值。
這是我所擁有的:
apiVersion: helm.cattle.io/v1
kind: HelmChartConfig
metadata:
name: traefik
namespace: kube-system
spec:
valuesContent: |-
dashboard:
enabled: true
ports:
traefik:
expose: true # this is not recommended in production deployments, but I want to be able to see my dashboard locally
logs:
access:
enabled: true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.