rancher 部署 k8s dial tcp 10.43.0.1:443: i/o timeout

2020-07-29 23:16:55 +08:00
 dunhanson

错误信息 kubectl logs metrics-server-697746ff48-t58pd -n kube-system

I0724 05:38:32.514508       1 serving.go:312] Generated self-signed cert (apiserver.local.config/certificates/apiserver.crt, apiserver.local.config/certificates/apiserver.key)
Error: Get https://10.43.0.1:443/api/v1/namespaces/kub

这是我搜到的解决办法。。。但是 rancher 怎么指定 k8s ip 范围?

4090 次点击
所在节点    程序员
11 条回复
dunhanson
2020-07-29 23:23:52 +08:00
除了修改 ip 范围的方式还有其它方法吗?
dunhanson
2020-07-30 00:09:08 +08:00
这里?

```yaml
#
# services:
# kube-api:
# service_cluster_ip_range: 10.43.0.0/16
# kube-controller:
# cluster_cidr: 10.42.0.0/16
# service_cluster_ip_range: 10.43.0.0/16
# kubelet:
# cluster_domain: cluster.local
# cluster_dns_server: 10.43.0.10
#
```
dunhanson
2020-07-30 00:29:20 +08:00
换了 ip 还是不行
services:
etcd:
backup_config:
enabled: true
interval_hours: 12
retention: 6
safe_timestamp: false
creation: 12h
extra_args:
election-timeout: '5000'
heartbeat-interval: '500'
gid: 0
retention: 72h
snapshot: false
uid: 0
kube-api:
always_pull_images: false
pod_security_policy: false
service_cluster_ip_range: 172.17.0.0/16
service_node_port_range: 30000-32767
kube-controller:
cluster_cidr: 172.16.0.0/16
service_cluster_ip_range: 172.17.0.0/16
kubelet:
cluster_dns_server: 172.17.0.10
cluster_domain: cluster.local
fail_swap_on: false
generate_serving_certificate: false
kubeproxy: {}
scheduler: {}
whileFalse
2020-07-30 07:42:28 +08:00
可能是整体就没起来。

我昨天遇到了相同的 bug,不过我是 microk8s,部署单主机集群(就一台机器,既是 master 也是 node )。已注册 node 为 0,某些系统服务起不来。

最终找到的原因是当前主机的 hostname 包含下划线,不是合法的 hostname,导致当前主机无法将自身注册为 node,从而导致一系列问题。
dunhanson
2020-07-30 09:34:01 +08:00
@whileFalse 我 hostname 正常的,三台,分别是 basic 、master 、node1
难搞哦,有什么可以迅速定位问题在哪的?
dunhanson
2020-07-30 10:46:03 +08:00
help
dunhanson
2020-07-30 12:42:15 +08:00
https://s1.ax1x.com/2020/07/30/anzg6f.png

etc controller work 都安装在一台,变成 cattle-cluster-agent-85d75fffdf-28sgv 老是重启了
dunhanson
2020-07-30 17:17:34 +08:00
好像可以了,我重新 clone 了符合 k8s 要求的虚拟机,然后创建 node1 、node2
node1 安装 rancher 、etc 、controller,node2 安装 worker
![aKiZ2d.png]( https://s1.ax1x.com/2020/07/30/aKiZ2d.png)
准备再观察一段时间看看
dunhanson
2020-08-05 18:11:17 +08:00
已找到解决办法,https://github.com/rancher/rancher/issues/16454

我用的 CentOS 8.2

------------------------------------------------------
sudo iptables -P FORWARD ACCEPT

echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/50-docker-forward.conf

for mod in ip_tables ip_vs_sh ip_vs ip_vs_rr ip_vs_wrr; do sudo modprobe $mod; echo $mod | sudo tee -a /etc/modules-load.d/iptables.conf; done

sudo dnf -y install network-scripts

sudo systemctl enable network

sudo systemctl disable NetworkManager
------------------------------------------------------
dunhanson
2020-08-14 00:27:59 +08:00
CentOS 8.2 原生安装 k8s Pod 网络不通解决办法
------------------------------------------------------------------------
vim /lib/systemd/system/docker.service
# ExecStartPost=/sbin/iptables -P FORWARD ACCEPT
------------------------------------------------------------------------
dunhanson
2020-08-14 11:05:42 +08:00
如果在 pod 当中 ping www.baidu.com 不通( dns 域名解析,ip 可以),但是局域网的 pod 又可以互 ping 。
可以重启 master 节点,或者重启 coredns (查看两个 coredns 日志是否正常输出)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/694174

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX