国内不fq安装K8S四: 安装过程中遇到的问题和解决方法
国内不fq安装K8S一: 安装docker
国内不fq安装K8S二: 安装kubernet
国内不fq安装K8S三: 使用helm安装kubernet-dashboard
国内不fq安装K8S四: 安装过程中遇到的问题和解决方法
4 安装过程中遇到的问题和解决方法
4.1 常见问题
(1) Kubernetes Pod错误ErrImagePull?
两种办法:
1 直接docker pull gcr.azk8s.cn/XXX,然后tag成gcr.io/XXX或其他的即可解决。
2 编辑pod的配置
kubectl edit deployment tiller-deploy -n kube-system
找到相应的源地址,如"gcr.io/kubernetes-helm/tiller"替换成亚马逊的地址"gcr.azk8s.cn/kubernetes-helm/tiller"即可
(2) kube-proxy有一个成功开启了ipvs另一个没有成功开启ipvs
有可能是有一个节点的下面这条命令没执行好
$ cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4
(3) 节点上要运行其他程序,不能关闭swap
修改kubernet的配置是一样的:
在/etc/sysctl.d/k8s.conf后添加
vm.swappiness=0
使生效
sysctl -p /etc/sysctl.d/k8s.conf
修改/etc/sysconfig/kubelet加入
KUBELET_EXTRA_ARGS=--fail-swap-on=false
(4)node上多网卡导致的报错
"E0110 23:48:52.242726 1 main.go:127] Failed to create SubnetManager: error retrieving pod spec for 'kube-system/kube-flannel-ds-xbbqs': Get https://10.96.0.1:443/api/v1/namespaces/kube-system/pods/kube-flannel-ds-xbbqs: dial tcp 10.96.0.1:443: i/o timeout"
修改kube-flannel.yml添加"--iface=ens32"一句指定网卡
......
containers:
- name: kube-flannel
image: quay.io/coreos/flannel:v0.11.0-amd64
command:
- /opt/bin/flanneld
args:
- --ip-masq
- --kube-subnet-mgr
- --iface=ens32
......
详见:flannel issues 39701: https://github.com/kubernetes/kubernetes/issues/39701
(5)helm报,各种 "TILLER: dial tcp 10.96.0.1:443: i/o timeout"
有可能是多个问题导致的这个错误,我的错误是docker-ce19.03.1不再kubernet的支持列表中导致的。因此我更换了docker版本解决的。
如果是其他问题,可以通过执行"kubectl logs XXX -n XXnamespaceXX"和"kubectl describe pod XXXXX -n XXX"定位
(6)kubelet启动的时提示masked
systemctl unmask kubelet.service
(7)token忘了或者过期
解决办法如下:
https://blog.csdn.net/weixin_44208042/article/details/90676155
4.2 常用的操作命令
查看所有pod的信息:
kubectl get pod --all-namespaces -o wide
查看system的pod
kubectl get pod -n kube-system
查看一个pod的错误信息
kubectl describe pod coredns-5c98db65d4-djt9j --namespace=kube-system
删除一个pod(其实普通的删除等于重启)
kubectl delete po <your-pod-name> -n <name-space> --force --grace-period=0
kubectl delete po tiller-deploy-7bf78cdbf7-cr5mj -n kube-system --force --grace-period=0
修改部pod的配置:
``bash
kubectl edit deployment tiller-deploy -n kube-system
查看日志:
```bash
kubectl logs -f coredns-5c98db65d4-mp6vg -n kube-system
查看所有节点:
kubectl get nodes
tty到一个已经运行的pod中
kubectl attach curl-6bf6db5c4f-btwbm -it
带label查看节点:
kubectl get nodes --show-labels
给节点打label
kubectl label node kub1 node-role.kubernetes.io/edge=
4.3 比较好的博客
青蛙小白:https://blog.frognew.com/2019/07/kubeadm-install-kubernetes-1.15.html
掘金:https://juejin.im/post/5cb7dde9f265da034d2a0dba
安装Kubernetes节点: https://www.cnblogs.com/xieyifeng/p/9383236.html
helm dashboard: https://mp.weixin.qq.com/s/S9OvZa7oW7qo_9m4OznVtA
k8s基础知识: https://www.jianshu.com/p/95c2bc74e2b2?utm_source=oschina-app
官网:https://yeasy.gitbooks.io/docker_practice/content/opensource/
亚马逊集成环境:https://github.com/Azure/container-service-for-azure-china
国内不fq安装K8S四: 安装过程中遇到的问题和解决方法的更多相关文章
- 将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法
本博客主要是说一下,,如何将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法. 1.先在阿里云上购买一台阿里云服务器(ECS云服务器): 2.远程连接上该服务器,在 ...
- 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法
现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...
- 最新cocoapods安装流程,安装过程中遇到的问题及解决方法
最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/ 但是现在的cocoapods ...
- caffe安装过程中遇到的问题以及解决方法
1. 在安装依赖库的时候,遇到: @gxjun-Latitude-E5440:~$ sudo apt-get install libatlas-base-dev 正在读取软件包列表... 完成 正在分 ...
- Tomcat启动过程中找不到JAVA_HOME解决方法
在XP上明明已经安装了JDK1.5并设置好了JAVA_HOME,可偏偏Tomcat在启动过程中找不到. 报错信息如下:Neither the JAVA_HOME nor the JRE_HOME en ...
- InstallShield 工程类型MSI 使用过程中碰到的问题及解决方法。
原文 http://www.cnblogs.com/daocaorenbx/p/InstallShield.html 一.安装完 桌面创建IE快捷方式: 1. install script可以直接建 ...
- live555源码研究(十)------在编译过程中遇到的问题及解决方法
一.编译testOnDemandRTSPServer.cpp. 在testProgs项目中,加入testOnDemandRTSPServer.cpp进行编译,编译类型是编译成exe文件,在编译过程中会 ...
- Hadoop环境搭建过程中遇到的问题以及解决方法
1.启动hadoop之前,ssh免密登录slave主机正常,使用命令start-all.sh启动hadoop时,需要输入slave主机的密码,说明ssh文件权限有问题,需要执行以下操作: 1)进入.s ...
- 使用rabbitmq过程中遇到的问题及解决方法记录。
OS: Linux ---Centos7RabbitMQ版本:RabbitMQ version: 3.8.1erlang版本:Erlang configuration: Erlang/OTP 22 [ ...
随机推荐
- zzPony.ai 的基础架构挑战与实践
本次分享将从以下几个方面介绍: Pony.ai 基础架构做什么 车载系统 仿真平台 数据基础架构 其他基础架构 1. Pony.ai 基础架构 首先给大家介绍一下 Pony.ai 的基础架构团队做什么 ...
- 【oracle】ceil函数 返回值 (大于参数的最小整数)
SELECT CEIL(15.8) FROM DUAL;==========16 SELECT CEIL(-15.8) FROM DUAL;==========-15
- Shell编程——位置参数变量
1. (1)创建Shell脚本: (2)赋予执行权限: (3)执行Shell脚本: (4)对脚本赋值后执行脚本: $n:n为数字,$0代表命令本身,$1-9代表第一到第九个参数,十以上的参数用大括号包 ...
- [LeetCode] 910. Smallest Range II 最小区间之二
Given an array A of integers, for each integer A[i] we need to choose either x = -K or x = K, and ad ...
- [LeetCode] 78. Subsets 子集合
Given a set of distinct integers, S, return all possible subsets. Note: Elements in a subset must be ...
- Ensight——Fluent重叠网格解决方案【翻译】
原文链接:https://support.ceisoftware.com/hc/en-us/articles/360000664191-Overset-Grid-Solutions-from-Flue ...
- $ is not defined与SpringMVC访问静态资源
编写前台Jquery代码时,遇到谷歌浏览器报错:Uncaught ReferenceError: $ is not defined 意味着Jquery库并没有导入到页面.这是有几种情况需要考虑: 1. ...
- C# Thread.Abort方法与ThreadAbortException异常(取消线程与异常处理)
1.Abort当前线程,后续程序不会执行 class Program { public static Thread thread1; static void Main(string[] args) { ...
- Mocha测试框架,保证代码质量
mocha mocha是JavaScript的一种单元测试框架,既可以在浏览器环境下运行,也可以在Node.js环境下运行. 使用mocha,我们就只需要专注于编写单元测试本身,然后,让mocha去自 ...
- Lsyncd实时同步搭建指南
linux文件实时同步: inotify+rsync.sersync.lsyncd工具比较 一.inotify + rsync 最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是inotify ...