0.4 运维利器之行云管家文件上传实践指南

原创 陈宝佳  2018-03-27 14:18  阅读 1,418 次 评论 0 条
行云管家,新手有礼

目录


  •  文件传输的应用与实现
    • 文件传输的应用
    • 网盘(文件传输的中间介质)
      • 团队网盘
      • 主机网盘
    • 文件传输为什么快?
    • Linux(SSH文件传输)
    • Windows(RDP文件传输)
    • 批量文件上传(文件分发控制台)
    • 批量文件下载(文件采集控制台)

文件传输的应用与实现


文件传输的应用

  • 1、支持批量上传补丁或文件...
  • 2、支持批量下载日志或文件...
  • 3、支持上传或下载整个目录...

为什么要使用行云管家的文件传输而不选择传统的FTP呢?

日常运维工作中我们会遇到需同时向成百上千个服务器传输文件,譬如安装补丁、收集日志文件等场景中,受限于远程连接主机的方式限制,我们难于直接在客户端和主机之间建立一个文件传输通道,需要一个网盘作为中间介质来实现客户端和主机之间的文件传输。

在使用行云管家分发文件、文件(日志)收集时,无需安装任何服务端软件,即可获得比传统FTP传输方式快十倍并且不占用公网带宽。

本文使用的行云管家版本: V4.1(日期:2018-03-22)

网盘(文件传输的中间介质)

我们知道在行云管家中,网盘分为两种。团队网盘和主机网盘。

团队网盘

团队网盘是整个团队的公共存储空间,所有成员皆拥有读写权限,通常用于成员存放一些常用的文件。它无法与云主机进行文件传输,但可以将团队网盘的文件复制到主机网盘中,继而将文件传输至云主机;

1、点击菜单——》选择网盘资源 

2、选择团队网盘——》上传、下载、管理等操作 

主机网盘

受限于B/S架构,我们在会话中无法直接在远程桌面/SSH终端进行文件的上传和下载,为了实现这个需求,行云管家在我们导入主机时,自动为每台主机分配了一个主机网盘,该网盘将在远程连接主机过程中被挂载成主机的逻辑磁盘,方便我们用户传输文件。

1、点击菜单——》选择网盘资源 

2、选择主机网盘——》选择待操作的主机 

3、可根据需求选择相应的操作

文件传输为什么快?

在文件传输过程中,如果我们通过公网传输,很显然会受到公网带宽的限制,并且传输还会和业务系统争夺宝贵的公网带宽资源,严重影响应用质量。

针对这个现象,行云管家特别对于云主机提供了文件传输区域优化的特性:

将主机网盘部署在云主机同一个内网中,充分利用云厂商内网千兆带宽的优势。

用户只要使用“内网IP访问”(了解如何启用内网访问)访问云主机,便能够获得1030Mbps峰值速率(即1.25MB3.75MB)的“极速文件传输”,无需占用用户云主机的公网带宽。

架构图示意图

在分配主机网盘时,为了保证主机网盘和云主机位于同一内网,行云管家将主机网盘部署在云厂商的对象存储资源中,这样就实现了云主机和主机网盘的内网互通。

但这种方案存在一个缺点:要求云厂商在云主机所在区域内部署有对象存储资源。

而目前云厂商开通的对象存储资源有限,因此如果云主机所在的区域不支持对象存储,将导致云主机无法获得文件传输区域优化的特性。

除以上区域云主机外,都不支持文件传输区域优化特性,文件将通过公网来传输。

Linux(SSH文件传输)

1、选择将要操作的主机——》连接 

2、打开SSH会话后,在文件传输面板就可以直接查看到主机的文件目录(注意:SSH中显示的是云主机的文件系统,而不是主机网盘);

3、上传下载文件(通过文件传输面板的上传和下载按钮进行文件传输)

3.1、文件上传(上传目录、文件、主机网盘资源) 

3.2、文件下载(下载目录、文件至本地、网盘资源) 

3.3、文件操作(删除、移动、复制、重命名) 

3.4、文件排序

3.5、文件操作记录 

Windows(RDP文件传输)

RDP文件传输

