【kubernetes】kubectl logs connection refused

因为启动dashboard报CrashLoopBackOff错误,尝试使用logs去查看日志,结果报错,错误如下:

[[email protected] ~]# kubectl -s http://192.168.37.130:8080 logs kubernetes-dashboard-v1.4.0-vceyf --namespace=kube-system
Using HTTP port: 9090
Using apiserver-host location: http://127.0.0.1:8080
Creating API server client for http://127.0.0.1:8080
Error while initializing connection to Kubernetes apiserver. This most likely means that the cluster is misconfigured (e.g., it has invalid apiserver certificates or service accounts configuration) or the --apiserver-host param points to a server that does not exist. Reason: Get http://127.0.0.1:8080/version: dial tcp 127.0.0.1:8080: getsockopt: connection refused

但是使用curl  http://192.168.37.130:8080却是可以访问通的

[[email protected] ~]# curl  http://192.168.37.130:8080
{
  "paths": [
    "/api",
    "/api/v1",  ...."/version"
  ]
}[[email protected] ~]# 

实在很奇怪,

首先怀疑是不是因为IPV6的原因导致,关闭IPV6

编辑文件/etc/sysctl.conf,
vi /etc/sysctl.conf
添加下面的行:
net.ipv6.conf.all.disable_ipv6 =1
net.ipv6.conf.default.disable_ipv6 =1
如果你想要为特定的网卡禁止IPv6,比如,对于enp0s3,添加下面的行。
net.ipv6.conf.enp0s3.disable_ipv6 =1
保存并退出文件。
执行下面的命令来使设置生效。
sysctl -p

但再次重启服务,也还是无法访问,原因不在此。

从网上看这篇文章:http://blog.csdn.net/qingchi0/article/details/42538549,说

监听的接口,如果配置为127.0.0.1则只监听localhost,配置为0.0.0.0会监听所有接口,这里配置为0.0.0.0。

尝试进行修改

  把前文安装kube-apiserver的配置文件/etc/sysconfig/kubernets/kube-apiserver修改为

INSECURE_BIND_ADDRESS="--insecure-bind-address=0.0.0.0"

  重启服务,发现这次连本来能访问的localhost:8080都访问不通了,说明无效,再次尝试将INSECURE_BIND_ADDRESS改为

INSECURE_BIND_ADDRESS="--address=0.0.0.0"

  重启服务,

curl 127.0.0.1:8080
curl localhost:8080
curl 192.168.37.130:8080

  三种方式访问都么有问题。

  本以为按照127.0.0.1能够访问通了,kubectl -s http://192.168.37.130:8080 logs kubernetes-dashboard-v1.4.0-vceyf --namespace=kube-system就能看到结果了,但结果依旧,那么就应该是提示中的另外一个问题了,

  This most likely means that the cluster is misconfigured (e.g., it has invalid apiserver certificates or service accounts configuration)

这个就应该是证书的问题了,这个问题比较复杂,后面在系统的去研究下

时间: 2024-08-08 10:14:49

【kubernetes】kubectl logs connection refused的相关文章

【Kubernetes】kubectl命令详解 򝽈

目录 用法概述 子命令详解 参数列表 输出格式 操作示例 原文: http://blog.gqylpy.com/gqy/385 @ 用法概述 kubectl 命令行的语法如下: kubectl [command] [TYPE] [NAME] [flags] command:子命令,用于操作 Kubernetes 集群资源对象的命令,例如 create.delete.describe.get.apply 等. TYPE:资源对象类型,区分大小写,能以单数.复数形式或者简写形式表达. NAME:资源

【原创】<Debug> “duplicate connection name”

[Problem] duplicate connection name [Solution] 在Qt上使用SQLite的时候,如果第二次使用QSqlDatabase::addDatabase()方式时,就会出现以下错误提示: QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed. 解决方法是:先判断一下这个默认的连接名是否存在,

【kubernetes】ubuntu14.04 64位 搭建kubernetes过程

背景: Kubernetes介绍:http://kubernetes.io/docs/getting-started-guides/ github地址:https://github.com/kubernetes/kubernetes 在ubuntu上安装文档官方地址:http://kubernetes.io/docs/getting-started-guides/ubuntu/ 环境: Master: Ubunut14.04 192.168.27.135(NAT)  Minion1: Ubunt

34 【kubernetes】安装手册

全文参考了两篇中文文档: 1,https://www.cnblogs.com/RainingNight/p/using-kubeadm-to-create-a-cluster.html 2,http://running.iteye.com/blog/2322634 注意: 运行命令是一定要区分是在master节点还是在pods节点上运行的,有些命令只能在master节点执行,有些命令只能在pods节点执行.这个要区分. 运行命令一定要区分清用户是谁,是root还是普通用户. 大步骤: 1,在ma

【Kubernetes】创建Pod并分配到指定节点Node1

一.编译yaml文件 [[email protected] Tools]# cat hello-world-pod.yaml apiVersion: v1 kind: Pod metadata: name: hello-world spec: nodeSelector: type: node1 containers: - name: hello image: "ubuntu:14.04" command: [ "/bin/bash", "-ce"

【Kubernetes】K8S 网络隔离 方案

参考资料: K8S-网络隔离参考 OpenContrail is an open source network virtualization platform for the cloud. – Kube-O-Contrail – get your hands dirty with Kubernetes and OpenContrail OpenContrail is an open source network virtualization platform for the cloud. Ope

【Kubernetes】深入解析声明式API

在Kubernetes中,一个API对象在Etcd里的完整资源路径,是由:Group(API组).Version(API版本)和Resource(API资源类型)三个部分组成的. 通过这样的结构,整个Kubernetes里的所有API对象,可以用如下的树形结构表示出来 如果现在要声明一个CronJob对象,那么YAML的开始部分会这么写 apiVersion: batch/v2alpha1 kind: CronJob ... CronJob就是这个API对象的资源类型,Batch就是它们的组,v

【Kubernetes】架构全图

K8s是什么 Kubernetes是Google开源的容器集群管理系统.它构建在Docker技术之上,为容器化的应用提供资源调度.部署运行.服务发现.扩容缩容等一整套功能. K8s能做什么 ①容器的自动化复制和部署,随时扩容或收缩容器规模,并提供负载均衡: ②方便的容器升级: ③提供容器弹性,如果失效就替换它: K8s组织架构 K8s调度过程 原文地址:https://www.cnblogs.com/wucaiyun1/p/11202564.html

【docker】docker logs-查看docker容器日志

引用地址 https://www.jianshu.com/p/1eb1d1d3f25e 通过docker logs命令可以查看容器的日志. 命令格式: $ docker logs [OPTIONS] CONTAINER Options: --details 显示更多的信息 -f, --follow 跟踪实时日志 --since string 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟) --tail string 从日志末尾显示多少行日志, 默认是all -t, -