K3sk8s基础
跳转到导航
跳转到搜索
apps bash 03-test-deploy.sh
>>> 1. 部署测试应用 (2个副本的 nginx demo + Service + Ingress)
deployment.apps/hello-web unchanged
service/hello-web-svc unchanged
ingress.networking.k8s.io/hello-web-ingress unchanged
>>> 2. 等待 Pod 就绪...
pod/hello-web-784668b86c-5gzqh condition met
pod/hello-web-784668b86c-c7zmw condition met
>>> 3. 查看资源状态
--- Pods ---
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
hello-web-784668b86c-5gzqh 1/1 Running 0 9m37s 10.42.2.118 k3s-agent-01 <none> <none>
hello-web-784668b86c-c7zmw 1/1 Running 0 9m37s 10.42.4.43 k3s-agent-02 <none> <none>
--- Service ---
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
hello-web-svc ClusterIP 10.43.179.173 <none> 80/TCP 12m
--- Ingress ---
NAME CLASS HOSTS ADDRESS PORTS AGE
hello-web-ingress <none> hello.local.test 192.168.10.190,192.168.10.201,192.168.10.202 80 12m
==========================================
✅ 部署完成,验证请求链路:
==========================================
方式一 (推荐,直接用 curl 带 Host 头,不用改 /etc/hosts):
curl -H 'Host: hello.local.test' http://192.168.10.105
方式二 (改 /etc/hosts 后浏览器访问):
echo '192.168.10.105 hello.local.test' | sudo tee -a /etc/hosts
然后浏览器打开 http://hello.local.test
多请求几次,观察返回的 hostname 是否在两个 Pod 之间切换 (验证负载均衡):
for i in {1..5}; do curl -s -H 'Host: hello.local.test' http://192.168.10.105 | grep -i 'Server name'; done
清理测试应用: kubectl delete -f test-app.yaml
troubleshooting
kubectl get nodes E0806 21:32:03.023568 157431 memcache.go:265] "Unhandled Error" err="couldn't get current server API group list: Get \"https://920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com/api?timeout=32s\": dial tcp: lookup 920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com on 192.168.10.1:53: no such host" E0806 21:32:03.031828 157431 memcache.go:265] "Unhandled Error" err="couldn't get current server API group list: Get \"https://920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com/api?timeout=32s\": dial tcp: lookup 920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com on 192.168.10.1:53: no such host" E0806 21:32:03.039270 157431 memcache.go:265] "Unhandled Error" err="couldn't get current server API group list: Get \"https://920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com/api?timeout=32s\": dial tcp: lookup 920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com on 192.168.10.1:53: no such host" E0806 21:32:03.048542 157431 memcache.go:265] "Unhandled Error" err="couldn't get current server API group list: Get \"https://920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com/api?timeout=32s\": dial tcp: lookup 920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com on 192.168.10.1:53: no such host" E0806 21:32:03.056331 157431 memcache.go:265] "Unhandled Error" err="couldn't get current server API group list: Get \"https://920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com/api?timeout=32s\": dial tcp: lookup 920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com on 192.168.10.1:53: no such host" Unable to connect to the server: dial tcp: lookup 920376B3099E1023583D1077A6BC83E5.gr7.ap-east-1.eks.amazonaws.com on 192.168.10.1:53: no such host ➜ ~ kubectl config use-context default Switched to context "default". ➜ ~ kubectl get nodes NAME STATUS ROLES AGE VERSION debian-k3s-00 NotReady <none> 33d v1.36.2+k3s1 k3s-agent-01 Ready <none> 31d v1.36.2+k3s1 k3s-agent-02 Ready <none> 31d v1.36.2+k3s1 myxps Ready control-plane 35d v1.36.2+k3s1
dockerproxy.com 不能用了