Windows下Rancher复制Pod内文件到本地
Rancher 未提供直接获取 Pod 内文件的工具(如果有请评论告知下,蟹蟹),但提供了 Rancher 的 CLI 客户端,通过 CLI 可以调用 k8s 的 CLI (kubectl) 命令来操作集群及复制文件。
为简化操作,本文将 rancher.exe 和 kubectl.exe 都复制到了 系统环境变量Path下,比如在 C盘建了个usrbin目录。
复制rancher与 k8s 的客户端到 Path
rancher.exe可以通过官网,也可以通过Rancher UI 右下角下载;
kubectl.exe 下载地址,需有技巧地上网。
下载完成复制到 C:/usrbin
下。至于想放到其他地方也可以,把其他目录添加到 当前用户或全局 Path下即可。
添加环境变量
验证CLI可用性
打开GitBash执行如下命令:
rancher --version kubectl version
创建API & Keys
Scope千万不要选,如果指定集群后,会无法CLI登录。
创建CLI存储登录信息目录
创建目录 C:\Users\当前用户名\.rancher
配置CLI存储登录信息环境变量
新建用户环境变量 RANCHER_CONFIG_DIR
,值为 C:\Users\当前用户名\.rancher
,即上节创建的目录绝对路径
使用CLI登录
新启一个cmd,执行命令登录
rancher login https://<SERVER_URL> --token <BEARER_TOKEN>
示例:
$ rancher login https://xxx.xxx.com.cn --token token-xzgj2:5t4kjp2gvhgs52n68fjwfzpxk8g7rjz5s92kdm8ldhnpkrb2hq477s The authenticity of server 'https://xxx.xxx.com.cn' can't be established. Cert chain is : [Certificate: Data: Version: 3 (0x2) Serial Number: 11600916281625505644 (0xa0febbe4d3556f6c) Signature Algorithm: SHA256-RSA Issuer: C=CN,CN=localhost Validity ...省略自签证书提示 Do you want to continue connecting (yes/no)? yes #自签证书需要显式连接确认 NUMBER CLUSTER NAME PROJECT ID PROJECT NAME PROJECT DESCRIPTION 1 cwgx c-txpcb:p-2vpxb fssc_std 2 cwgx c-txpcb:p-x76h6 fssc_demo Select a Project:1 #输入项目编号 time="2021-09-07T11:42:37+08:00" level=info msg="Saving config to C:\\Users\\hellxz\\.rancher\\cli2.json"
通过rancher CLI使用kubectl命令
rancher限制了用户可以访问的命名空间,需要指明在哪个命名空间操作
命令格式:
#查看命名空间 rancher namespaces #执行kubectl命令,需指定命名空间 rancher kubectl <具体命令> -n <命名空间> #查看指定命名空间下Pod列表 rancher kubectl get po -n <命名空间名>
示例:
$ rancher namespaces ID NAME STATE PROJECT DESCRIPTION fssc-std fssc-std active c-txpcb:p-2vpxb $ rancher kubectl get po -n fssc-std NAME READY STATUS RESTARTS AGE bud-nvwa-server-5d756595df-5nv8g 1/1 Running 0 3d20h fssc-nros-7bb6776cd9-f5hln 1/1 Running 0 4d13h fssc-nvwa-server-5d76dfc695-qvqkr 1/1 Running 0 3d20h gateway-787c4777f9-bt72b 1/1 Running 1 32d
复制Pod名称取出容器内文件
rancher kubectl cp <Pod名称>:<绝对路径> <当前相对路径> -n <命名空间名>
比如取 bud-nvwa-server-6768b4859-kmhk6
容器内的 /app/logs
目录到 我的桌面(注意相对路径)
到此文件已经拷到本地了。
更多CLI命令参考
本文作者:东北小狐狸
本文链接:https://www.cnblogs.com/hellxz/p/copy-pod-files-by-rancher-cli.html
版权声明:本作品采用自由转载-非商用-非衍生-保持署名 (CC BY-NC-ND 3.0)许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
2017-09-07 solrcloud(solr集群版)安装与配置