在客户端电脑使用 kubectl 远程管理 Kubernetes
日常工作中,可能需要在自己的笔记本电脑上执行 kubectl 命令以管理远程 Linux 服务器上的 Kubernetes 集群。通过调用 kubernetes API 来实现对 Kubernetes 对象的操作.
在客户端电脑安装 kubectl
Linux
# cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
# yum install -y kubectl
# kubectl version
Windows
从下面的链接下载 kubectl 可执行文件
https://storage.googleapis.com/kubernetes-release/release/v1.16.2/bin/windows/amd64/kubectl.exe
请将其中的 v1.16.2 替换为最新的版本号
通过此链接可获取最新的版本号 https://storage.googleapis.com/kubernetes-release/release/stable.txt
将下载的可执行文件添加到 PATH 环境变量
执行命令查看已安装的 kubectl 版本号
kubectl version
MAC
# 下载最新的可执行文件
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl"
# 添加可执行权限
chmod +x ./kubectl
# 复制到 PATH 路径
sudo mv ./kubectl /usr/local/bin/kubectl
# 检查已安装版本
kubectl version
获取 kubectl config 文件
在master节点上执行如下命令查看:
# cat /etc/kubernetes/admin.conf (或者这个路径:~/.kube/config) (或者直接使用命令查看:kubectl config view --raw)
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN5RENDQWJDZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJd01EVXlOekExTXpJeE1Gb1hEVE13TURVeU5UQTFNekl4TUZvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBT1JPCllMMzNKa1lBaElFS2s1ajMxT29PSVpHM0ZPbUV2Y1NlRmhjVFRZTnhRZXEwSE1BWVBvRE54N05pVElGRytwRkwKSGo3OE1IMlFYbGgyQUk5ZFpseHVoUnoydjNVa1VqMVpaNk5ZMTlWc21sZFBGR3gxVEJpRVgyMVl2Y05HbzhYegoydWlnY2dNcDVNbEhoZEc5UHdIaW5HRjYxbDFYRVdnZnB3c0N6aDMrWVZINmhGUnlsbWpha2QvbDIrVmNTK1IvCkxQMjluaTBXVkk3VmhacXpuUW81UklCcGpZUlRHQ0VtWU95M0l1Y250OGdQekpDcUFpN21razhCWlZYY1NoQW4KRjVRODBBRXQ5N01sRmJtVHJ2L1RwNzYvVlVPQ3Z2UlJxMGxrMWlpeHZWUS9vRXJOSExzTHNvOEt2a3ZBMnRRbwpvWlU1ME51VVp3Q3FOMFJUR1k4Q0F3RUFBYU1qTUNFd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFMQTlzM3VmVnFzNm9pQ0lsZy9aK3lHSVZOSXAKazdSNDNKWWgweGVtQk9RZ2RiM0JmQm1iMnRxZER6a3JOUjhwTS9nejFDK1VkcEdGMGd0clFJb2RaTEJEcmtDWApYVm9qd0NMQ3ZMdEtQcTZkcEZJM09Jdi91bXkrVUxIbGtOMUk2MjRCVkMzWnZuRUUreGFRdDBxVXY2OXlzeDM1CjlrUTdXMndvQjRvbDJPaURJOHJ6dVJkTk9kZGYwMG9iYkJSQkFjbnZvdys3M0RodnBOb0srd3Z2OHAvUFBSUlQKOC9YN0pEc2dpcUdNbUhUdUlBbzV0SDBwS0dFaEw5TFNaY0x3Y0FtUUZMTzJwVHpRL1VMcUhaMlAzRFVtaWJNTwpiOXpFWG80VmNEdjFUZzhSR3RKcnE4UGloQU1TUTcwT0ZHbUh6KzU1MXh1T1p0OVdVZk9wQ3RSYzJ3az0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
server: https://apiserver.master:6443 # 注意这个地址,master节点上的api地址
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kubernetes-admin
name: kubernetes-admin@kubernetes
current-context: kubernetes-admin@kubernetes
kind: Config
preferences: {}
users:
- name: kubernetes-admin
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4akNDQWRxZ0F3SUJBZ0lJQ2tycEFwb202d0F3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TURBMU1qY3dOVE15TVRCYUZ3MHlNVEExTWpjd05UTXlNVEphTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXR1aWxHd2xZZU9sNzRpTjMKVzl1eXFKK2F4NzVUeWNIUnNRR0ZMUnB3YWRvTktmQmpuQS9DZjFIVkYyVmxjVGVLWHNQTWp3ZzdoT1E2b25vTgpxOXhWK0J0RUYyVFgwOFRxRU5aRERFblcxOFJZU2dqMkxuem5WUUhkbWp4Y3JQbzlIa0N4RWpsWXFzbWxSYUdJCm53Yjd2Q2hLbGlPU1lxaHUwZ0x6bW9yNGNhdWFCbFdLV1FCbzNnQ0pPd0V4Y3JoT3JxYS80Zk1vSThmd1ppYTgKVnpTQ0xPK3N3eUphdmtQRFJpYWE1dmlXektXOFE1ODh2RjBuekNsdEh1SGlSdjczOVowVUpoYlQrVnN0bWZKagpUVVpQaks1S21teDd0SkJlMVIwSW9nejVTaTJTcE5OdmpBbUlrcXAxUlljaWMzQzBXZ2FZRWtLeDlRTFVxRm52CldvMmdHd0lEQVFBQm95Y3dKVEFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFIRDBZY2RhTVFrVnMyVDFEcytlMnAvcS9zcWtBV3Z0REpyQgpicTA3WmhEM0haNzhwTWJjQVZiM3dmYmdVSi9DZzh1bzdmSzdHbzlMNm1SV21LQlhhVVVENUNMRHNUcXZ6OVpSCkpSWTNDRVNxMXhDWWUvRklYMVp2TnNnNHVwZ1M4UGo0NVB5TC9oTXhncFRWOWRkYm5HbUNHdkJtU0ZSVVZ5a2IKTVZOSDRoZ3ZmZDlXRHRqUERycDZvMUhhQjVBR1FIQ0wrRnU1TmJEeFJjNTFwVktHUG9pbmE0dWdwYkJJMU1SZQpjVDEzaGR3WVNoMlMvWmlVOGhnTW5vQTNKNmdlWG1iYUxRZk91bUJZYWNVSkZ3VkpLc1p1UHlMVVZLelp2YUJWCk9lQ29CMHIxb0ZFKzAwMGNTcFBWRHR3YXJ4ZTRWbkMvQ2IzY3BTSmZhR3h5eGMyZkdxQT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBdHVpbEd3bFllT2w3NGlOM1c5dXlxSitheDc1VHljSFJzUUdGTFJwd2Fkb05LZkJqCm5BL0NmMUhWRjJWbGNUZUtYc1BNandnN2hPUTZvbm9OcTl4VitCdEVGMlRYMDhUcUVOWkRERW5XMThSWVNnajIKTG56blZRSGRtanhjclBvOUhrQ3hFamxZcXNtbFJhR0lud2I3dkNoS2xpT1NZcWh1MGdMem1vcjRjYXVhQmxXSwpXUUJvM2dDSk93RXhjcmhPcnFhLzRmTW9JOGZ3WmlhOFZ6U0NMTytzd3lKYXZrUERSaWFhNXZpV3pLVzhRNTg4CnZGMG56Q2x0SHVIaVJ2NzM5WjBVSmhiVCtWc3RtZkpqVFVaUGpLNUttbXg3dEpCZTFSMElvZ3o1U2kyU3BOTnYKakFtSWtxcDFSWWNpYzNDMFdnYVlFa0t4OVFMVXFGbnZXbzJnR3dJREFRQUJBb0lCQUREdU01eno5eE1CZ3Y2UAo5bEpBaDU3TWM1K1RydDUrVnhZL0RkMXZBVHVQOVkyT25WY1djRFdYTXFZN25kT1h4QkJ0Mkw4NnVKRm9iTGNpClo1M2VKN0ZqdWVkNE5yU1VMUG1zRit1bHBTKzdldEx6YXNnczZjVzM1Z3hvc1hJa3owelVpWW9TaFVITEI4ZUUKMndPUDNyQUxKMGphNDBJNVJNd3h0ZkZWMC9pME4yOWhvVElSQ1RXMW80OTFONEpva3pmaE84RHEyN0w1T3UxNQprdm94YisvK0lkZStad3BHVW1DQ0U2dElhUzRUWkxmcllOUXdMZVN0Mm9uTzZpS1pjQlJWV1RzaW1IdmFDYVMrCngxOGkvWWd2elJEYmVsd1BYZHhwbHNTMVdLVE5uaFlEM1lFakVmczhBc014a2ZlN0NFQWRFQTNnR3ZIa0d4N24KQVpWb3FBRUNnWUVBenQ0ZmFlbFVuV0tSM2Y1a1pYZlRoN0x3N2lOSFFvbEE5T3Bsb2hsaFdrbmdJRVRNM2RTawpRN0phbjNwYjRZOWdvNE9YZFVQaXg5UW5mMHdYZkNvUTFXN2lVOFdYaGVUUTlUcFJ5em9PdzJPWlMxR2Rxcm90CldnQjluWU5DZWV1STRJNlNGRzRoTFZITWwrMEFvcFJ0Sy9VVFpPSldtMHAyYkNWVlE5YmhzeHNDZ1lFQTRsbkkKcWFQTDN3SXg5d2llVkpuQ3dxZUoyQVY3U3ZqbWMybXk5aGMySUJrT3RFek5BZVdEdnNxVGp0TXNyUGV5dnNFVQpqenNFeFMwcGUzZHJpOE9EdkZpQ0lid3pGcnVNYXZqaDVGUEgrcnprVTFLNnJWc3pnV3E4N1JvTzdtM3B2K0JnCkJ1RHIvWmV3Z3VKY3VKL05ZNnNpK1kzMHVJcm56UnFjN21LRmx3RUNnWUIvT3FmUmFOdE1yTm9QMGEwSHB3bm4KTk12dmVxMFNJLzVhWTJzOHBpVjA5V2l1RUFKOEVKTXl1NWYyNjdkazQ5ekkxRjhybFNQK1NPSTk3WnVvRnVzaAppY0FUUzd4a2NoVitMVzh1OGJjd3Zxb0NZK0QzcHVmTHFlK1lGNm1qK0pQSG9JZ0Jucll5L0ZNN3dWMFpvUFlBCkNndnlpUzVBOWl3ZFdWeTJpNHRtcndLQmdRREl1d1NuNURsZEdLNUV2Q0RsTjhLdkt6S2tIeUJhdVdadFBYUlcKcHZqNStCN0JLRWE2QXRjVjhNSnc2N2QzNE9aa0lnaGdpTjlQR1NEcmZGa2toZ3Vpa1A4K2VZNzQvdk9rdmZoZApxeXJ5b21iOXVhVVJMWXI4bnpMU05jUytEejAzU3Z6OXZLT3JyY1Q4SFZCSzduU1BpZW9uVTR1TnlLbU9pNlpXCkJZc2hBUUtCZ0VIZzlrTzJtV2J4OFR2alhnNHljU0MrTXZMYjZTSTJGWDRrSkJxdVFYemJKSUlzdjNkaHk5QnkKbHRHTE8zdWQ0a096UEFGVFQ3UnJhWlZRS0NTVmpiRFRPNzYrQ0E0RGQxZWFYeGFhK0I2UzBCUk0xdGZ0OGhOeQo4cVRKcCtpK1hKWmQ0VDUxcS9LcXpZdTJLVzRJME9XYW50dzc3T0JmTWJMQVJPemRSWmJtCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg==
配置 kubectl 客户端
在客户端电脑完成如下配置,即可远程管理 Kubernetes 集群
Linux
# 执行命令
vi ~/.kube/config
将前面获得的 /etc/kubernetes/admin.conf 文件的内容粘贴进该文件并保存
# 配置 hosts
echo "x.x.x.x apiserver.demo" >> /etc/hosts
将 x.x.x.x 替换成 demo-master-a-1 的实际 IP 地址
将 apiserver.demo 替换成前面获得 /etc/kubernetes/admin.conf 文件中 clusters/cluster/server 中 URL 里 host 对应的部分
# 验证安装结果
kubectl get nodes
kubectl get pods -n kube-system
Windows
用记事本(或其他文本编辑器)创建文件 ~/.kube/config,其中 ~ 代表当前的用户目录
将前面获得的 /etc/kubernetes/admin.conf 文件的内容粘贴进该文件并保存
用记事本打开 C:\windows\System32\drivers\etc\hosts 文件(需要管理员权限),在该文件末尾添加一行记录:
x.x.x.x apiserver.demo
将 x.x.x.x 替换成 demo-master-a-1 的实际 IP 地址
将 apiserver.demo 替换成前面获得 /etc/kubernetes/admin.conf 文件中 clusters/cluster/server 中 URL 里 host 对应的部分
# 验证安装结果
kubectl get nodes
kubectl get pods -n kube-system
MAC
# 执行命令
vi ~/.kube/config
将前面获得的 /etc/kubernetes/admin.conf 文件的内容粘贴进该文件并保存
# 配置 hosts
echo "x.x.x.x apiserver.demo" >> /etc/hosts
将 x.x.x.x 替换成 demo-master-a-1 的实际 IP 地址
将 apiserver.demo 替换成前面获得 /etc/kubernetes/admin.conf 文件中 clusters/cluster/server 中 URL 里 host 对应的部分
# 验证安装结果
kubectl get nodes
kubectl get pods -n kube-system
在客户端电脑使用 kubectl 远程管理 Kubernetes的更多相关文章
- windows kubectl 远程操作k8s
在windows 电脑上配置kubectl远程操作kubernetes 一.下载windows版的kubectl可执行文件 下载地址 二.创建.kube 建议使用git bash cd ~ mkdir ...
- 远程管理客户端--SCCM
远程控制客户端(设备--启动--远程控制): 1.将该用户在SCCM中赋予 远程工具操作人员 权限后,可以通过ccm控制台连接客户端,即可以使用远程控制工具 客户端设置策略设置--远程工具--管理远程 ...
- 远程管理无管理员权限的PC客户端
一.简介 为提高操作系统稳定性.流畅度,分公司同事PC用户没有administrator权限,导致同事不能对系统进行设置.不能自行安装软件.网管使用远程管理软件(如Teamviewer.QQ)为同事提 ...
- 解析ansible远程管理客户端【win终端为例】
一.前提: 1.1.windows机器开启winrm服务,并设置成允许远程连接状态 具体操作命令如下 set-executionpolicy remotesigned winrm quickconfi ...
- Linux - 远程管理常用命令
远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...
- Windows 上的 SSH?使用 PowerShell Remoting 远程管理 Windows 服务器
作者:陈计节 个人博客:https://blog.jijiechen.com/post/powershell-remoting/ 在 Linux/Unix 世界里 SSH 是个好东西,SSH 是 Se ...
- No-5.远程管理常用命令
远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...
- 安装 Helm3 管理 Kubernetes 应用
文章转载自:http://www.mydlq.club/article/51/ 系统环境: Helm 版本:v3.5.0 Kubernetes 版本:v1.18.2 一.Helm 介绍 Helm 是一 ...
- linux-图形化远程管理协议
远程管理控制方式: RDP(remote desktop protocol)协议: telnet: SSH(Secure Shell): RFB(Remote FrameBuffer)协议(图形化远程 ...
随机推荐
- Unity-2D像素晶格化消融
效果展示: ShaderLab Shader功能:图像变白+根据顶点的y值作透明裁剪: 才是可操作属性: IsDead: 控制像素变白,片元着色阶段IsDead小于0将颜色改为白色: Percent: ...
- Vue ref属性 && props配置项
1 // # ref属性: 2 // # 1.用来给元素或者子组件注册引用信息(id的替代者) 3 // # 2.应用在html标签上获取的是真实的DOM元素,应用在组件标签上是组件实例对象(vc) ...
- Odoo14 一些用的熟手的函数
# Odoo14 一些用的熟手的函数 # from odoo.tools import config # 这是直接访问配置文件,也就是当你执行./odoo-bin -c odoo.cfg的时候 # c ...
- C# 从补码中获取有符号数的实际数值
C# 从补码中获取有符号数的实际数值 原理 计算机存储数据时,默认是存储数据的补码.有符号的数粗存在符号位(最高位). 这里就会提到原码.反码.补码的概念. 原码:用符号位和数值表示带符号数,正数的符 ...
- selenium结合jmeter进行测试
背景 现在市面上有众多成熟的性能测试工具,JMeter就是其中之一.可以通过JMeter快速将已有的Selenium代码以性能测试的方式组织起来,并使用JMeter丰富的报表功能展示测试结果. 相关链 ...
- PerfView专题 (第二篇):如何寻找 C# 中的 Heap堆内存泄漏
一:背景 上一篇我们聊到了如何去找 热点函数,这一篇我们来看下当你的程序出现了 非托管内存泄漏 时如何去寻找可疑的代码源头,其实思路很简单,就是在 HeapAlloc 或者 VirtualAlloc ...
- 安装 NetworkManager(Debian最小化安装)
Debian最小化安装是没有NetworkManager 1 安装: 2 [root@debian]apt install -y netwok-manager 1 启动(查看网卡): 2 [root@ ...
- ZZH与计数(矩阵加速,动态规划,记忆化搜索)
题面 因为出题人水平很高,所以这场比赛的题水平都很高. ZZH 喜欢计数. ZZH 有很多的数,经过统计,ZZH一共有 v 0 v_0 v0 个 0 , v 1 v_1 v1 个 1,-, v 2 ...
- 第九十五篇:vue-router的导航守卫
好家伙,考完期末考了. 恢复博客更新 1.什么是导航守卫? "导航"表示路由正在发生变化 设置导航,就在切换过程中进行限制 "守卫"就好理解了 盯着你,不然 ...
- flutter系列之:Material主题的基础-MaterialApp
简介 为了简化大家的使用,虽然flutter推荐所有的widget都有自己来进行搭建,但是在大框架上面,flutter提供了Material和Cupertino两种主题风格的Widgets集合,大家可 ...