在 Windows 上设置和使用 kubectl 的综合指南,包括处理代理、管理多个集群和升级 kubectl。...译自 Best Practices for Using kubectl on Windows,作者 Jim Angel。 概述 Kubectl 是访问 Kubernetes 集群的核心。...文档传统上专注于 Linux,此帖子提供了在 Windows 10 上使用 kubectl 的最佳实践,包括: 为 PowerShell 设置 kubectl 在公司代理后面使用 kubectl 向 kubectl...添加集群 常见的 kubectl 多集群命令 升级 kubectl 故障排除和提示 随着 Kubernetes 1.14 宣布完全支持 Windows 节点,现在有更多关于在 Windows 上运行...无需手动编辑 kubeconfig 文件 跨环境统一 kubectl 工作流 简化开发人员入职 每个集群和命名空间的自定义上下文 要求 Windows 10 PowerShell v5.2+ 互联网访问权限
已发行版本,确认需要安装的 kubectl 版本。...用最新兼容版的 kubectl 有助于避免不可预见的问题。3、根据 kubectl 安装指引 ,下载和安装 kubectl 客户端。...将 kubectl 二进制文件夹追加或插入到你的 PATH 环境变量中或者直接放到文件夹C:\Windows\System32 下本地配置 Kubeconfig1、获取配置文件后,通过复制或下载,将文件内容保存至本地...2、在$HOME下新建文件夹.kube,在此文件夹内新建config文件3、将配置文件内容写入到config文件内;如果是内网映射出来的地址,需要配置hostshosts文件在文件夹C:\Windows...使用命令 kubectl completion powershell 生成 PowerShell 的 kubectl 自动补全脚本。
环境信息 kubernetes:1.14.0 kubectl:1.7.0 kubernetes所在Linux服务器:CentOS7.4 本地环境:win10专业版64位 操作步骤 下载windows版的...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环境进行操作,如下图: ?...至此,windows环境下已经可以远程操作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”。
kubectl 在管理工具界面使用kubectl语法运行如下命令: kubectl [command] [TYPE] [NAME] [flags] 下表包括了所有kubectl操作简短描述和通用语法:...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服务器运行代理。...run kubectl run 在集群上运行指定的镜像。 scale kubectl scale 更新指定replication controller的大小。
作者: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
kubectl 常用命令 获取资源信息 获取所有 Pod:kubectl get pods 获取所有 Service:kubectl get services 获取特定 Namespace 中的...> --replicas=3 查看节点信息 获取节点列表:kubectl get nodes 管理配置文件 列出当前配置信息:kubectl config view 切换到另一个上下文:kubectl...驱逐节点上的所有 Pod:kubectl drain 取消维护模式:kubectl uncordon 滚动更新历史和回滚 查看滚动更新历史:kubectl...Pod:kubectl drain 取消维护模式:kubectl uncordon 在容器内交互 附加到正在运行的容器:kubectl attach -...查看节点的 CPU 和内存使用情况:kubectl top nodes 查看 Pod 的 CPU 和内存使用情况:kubectl top pods 快速创建 Pod 快速创建一个 Pod:kubectl
通常情况下,我们简单地使用 kubectl logs 或者 kubectl describe pod 便足以找到问题所在,但有时候,一些问题会特别难查。...为了模拟应用崩溃的场景,使用 kubectl run 命令创建一个立即退出的容器: kubectl run --image=busybox myapp -- false 使用 kubectl describe...此时可以使用 kubectl debug 命令创建该 Pod 的一个副本, 在该副本中将命令改变为交互式 shell: # 这里 --container 不能省略 ❯ kubectl debug myapp...下面的例子,用 kubectl run 创建一个 Pod: kubectl run myapp --image=busybox --restart=Never -- sleep 1d 现在可以使用 kubectl...作为参数显式运行 kubectl debug 以访问我们集群的节点。
例如,要获取命名空间,可以使用 kubectl get ns 命令: $ kubectl get ns NAME STATUS AGE charts...$ KUBE_EDITOR="nano" kubectl edit cronjob/my-existing-cron Kubectl delete 学会了以上命令后,下面我们将进行删除操作。...# 二、使用kubectl对kubernetes进行故障排除 Kubectl describe describe 命令可以查看资源的详细信息。...:/# Kubectl cp Kubectl cp 命令与 Linux cp 命令类似,用于容器之间复制文件和目录。...# kubectl客户端快捷使用 ##kubectl curl -L https://dl.k8s.io/release/v1.24.2/bin/linux/amd64/kubectl -o /usr
是否有过因为使用 kubectl 经常需要重复输入命名空间而苦恼?是否觉得应该要有个记住命名空间的功能,自动记住上次使用的命名空间,不需要每次都输入?...$nsarg $@" echo "$cmd" $cmd return done cmd="kubectl $@" echo "$...就可以将 k 命令注册到当前终端,dash snippets 配置如图所示: image.png 将 k 当作 kubectl 来用,只是不需要输入命名空间,它会调用 kubectl 并自动加上上次使用的非默认的命名空间...,如果想切换命名空间,再常规的使用一次 kubectl 就行,下面是示范: image.png 哈哈,是否感觉可以少输入很多字符,提高 kubectl 使用效率了?...这是目前我探索解决 kubectl 重复输入命名空间的最好方案,一开始是受 fuck命令 的启发,想用 go 语言开发个 k 命令,但是发现两个缺点: 需要安装二进制才可以使用(对于需要在多个地方用kubectl
kubecolor 为 kubectl 命令输出着色,不执行任何其他操作。kubecolor 在内部调用 kubectl command 并尝试对输出进行着色。...Mac 安装 $ brew install dty1er/tap/kubecolor Kubecolor 用法 如果习惯使用 kubectl,可以把 kubecolor 命令做一个 kubectl 别名...kubecolor 使用和 kubectl 命令方法一样。 alias kubectl="kubecolor" 当 kubecolor 输出 tty 不是标准输出时,它会自动禁用着色。
由于笔者所维护的集群规模较大,经常需要使用 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
[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 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
查看资源对象的详细信息要查看资源对象的详细信息,您可以使用以下命令:kubectl describe 其中,“”是资源对象的名称,...例如,要查看名为“my-pod”的Pod的详细信息,您可以使用以下命令:kubectl describe pod my-pod创建资源对象要创建资源对象,您可以使用以下命令:kubectl create...例如,要删除名为“my-pod”的Pod,您可以使用以下命令:kubectl delete pod my-pod调试资源对象要调试资源对象,您可以使用以下命令:kubectl logs ...例如,要在名为“my-pod”的Pod中执行“ls”命令,您可以使用以下命令:kubectl exec my-pod -- ls
在清华大学出版社出版的>一书上看到了总结的Kubectl命令,觉得很不错,比较全,包括有命令的含义以及常见的资源对象,所以分享一下。...常用子命令我们可以看到有kubectl run运行一个镜像,kubectl get列出资源,kubectl expose暴露资源服务,kubectl exec在pod容器内执行命令等等。
kubectl管理多个集群配置 需求描述: 在一台机器上通过kubectl管理多个Kubernetes集群。...操作过程:将各集群的kubectl config文件中的证书内容转换,通过命令创建config文件;通过上下文切换使用不同集群。...flatten > $HOME/.kube/config root@hello:~/.kube# root@hello:~/.kube# 复制代码 测试配置 root@hello:~/.kube# kubectl...context-cluster2 cluster2 test-admin root@hello:~/.kube# root@hello:~/.kube# kubectl...config current-context context-cluster1 root@hello:~/.kube# root@hello:~/.kube# kubectl get node NAME
简介 kubectl 是 重要的 kubernetes 管理/运维工具 kubectl 功能非常强大, 常见的命令使用方式可以参考 kubectl --help,或者这篇文章 这篇文章首先会简单介绍几个...kubectl 你可能不知道的小技巧,主要篇幅介绍 kubectl 的 plugin. kubectl 小技巧 设置自动补全 kubectl completion zsh 检查资源 SPEC (有没有遇到过...kubectl explain [--recursive] 给常用的命令设置 alias, 比如笔者常用的: kns="kubectl -n kube-system", kna="kubectl --..., 这个项目使用一套规则生成了 800 多个 aliases kubectl plguin kubectl 支持一种简单的 plugin 机制,支持通过 kubectl 调用另一个二进制,完成 kubernetes...kubectl-plugins-index
metrics-server/releases/download/v0.3.7/components.yaml 修改 yaml ,将 deploy 资源中的镜像地址修改为其他可用源 image.png 验证 kubectl
领取专属 10元无门槛券
手把手带您无忧上云