k8s集群如kubeadm init和kube-flannel.yam问题

查看k8s中角色内容kubectl get all (显示pod和server以及delment) 删除应用资源选择删除先删除部署查看部署和pod没了服务还在,但资源和功能以及删除,删除服务kubectl delete 服务名(部署名),get pods 获取默认空间的容器 get all 获取pod和server以及部署以及动态扩容

将创建部署定位到文件create d --dry-run -o yaml 输出yaml格式的部署指令信息里面有部署的模板信息如空间,副本个数、规格等信息通过apply -f 一次性部署所有内容包括部署信,服务等不用每次写指令执行,而是一次准备。

文件的格式可以通过指令+--dry-run -o yaml生成一个当前指令模板然后把这些汇总到一个文件,如创建部署是一个指令生成一部分,然后暴露服务指令生成一部分。

kubeadm init --config kubeadm-init.yaml

如果执行失败了怎么办?

kubeadm reset

rm -fr ~/.kube/ /etc/kubernetes/* /var/lib/etcd/*

执行后,重新进行(init)!!!

搭建集群环境有效可用参考地址centos安装k8s集群(kubeadm方式)_centos kubeadm-CSDN博客

kubeadm init 初始化报错问题 按照提示查看日志journalctl -u kubelet 提示主机找不到因为填写的服务ip地址不正确去kubelet的配置文件中修改服务地址为自己主机ip

初始化完成后继续遇到为主机安转网络kube-fannel.yam 由于网络问题一直装不上到麻烦。

kubectl apply -f https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml

该地址是有效可用的,但使用的是docker的地址所以将其中的依赖的三个镜像文件名改成阿里云的镜像,完成下载,这是最快捷的,担我没有去找阿里镜像,而是保持文件不动,下载docker官网的镜像名导入到docker,如果镜像名不符合文件中的就会从网络拉取,主节点成功拉去从节点也同步到,到主节点失败,当前主从两个节点kubectl get pods -A 查看所有节点上的pod 有两个容器拉取失败

解决:其他地方下载镜像,将镜像docker save in.tar 镜像ID 打包上传然后导入 docker load< name.tar 这时是空名和tag 使用docker tag 镜像ID name:tag

哪怕不是文件中docker的官方镜像只要重命名镜像功能可用就直接使用,这时是在主节点上应用成功,到从节点同步时任然无网络拉取超时,同样去安装网络插件

kubectl get nodes 查看是否功能可用如果主节点安转网络成功这该节点read,直到所有节点可读。

k8s入坑之报错解决The connection to the server localhost:8080 was refused - did you specify the right host or port?'k8s入坑之报错解决

问题:

原因:

环境变量

原因:kubernetes master没有与本机绑定,集群初始化的时候没有绑定,此时设置在本机的环境变量即可解决问题。

kubectl命令需要使用kubernetes-admin来运行,需要admin.conf文件(conf文件是通过" kubeadmin init"命令在主节点/etc/kubernetes 中创建),但是从节点没有conf文件,也没有设置 KUBECONFIG =/root/admin.conf环境变量,所以需要复制conf文件到从节点,并设置环境变量就OK了

解决

主节点的admin.conf拷贝到从节点,设置环境变量

Master节点执行

scp /etc/kubernetes/admin.conf root@node01:/etc/kubernetes/admin.conf

scp /etc/kubernetes/admin.conf root@node01:/etc/kubernetes/admin.conf

Node节点执行:

复制代码
#admin.conf注意路径
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
source ~/.bash_profile
另外一个报错可以通过以下操作解决,问题博客链接:k8s入坑之报错(6)解决error: no configuration has been provided, try setting KUBERNETES_MASTER environment variable

主节点的admin.conf拷贝到从节点,设置环境变量

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown (id -u):(id -g) $HOME/.kube/config

或者

#拷贝admin.conf注意路径

echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile

source ~/.bash_profile

最后运行测试, 发现不报错了

root@k8s-master01-15 \~\]# kubectl get node NAME STATUS ROLES AGE VERSION k8s-master01-15 NotReady master 20m v1.18.6 k8s-node01-16 NotReady \ 19m v1.18.6 k8s-no

相关推荐
可观测性用观测云15 分钟前
Kubernetes APIServer 可观测最佳实践
kubernetes
阿里云云原生36 分钟前
Java版Manus实现来了,Spring AI Alibaba发布开源OpenManus实现
云原生
阿里云云原生40 分钟前
当实时消费遇到 SPL:让数据处理更高效、简单
云原生
碣石潇湘无限路2 小时前
【云原生】Kubernetes CEL 速查表
容器·贪心算法·kubernetes
阿里云云原生3 小时前
大模型 Token 的消耗可能是一笔糊涂账
云原生
mingyuewu4 小时前
MAC安装docker 后提示com.docker.vmnetd”将对您的电脑造成伤害
macos·docker·容器
企鹅侠客6 小时前
Prometheus operator怎么添加targets和告警规则
运维·云原生·kubernetes·prometheus·pod
专注代码七年7 小时前
Docker运维篇
运维·docker·容器
一杯敬朝阳 一杯敬月光8 小时前
WIN11 企业版 部署Dify+Docker
运维·docker·容器
Leo Han8 小时前
k8s常用命令(持续更新中)
docker·容器·kubernetes