zoukankan      html  css  js  c++  java
  • 二进制k8s使用的一些问题报错---持续补充中

    二进制k8s部署后的一些问题解决

     

    问题一:虚拟机挂起之后重开,发现etcd集群其中一个节点起不来(k8s-1)

    用这个命令在k8s-1启动,怎么样都起不来:supervisorctl start etcd-server-7-128

    用一个正常起了etcd的服务器(k8s-2)运行命令:

    ETCDCTL_API=3 /opt/apps/etcd/etcdctl --cacert=/opt/apps/etcd/certs/ca.pem --cert=/opt/apps/etcd/certs/etcd-peer.pem --key=/opt/apps/etcd/certs/etcd-peer-key.pem --endpoints="https://10.4.7.128:2379,https://10.4.7.129:2379,https://10.4.7.130:2379" endpoint health

     说的128连接不了

    查看128报错信息:

    etcd起不来,apiserver都起不了了

    W1201 13:41:22.278707 8011 clientconn.go:1251] grpc: addrConn.createTransport failed to connect to {10.4.7.130:2379 0 <nil>}. Err :connection error: desc = "transport: Error while dialing dial tcp 10.4.7.130:2379: connect: net
    work is unreachable". Reconnecting...

    问题解决:检查回环接口是否正常监听127.0.0.1

    etcd启动文件有个监听127.0.0.1的配置: /opt/apps/etcd/etcd-server-startup.sh 

    查看该机器的回环网口,确实没有监听127.0.0.1

    检查下 ifcfg-lo,ip地址有设置成127.0.0.1 。 重启网络就可以了:systemctl restart network

    问题二: kubectl get nodes 返回 No resources found.

    查看报错日志:/data/logs/kubernetes/kube-kubelet/kubelet.stdout.log

    说这个k8s-node 用户没有权限

    问题解决:想起部署文章有个这样的用户授权

    重新运行下就好了:

    kubectl create -f k8s-node.yaml 

    kubectl get clusterrolebinding k8s-node 

     至于为啥没有了这些信息。因为我后来把etcd节点从两个增加到三个了,其中增加第3个节点的时候报错,网上说要删除这个data-dir目录才能添加上,etcd是利用data-dir来进行数据的持久化保存的。之后要搞个etcd备份脚本才行,不然东西一多,数据坏了啥都没有

    别人给的etcd持久化备份脚本(先留着)

     1 cat bk_etcd.sh 
     2 #!/bin/bash
     3 set -e
     4 exec >> /opt/backup_week/backup_etcd.log
     5 
     6 Date=`date +%Y-%m-%d-%H-%M`
     7 EtcdEndpoints="localhost:2379"
     8 EtcdCmd="/opt/etcd/etcdctl"
     9 BackupDir="/opt/backup_week"
    10 BackupFile="etcd.db.$Date"
    11 
    12 echo "`date` backup etcd..."
    13 
    14 export ETCDCTL_API=3
    15 $EtcdCmd --endpoints $EtcdEndpoints snapshot save  $BackupDir/$BackupFile
    16 
    17 echo  "`date` backup done!"
    View Code

     问题三:kubectl get pods -o wide 返回pod状态为:ImagePullBackOff 

     查看pod的日志:kubectl describe pod nginx-ds-68x2r

     问题排查及解决:

    1、首先检查下docker的配置文件 /etc/docker/daemon.json是否有把私有仓库地址添加进来 ——》 没问题

    2、curl 和 telnet harbor仓库地址是否可以  ——》 没问题

    3、看看docker 是否有nginx这个镜像  ——》 发现没有

    docker images

     4、尝试重新拉取nginx镜像  ——》报错

     docker pull harbor.odljy.com/public/nginx:latest (前面应该要先运行下docker login 看看是否有登录权限)

    5、最后重启docker和harbor服务就解决了,估计网络有问题(之前有交代过虚拟机有关过机,还有挂起操作重起,估计影响到吧。。。)

    然后跑pod的node要是能成功的话,本地应该是有nginx镜像的

     get pod 也有返回了,不再是ImagePullBackOff 状态

    参考文档:

    http://dockone.io/article/10055

    http://dockone.io/article/2247

     

  • 相关阅读:
    Blank page instead of the SharePoint Central Administration site
    BizTalk 2010 BAM Configure
    Use ODBA with Visio 2007
    Handling SOAP Exceptions in BizTalk Orchestrations
    BizTalk与WebMethods之间的EDI交换
    Append messages in BizTalk
    FTP protocol commands
    Using Dynamic Maps in BizTalk(From CodeProject)
    Synchronous To Asynchronous Flows Without An Orchestration的简单实现
    WSE3 and "Action for ultimate recipient is required but not present in the message."
  • 原文地址:https://www.cnblogs.com/windysai/p/14069018.html
Copyright © 2011-2022 走看看