kubectl管理多个集群配置 需求描述: 在一台机器上通过kubectl管理多个Kubernetes集群。...操作过程:将各集群的kubectl config文件中的证书内容转换,通过命令创建config文件;通过上下文切换使用不同集群。...config1 -rw-r--r-- 1 root root 6254 Jan 6 16:22 config2 root@hello:~/.kube# root@hello:~/.kube# 复制代码 准备配置文件...: #配置1 - cluster: server: https://192.168.1.11:6443 name: cluster1 contexts: - context:...@hello:~/.kube# root@hello:~/.kube# 复制代码 测试配置 root@hello:~/.kube# kubectl config get-contexts CURRENT
如果想修改 kubectl 配置文件,且多集群的请继续往下看 该方法适用于长期通过 kubectl 操作集群, 一次配置,只要文件不修改就长期有效。...背景:假设我有两个集群,一个是生产集群,一个是测试集群,我想通过kubectl操作多个集群请往下配置: 首先配置生产集群的链接 kubectl config set-credentials produce-admin...config set-context produce-system --cluster=produce-cluster --user=produce-admin 配置的格式以及含义 kubectl config...set-cluster 在kubeconfig配置文件中设置一个集群项。 set-context 在kubeconfig配置文件中设置一个环境项。...配置完,切换环境项 kubectl config use-context produce-system 这样直接输入kubectl get node即可查看produce-system集群的信息。
大家都知道kubectl主要用来管理kubernetes集群,但当我们的环境中有多套kubernetes集群时,该如何进行管理呢,下面列出了通过配置kubeconfig来实现kubectl管理多套集群的方法...export KUBECONFIG=~/.kube/config 可以使用kubectl config view查看合并后kubeconfig配置情况,正常情况下,可以显示两个集群凭证信息。...四、总结 三种配置方法我倾向于使用第二种,当需要管理多套集群时配置起来也比较简单,值得注意的是第一种配置方法在使用> ~/.kube/config时会把之前的访问凭证覆盖掉,这时可以将集群的/etc/kubernetes...当配置完多集群访问凭证后,可以使用以下命令进行多集群信息的查看及切换。 kubectl config get-contexts #查看集群信息,*表示当前的工作环境。...kubectl config use-context kubernetes-admin@kubernetes #切换工作环境到kubernetes-admin@kubernetes kubectl
Mac zsh kubectl 安装及自动补全配置 安装 brew install...kubectl 配置自动补全 The kubectl completion script for Zsh can be generated with the command kubectl completion...Sourcing the completion script in your shell enables kubectl autocompletion....'alias k=kubectl' >>~/.zshrc echo 'complete -F __start_kubectl k' >>~/.zshrc After reloading your shell..., kubectl autocompletion should be working.
安装 brew install kubectl 配置自动补全 The kubectl completion script for Zsh can be generated with the command...kubectl completion zsh....Sourcing the completion script in your shell enables kubectl autocompletion....'alias k=kubectl' >>~/.zshrc echo 'complete -F __start_kubectl k' >>~/.zshrc After reloading your shell..., kubectl autocompletion should be working.
/90577769 Kubernetes集群经常部署在Linux环境,而本机环境经常是Windows,除了ssh登录到kubernetes所在机器进行操作,也可以在本机配置...kubectl,来远程操作服务器上的kubernetes。...kubectl可执行文件,地址是:https://storage.googleapis.com/kubernetes-release/release/v1.7.0/bin/windows/amd64/kubectl.exe...登录到可以执行kubectl的Linux服务器,去目录~/.kube/,将里面的config文件下载下来,放到上一步创建的.kube目录下; 回到windows电脑,打开控制台,进入kubectl.exe...文件所在目录,即可通过kubectl对kubernetes环境进行操作,如下图: ?
kubectl apply 通过文件名或控制台输入,对资源进行配置。 摘要 通过文件名或控制台输入,对资源进行配置。 接受JSON和YAML格式的描述文件。...kubectl apply -f FILENAME 示例 # 将pod.json中的配置应用到pod $ kubectl apply -f ..../pod.json # 将控制台输入的JSON配置应用到Pod $ cat pod.json | kubectl apply -f - 选项 -f, --filename=[]: 包含配置信息的文件名...--schema-cache-dir="/tmp/kubectl.schema": 如果不为空,将API schema缓存为指定文件,默认缓存到“/tmp/kubectl.schema”。...--cluster="": 指定使用的kubeconfig配置文件中的集群名。 --context="": 指定使用的kubeconfig配置文件中的环境名。
kubectl 在管理工具界面使用kubectl语法运行如下命令: kubectl [command] [TYPE] [NAME] [flags] 下表包括了所有kubectl操作简短描述和通用语法:...列出支持的API版本 apply kubectl apply -f 对文件或stdin的资源进行配置更改。...exec kubectl exec POD 对pod中的容器执行命令。 explain kubectl explain 获取各种资源的文档。...get kubectl get 列出一个或多个资源。 label kubectl label 添加或更新一个或多个资源的flags。...logs kubectl logs POD 在pod中打印容器的日志。 proxy kubectl proxy 在Kubernetes API服务器运行代理。
作者:imuxin 灵雀云后端工程师 今天给大家推荐一个插件:kubectl-watch kubectl-watch:一个可以监听 kubernetes 资源的变更信息的 kubectl 插件。...拷贝 script 目录下的 kubectl-watch 脚本到环境的 $PATH 其中的一个目录下,比如 /usr/local/bin。...cp script/kubectl-watch /usr/local/bin/ chmod +x /usr/local/bin/kubectl-watch 方式二:从 release assets[6...cargo install kubectl-watch --locked Cmd 帮助 USAGE: kubectl-watch [OPTIONS] [ARGS] ARGS: <RESOURCE...资源 kubectl-watch deployment -n {namespace} {name} 追加 --skip-delta 选项,仅监听变动资源,同 kubectl get -w kubectl-watch
为kubernetes(k8s)单独配置kubectl工具 介绍 Kubernetes API 是一个 HTTP REST API。...因此,kubectl 的主要目的是向 Kubernetes API 发出 HTTP 请求: 配置apt软件源 root@hello:~# apt-get update && apt-get install...root/.kube/ 复制代码 配置kubectl配置文件 root@hello:~# vim /root/.kube/config root@hello:~# root@hello:~# root...server需要修改,并且该配置文件在原有的集权管理节点上。...配置自动补全,并测试kubectl root@hello:~# apt install -y bash-completion Reading package lists...
网站: bash-completion补全工具官网:https://caliban.org/bash/ 安装: 在日常管理k8s集群的时候,时刻都会使用到Kubectl命令行工具,但是该命令还是挺复杂的...,使用中也记不住那么多的api选项,所以这里介绍一下Kubectl命令补全工具(其实是Linux中bash命令自动补全工具)的安装。...completion bash) [root@k8s-master ~]# echo "source > ~/.bashrc //...应用kubectl的completion到系统环境 查看bash_completion补全脚本程序: [root@k8s-master ~]# vim /usr/share/bash-completion...1.Kubectl命令自动补全: [root@k8s-master ~]# kube kubeadm kubectl kubelet [root@k8s-master ~]# kubectl
通常情况下,我们简单地使用 kubectl logs 或者 kubectl describe pod 便足以找到问题所在,但有时候,一些问题会特别难查。...在初始化 Kubernetes 集群时开启临时容器功能 如果想在 kubeadm 初始化 Kubernetes 集群时开启临时容器功能,则修改 kubeadm 配置文件: # init-k8s.yaml...为了模拟应用崩溃的场景,使用 kubectl run 命令创建一个立即退出的容器: kubectl run --image=busybox myapp -- false 使用 kubectl describe...下面的例子,用 kubectl run 创建一个 Pod: kubectl run myapp --image=busybox --restart=Never -- sleep 1d 现在可以使用 kubectl...作为参数显式运行 kubectl debug 以访问我们集群的节点。
> --replicas=3 查看节点信息 获取节点列表:kubectl get nodes 管理配置文件 列出当前配置信息:kubectl config view 切换到另一个上下文:kubectl...secrets 查看 Ingress 资源 获取 Ingress 列表:kubectl get ingress 设置上下文的配置 设置上下文的配置:kubectl config set-context...设置上下文的配置 设置上下文的配置:kubectl config set-context --cluster= --user=<user-name...kubectl get nodes 管理配置文件 列出当前配置信息:kubectl config view 切换到另一个上下文:kubectl config use-context <context-name...列表:kubectl get ingress 设置上下文的配置 设置上下文的配置:kubectl config set-context --cluster=<cluster-name
我们可以用 kubectl 在集群中创建任何类型的资源,包括: Service Cronjob Deployment Job Namespace(ns) 其中,一些资源的创建需要设置配置文件、命名空间以及资源名称...如果我们要编辑现有的 cron job,则可以执行: $ kubectl edit cronjob/my-existing-cron 我们要编辑的配置如下: # Please edit the object...Kubectl apply 上文提到,某些命令需要配置文件,而 apply 命令可以在集群内调整配置文件应用于资源。...作为示例,下文会将 Helm 的基于角色的访问控制(RBAC)配置用于服务帐户。.../tiller created 我们可以应用几乎任何配置,但是一定要明确所要应用的配置,否则可能会引发意料之外的后果。
作为触发键 (dash snippets可以全局监听键盘输入,使用指定的输入作为触发而展开配置的内容,相当于是全局代码片段),以后在某个终端想使用 k 的时候按下 kk....就可以将 k 命令注册到当前终端,dash snippets 配置如图所示: image.png 将 k 当作 kubectl 来用,只是不需要输入命名空间,它会调用 kubectl 并自动加上上次使用的非默认的命名空间...,如果想切换命名空间,再常规的使用一次 kubectl 就行,下面是示范: image.png 哈哈,是否感觉可以少输入很多字符,提高 kubectl 使用效率了?...这是目前我探索解决 kubectl 重复输入命名空间的最好方案,一开始是受 fuck命令 的启发,想用 go 语言开发个 k 命令,但是发现两个缺点: 需要安装二进制才可以使用(对于需要在多个地方用kubectl...使用的哪个命名空间 这里解释下第二个缺点的原因:ssh 连上服务器会启动一个 shell 进程,通常是 bash,大多 bash 默认配置会实时将历史输入追加到 ~/.bash_history里,所以开多个
[root@master ~]# kubectl get nodes 查看集群节点 NAME STATUS AGE node1 Ready 25m node2 Ready... 19m [root@master ~]# kubectl version 查看版本 Client Version: version.Info{Major:"1", Minor:"5", GitVersion...kubectl create -f MySQL-deployment.yaml deployment "mysql" created [root@master ~]# kubectl get deployment...[root@master ~]# kubectl exec -it mysql-2261771434-r8td1 bash bash-4.2# cp: [root@master ~]# kubectl...If 'tar' is not present, 'kubectl cp' will fail.
share/bash-completion/bash_completion # source /usr/share/bash-completion/bash_completion # source <(kubectl...没问题后,我们对 /root/.bashrc 加2行代码 ,方便以后每次登录自动生效: source /usr/share/bash-completion/bash_completion source <(kubectl...bash) 在mac上 $ brew install bash-completion $ source $(brew --prefix)/etc/bash_completion $ source <(kubectl
由于笔者所维护的集群规模较大,经常需要使用 kubectl 来排查一些问题,但是 kubectl 功能有限,有些操作还是需要写一个脚本对 kubectl 做一些封装才能达到目的。...的插件机制做了一些改进,对 kubectl 的扩展也比较容易,所以下文会带你了解一下 kubectl 的扩展功能。...一、编写 kubectl 插件 kubectl 命令从 v1.8.0 版本开始支持插件机制,之后的版本中我们都可以对 kubectl 命令进行扩展,kubernetes 在 v1.12 以后插件可以直接是以...如 kubernetes 官方文档中描述,只要将二进制文件放在系统 PATH 下,kubectl 即可识别,二进制文件类似 kubectl-foo-bar,并且在使用时 kubectl 会匹配最长的二进制文件...参考: kubectl 插件命明规范 https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/ https://github.com
创建调试会话要创建一个调试会话,您可以使用以下命令:kubectl debug -it --image=其中,“”是要调试的Pod的名称...配置自动化要配置自动化,您可以使用以下命令:kubectl apply -f 其中,“”是包含Kubernetes对象的YAML文件的名称。...例如,如果您要使用Kubernetes对象配置自动化流程,可以使用以下命令:kubectl apply -f automation.yaml查看资源对象状态要查看资源对象的状态,您可以使用以下命令:kubectl...例如,要查看名为“my-pod”的Pod的状态,您可以使用以下命令:kubectl describe pod my-pod此命令将显示有关Pod的详细信息,包括其IP地址、容器、卷和事件等。...管理命名空间要管理命名空间,您可以使用以下命令:kubectl create namespace kubectl delete namespace <namespace-name
kubecolor 为 kubectl 命令输出着色,不执行任何其他操作。kubecolor 在内部调用 kubectl command 并尝试对输出进行着色。...Mac 安装 $ brew install dty1er/tap/kubecolor Kubecolor 用法 如果习惯使用 kubectl,可以把 kubecolor 命令做一个 kubectl 别名...具体在 .bash_profile 文件中配置,下面是具体配置。kubecolor 使用和 kubectl 命令方法一样。...alias kubectl="kubecolor" 当 kubecolor 输出 tty 不是标准输出时,它会自动禁用着色。
领取专属 10元无门槛券
手把手带您无忧上云