kubectl配置自动补全,以及不能自动补全原因排查

配置自动补全

配置自动补全,参考官方文档

kubectl自动补全:

yum install bash-completion
source /usr/share/bash-completion/bash_completion
echo 'source <(kubectl completion bash)' >>~/.bashrc
echo 'source <(kubectl completion bash)' >>~/.bashrc
source ~/.bashrc
kubectl completion bash >/etc/bash_completion.d/kubectl

kubectl设置别名k自动补全:

echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -F __start_kubectl k' >>~/.bashrc
source ~/.bashrc

问题

按照官方文档操作之后,在有些环境是可自动补全的,有些环境只能补全namespace、资源名称,但资源类型还是不可自动补全。

# 按Tab键可以补全ns
# k get pod -n z
zookeeper zqh

# 按Tab键可以补全资源名称
# k get pod zookeeper-operator-59cb776cb6-plkg8 

但是不能补全资源类型:servicemonitor:

# k get servicemo

定位

在不可自动补全的服务器上查看以下包是否安装:

# rpm -qa | grep bash-completion
bash-completion-2.1-8.el7.noarch

正常情况下是安装的,这里查到也是安装了的。

思路一

  • 尝试在可以自动补全资源类型的环境上,修改~/.kube/config为不可补全环境的config内容。发现也不可补全。
  • 尝试在不可以自动补全资源类型的环境上,修改~/.kube/config为可自动补全环境的config内容。发现可以补全。

说明和主机配置没有关系,应该是k8s集群的问题。

自动补全的原理是:在按下TAB键时,会给APIServer发请求,做响应的查询操作。

思路二

在其他主机上(我这里假设用172.0.1.2)上,指定kubeconfig为异常主机(172.0.4.2)的,键入kubectl get dep后按下Tab键,在异常主机上抓来自源主机的包,记录到文件中:

# tcpdump -i any host 172.0.1.2 -nn -w xxx.cap 

用wireshark分析xxx.cap:

image.png

发现有503的请求,URI中包含:metrics.k8s.io

# curl http://localhost:8080/apis/metrics.k8s.io/v1beta1?timeout=5s -s
503 Service Unavailable

可以定位到是有一个v1beta1.metrics.k8s.io的APIService状态异常。

# kubectl get apiservice | grep metrics.k8s.io
v1beta1.metrics.k8s.io                    monitoring/prometheus-adapter   False (MissingEndpoints)   411d

# kubectl get apiservice v1beta1.metrics.k8s.io -o yaml
apiVersion: apiregistration.k8s.io/v1
kind: APIService
metadata:
  name: v1beta1.metrics.k8s.io
spec:
  group: metrics.k8s.io
  groupPriorityMinimum: 100
  insecureSkipTLSVerify: true
  service:
    name: prometheus-adapter
    namespace: monitoring
    port: 443
  version: v1beta1
  versionPriority: 100
status:
  conditions:
  - lastTransitionTime: "2021-09-12T08:31:24Z"
    message: endpoints for service/prometheus-adapter in "monitoring" have no addresses
      with port name "https"
    reason: MissingEndpoints
    status: "False"
    type: Available

prometheus-adaptermetrics-server的功能类似,只不过前者可以自定义指标。

二者只需要装一个就行。这里的问题是因为APIService中写的后端Serviceprometheus-adapter,但相应的Pod是不正常的。

解决

修改v1beta1.metrics.k8s.io这个APIService的spec.service为:

spec:
  service:
    name: metrics-server
    namespace: kube-system

此时APIService状态正常了:

# kubectl get apiservice | grep metrics.k8s.io
v1beta1.metrics.k8s.io                    kube-system/metrics-server   True        412d

此时可以自动补全了:

# kubectl get deployments.apps

原文

本文首发于微信公众号【我的小碗汤】,转载请注明出处:来自微信公众号【我的小碗汤】。扫左侧码关注,了解更多咨询,更有免费资源供您学习

作者简洁

作者:小碗汤,一位热爱、认真写作的小伙,目前维护原创公众号:『我的小碗汤』,专注于写go语言、docker、kubernetes、java等开发、运维知识等提升硬实力的文章,期待你的关注。转载说明:务必注明来源(注明:来源于公众号:我的小碗汤,作者:小碗汤)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,084评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,623评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,450评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,322评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,370评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,274评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,126评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,980评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,414评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,599评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,773评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,470评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,080评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,713评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,852评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,865评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,689评论 2 354

推荐阅读更多精彩内容