批量文件上传(文件分发控制台)

注意:

  • 1、目录过大极易造成浏览器假死。
  • 2、不支持上传根目录或空文件夹。
  • 3、文件分发仅支持通过主机Agent来完成,因此需要确保目标主机已经安装了Agent并处于正常运行状态。

在现实场景中,经常需要将文件批量分发到多台主机中,如安装补丁包。在行云管家中,可以借助文件分发控制台来完成这一功能;目前支持“本地文件(上传文件、上传目录)”、“网盘文件”、“主机文件(某台主机上的文件)”三种文件上传途径;

1、点击菜单——》选择作业中心——》文件分发控制台 

2、选择需分发的文件

3、填写目标主机文件分发的路径,所有的文件将会被传输到指定的路径,我们还可以设置目标主机存在重名文件和路径不存在时的处理策略;

主机选择完毕后,点击“立即分发”图标即开始将文件分发至所选主机;

4、文件分发完毕示意图 

批量文件下载(文件采集控制台)

注意:

1、文件采集需要Agent支持,请确保待选主机已经安装了行云管家Agent且运行正常;

在文件批量操作场景中,除文件分发外,还存在从多台主机中批量采集某些共同特征文件的情况,如:定期收集多台主机上的日志文件。在行云管家中,我们可以通过文件采集控制台来实现这个需求。

1、打开“文件分采集控制台”,可以看到一个流程化的界面,分别是:选择源主机、设置待采集的文件规则、设置文件的网盘存储目录;

2、在“源主机”对话框中,点击下方“选择”按钮,弹出主机选择对话框,选择要批量采集文件的主机。

3、在“待采集的文件”节点中,输入待采集的文件/文件夹完整路径,点击“添加”即可,可重复添加多个采集目标,支持Windows/Linux操作系统。所选主机中如果存在这些文件/文件夹,将会全部采集,若不存在,将跳过继续采集下一个目标;

3.1、在文件采集控制台中,行云管家支持我们使用通配符来定义待采集的文件,具体规则如下:

*:匹配指定目录下文件名中0或多个字符;

**:匹配指定目录及其子目录下文件名中0或多个字符;

?:匹配文件名中的一个字符;

3.2、文件采集规则示例:有4个文件,分别是:

  • 1、bar.txt;
  • 2、src/bar.c;
  • 3、src/baz.c;
  • 4、src/test/bartest.c;

3.3、对于这些文件,我们可以通过以下的通配符规则来匹配其中若干个文件:

  • *.c:无法匹配,因为*只能在当前目录下进行匹配,而当前目录下没有.c文件;
  • src/*.c:匹配文件2和3,在src下存在src/bar.c和src/baz.c两个文件;
  • */*.c:匹配文件2和3 ,因为*只在当前目录下进行匹配,文件4位于子目录,因此无法匹配;
  • **/*.c:匹配文件2、3和4,因为**可以在子目录下进行匹配; bar.*:匹配文件1;
  • **/bar.*:匹配文件1和2 ;
  • **/bar*.*:匹配文件1、2和4;
  • src/ba?.c:匹配文件2和3,因为?可以匹配任意一个字符 ;

3.4、采集/tmp/目录下的所有.pdf文件

4、在“目标网盘”中,点击“设置”,设置文件存放到网盘的路径,可选团队网盘、任何一台主机网盘中的任意位置,文件采集完毕后,我们可前往该网盘地址下载已采集的文件。采集条件设置完毕后,点击“立即采集”即开始从所选主机中采集文件,并最终存放在目标网盘中;

5、采集进度和结果将以新的tab页签的形式进行展示,同时在审计日志中也将提供记录。

6、采集成功 

至此大家已经可以将文件传输功能应用于日常运维工作中,减少不必要的时间浪费,利用空闲时间学习公司所需技术,发现公司业务上可优化的点,提升运维的价值。

本文地址:https://www.cloudbility.com/club/6099.html
关注我们:请关注一下我们的微信公众号:扫描二维码,公众号:cloudbility
版权声明:本文为原创文章,版权归 陈宝佳 所有,欢迎分享本文,转载请保留出处!

发表评论


表情