首页 > 动态中心 > 技术文章  >  正文

简单介绍一款网络运维软件、自动化运维工具clip

2023-06-26 00:00:00

文章摘要:Clip是一款自动化运维工具,适用于海量服务器的管理场景,可以降低系统误操作风险,提高工作效率等。Clip将传统的IP管理纬度替换为String管理纬度,管理方式的改变使海量运维时更加的便捷、可靠与高效。Clip是C/S架构,它将IP关系保存在Server端,Client端可以下载SDK,通过SDK遍历Server端的IP与模块关系等,并在本地对获取的IP模块关系进行重新的组织与编排,这就是Cli

Clip是一款自动化运维工具,适用于海量服务器的管理场景,可以降低系统误操作风险,提高工作效率等。

Clip将传统的IP管理纬度替换为String管理纬度,管理方式的改变使海量运维时更加的便捷、可靠与高效。Clip是C/S架构,它将IP关系保存在Server端,Client端可以下载SDK,通过SDK遍历Server端的IP与模块关系等,并在本地对获取的IP模块关系进行重新的组织与编排,这就是Clip。在此基础上Clip还提供了远程命令、文件拷贝、IP组织树遍历、历史命令查看、IP对应String关系正反解析与导入等功能。为海量服务器运维保驾护航,奠定基础。

下面来详细介绍以下clip这款自动换运维工具。

首先,传统服务器管理方式与String管理方式的相比,String管理方式的3点优势:

1) 传统为IP管理方式,IP由4组无意义的数字组成,比较难记忆。与传统方式相比String可以见名识意,方便记忆;

2) 管理海量服务时,IP相似经常会导致运营故障,譬如A模块(10.131.24.37 )和B模块(10.117.24.37) ,后两位数字一致,惯性的认为两个B模块就是A模块,发送配置导致线上故障。通过string管理方式可以很方便的规避此问题;

3) String 可以解析1个IP,也可以解析一组IP ,根据IP也可以反解析String对应关系,这让我们管理一组服务更加的方便。

我们再来看一下String的组成。String由(idc-product-modules-group) 4段组成,了解cmdb的同学会发现它与cmdb的结构很像,4级模块定位一个服务,但是随着业务的发展,笔者觉得4级服务已经无法定位到一个服务,譬如,在一台服务器上混合部署不同的业务模块,这里4级只能定位到服务的IP级别,而无法精确定位到真正的服务,所以Clip在此基础上增加了一级(idc-product-modules-group-port),port端口,通过5段定位一个服务,这也是Clip优势,灵活变换来定位一组服务,满足业务需求。再来举一个实际的例子,上海机房,A模块使用80端口提供服务,目前有100多个机器 ,B模块使用8080端口提供服务,目前有100多个机器,由于业务流量下降,为了节约资源目前想将两个模块200台机器资源合并,但功能不合并 。我们可将两个服务表示到不通的String中,如A模块(sh-weixin-friend-a-80), B模块(sh-weixin-friend-b-8080),通过String就很容易的将两个服务分别开,并部署在相同的服务器上提供服务了。

刚介绍到Clip 为C/S架构 ,String对应的IP关系保存在server服务器中,Client 通过Clip的SDK获取IP ,其优势3点:

1) IP与String建议一次关系后,所有的的服务器上通过SDK都可以调用到。

2)SDK在解析IP的基础上提供了其他丰富的功能,如扫描服务器,远程命令,远程拷贝等。

3)Clip 提供简单清晰的API与SDK代码结构与文档,当Clip不能满足我们需求时,可以通过文档很容易的扩展Clip 满足自己的需求。

接着我们来看Clip SDK,目前SDK共有8个子命令:

各SDK子命令功能如下:

◆scan:用于对String对应的IP进行端口存活状态扫描;

◆cstring:用于对String对应IP解析,与IP对应String关系的解析;

◆ssh:用于对String对应IP,远程执行系统命令;

◆scp:用于对String对应IP,远程拷贝文件;

◆tree:遍历String下的子节点;

◆history:显示历史执行过的命令;

◆import:导入IP对应String关系;

◆lt:从本地获取IP关系进行管理;

◆help:显示Clip当天有多少子命令。

较后,我们再来看一下应用案例 ,来比较一下传统方式vs clip管理方式差异:

传统方式:在 A 模块的100台服务器上,执行uptime命令,具体的操作步骤如下:

1) 找到要同步的A模块ip列表;

2) 编写脚本与ip列表中的服务器建立连接;

3) 连接服务器时输入账号密码;

4) 账号密码认证成功后拷贝文件;

5) 在每个IP重复以上步骤。

Clip 方式:

1)建立A模块ip列表与string对应关系,譬如为tj-qzone-qzoneini-access6;

2)clip ssh -p 密码 root@tj-qzone-qzoneini-access6 “执行命令”,以下为结构。

 

Clip Server安装

1) 安装Apache\PHP和MySQL

# yum install httpd php msyql mysql-server

2) 安装Clip WEB接口程序。(注: Clip WEB程序由Doitphp框架开发)

   2.1) mkdir -p /data/webroot/ (创建http虚拟主机发布目录)

   2.2) wget http://blog.puppeter.com/download/clip/clip_web.tar.gz

2.3) tar -xvzf clip_web.tar.gz -C (Apache程序发布目录/data/webroot/)

   2.4) 配置httpd.conf ,追加虚拟主机配置信息。

   NameVirtualHost *:80

ServerAdmin wds@tencent.com

   DocumentRoot /data/webroot/clip_server/

   ServerName clip.puppeter.com

   ErrorLog logs/clip.puppeter.com-error_log

   CustomLog logs/clip.puppeter.com-access_log common

   2.5) 启动httpd。

3)service mysqld start 启动Mysql

   3.1) wget http://blog.puppeter.com/download/clip/clip_db.tar.gz 下载表结构

   3.2 ) mysql -u root -p 进入mysql,导入表结构

   mysql-> create databases clip 创建clip库

   mysql-> mysql -u root -p clip < clip.sql 导入数据表。

   3.3 ) SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘newpass’); 设置mysql密码

   3.4 ) FLUSH PRIVILEGES; 刷新mysql配置

4 ) 设置Clip WEB连接mysql

编辑 /data/webroot/clip_server/application/config/clip.ini.php

Clip SDK安装

Cllip SDK 由Python开发,以下为Clip依赖环境安装过程:

1)下载安装Python (注:目前支持Python 2.6.* 和 2.7.*版本) && expect

# yum install python expect

 

# python源码安装,推荐2.6.6(下载页面:https://www.python.org/download/releases/2.6.6/)

2)下载Clip SDK

# wget http://blog.puppeter.com/download/clip/clip_latest.tar.gz

3)安装Cllip SDK

# tar -xvzf clip_p1.0.tar.gz -C /usr/local/servcers (注:指定安装目录)

4)设置Clip。 编辑 clip/conf/clip.ini 文件,变更server_ip选项为Clip_webIP

5)导入环境变量

export PATH=$PATH:/usr/local/services/clip/ (安装路径)

或者 echo ‘export PATH=$PATH:/usr/local/services/clip/ ‘ >> /etc/profile && source /etc/profile

6)执行Cllip命令 (见截图)

Clip SDK使用

Clip SDK 功能用于获取Server上的IP关系,并在Client上重新组织编排IP关系。(注:目前clip也支持将IP存放到本地文件中管理)。目前Clip 提供8个子命令,以下Clip子命令的参数解释与演示(更多案例参考:Clip SDK 案例):

clip scan (用于对String对应的IP进行端口存活状态扫描)

◆–query_string(-q)# 根据String扫描IP的端口

◆–ip (-i) # 扫描指定IP的端口

◆–query_string (-q) *-test-*-*,*-docker-*-* # 多String扫描用逗号分隔

◆–append (-a) # 在原有String基础上,追加IP,追加多个(192.168.0.1,192.168.0.2)IP用逗号分隔

◆–remove_ip (-r) # 删除String原有IP列表的IP

◆–limit(-l)# 扫描String中指定范围的IP范围

◆–port (-P) # 指定自定义扫描端口(注:默认为80端口)

◆–log_disable(-o)# 默认日志会上报服务器,并通过history命令查看历史,通过此命令可以关闭日志上报,建议频繁使用clip关闭clip

clip scan 使用演示:

扫描*-puppet-*-* 对应开放的端口

clip cstring(正解与反解String对应IP关系)

◆–query_string(-q)# 解析String对应的IP列表

◆–ip (-i) # 解析IP对应的String

◆–query_string (-q) *-test-*-*,*-docker-*-* # 解析多个String对应IP列表,多String用逗号分隔

◆–limit(-l)# 解析String中指定范围的IP范围

◆–append (-a) #在原有String基础上,追加IP,追加多个(192.168.0.1,192.168.0.2)IP用逗号分隔

◆–remove_ip (-r) # 删除String原有IP列表的IP

◆–join (-j) # 指定输出的格式,支持(“|” “,” “\n”,space) 4种格式输出

◆–log_disable(-o)# 默认日志会上报服务器,并通过history命令查看历史,通过此命令可以关闭日志上报,建议频繁使用clip关闭clip

◆–count (-c) # 统计输出IP个数

◆–dryrun (-d) # 输出调用接口用例

clip cstring演示:

解析*-qq-*-* 对应的IP关系。

解析192.168.0.7 对应的String。

clip ssh (远程命令执行工具)

◆–password (-p) # 密码

◆–append (-a) # 在原有String基础上,追加IP,追加多个(192.168.0.1,192.168.0.2)IP用逗号分隔

◆–remove_ip (-r) # 删除String原有IP列表的IP

◆–limit(-l)# 解析String中指定范围的IP范围

◆–port (-P) #指定自定义端口(注:默认为22端口)

◆–dryrun (-d) # 输出调用接口用例

◆–log_disable(-o)# 默认日志会上报服务器,并通过history命令查看历史,通过此命令可以关闭日志上报,建议频繁使用clip关闭clip

clip ssh演示:

查看string(sh-docker-base_v1-*) 对应机器上负载。

查看string(sh-docker-base_v1-*)的较早台服务器对应负载。

clip scp (远程命令执行工具)

◆–password (-p) # 密码

◆–append (-a) # 在原有String基础上,追加IP,追加多个(192.168.0.1,192.168.0.2)IP用逗号分隔

◆–remove_ip (-r) # 删除cstring原有IP列表的IP

◆–limit(-l)# 解析String中指定范围的IP范围

◆–port (-P) # 指定自定义端口(注:默认为22端口)

◆–dryrun (-d) # 输出调用接口用例

◆–log_disable(-o)# 默认日志会上报服务器,并通过history命令查看历史,通过此命令可以关闭日志上报,建议频繁使用clip关闭clip

clip scp演示:

将ip文件推送到string(sh-docker-base_v1-*)对应机器的/tmp目录上。

tree(String关系遍历工具)

◆–query_string(-p) # 密码

◆–json (-j) # 指定输出的格式

◆–dryrun (-d) # 输出调用接口用例

◆–log_disable(-o)# 默认日志会上报服务器,并通过history命令查看历史,通过此命令可以关闭日志上报,建议频繁使用clip关闭clip

clip tree 演示:

遍历*-*-*-* 下的节点

import(IP关系导入工具)

◆–insert (-i) # 将文件内的clip对应关系导入数据库

◆–bulid (-b) # 创建clip导入数据库,关系模板文件

◆–list_struct (-l) # 显示clip数据库结构

clip import 演示:

clip import -b 创建导入string与关系模板

lt(Local tools 本地获取IP关系管理工具)

◆–password (-p) # 密码

◆–append (-a) # 追加IP,多个IP用逗号分隔

◆–remove (-r) # # 删除原有IP列表的IP

◆–port (-P) # 指定自定义端口(注:默认为22端口)

clip import 演示:

clip lt 根据本地文件IP文件,进行远程ssh command,其中root@“本地IP关系文件名”

上一篇 : 学籍信息上传网络 隐私安全应该如何保障?
  • 相关推荐
  • 怎么给文件加密?简单加密法,五种文档加密保护伞

    在信息爆炸的时代,文件加密成为了保护隐私和数据安全的重要手段。无论是个人私密文件,还是企业核心资料,都需要得到有效的加密保护。本文将为您介绍五种简单实用的文档加密方法,这些方法操作简便,却能为您的文档筑起坚实的保护伞,让您在数字世界中畅游无忧,轻松守护每一份重要资料的安全。方法一:使用系统内置加密功能Windows系统...

    2024-10-21 08:53:34
  • 给文件加密怎么做?文件加密五种小技巧,超级简单

    在信息爆炸的时代,数据安全成为了我们不可忽视的重要议题。如何有效地保护我们的文件不被泄露或篡改?文件加密无疑是一道强有力的防线。今天,我们将为大家介绍五种超级简单的文件加密小技巧,无需复杂的操作,就能让你的数据获得严密的保护。让我们一同开启文件加密之旅,守护每一份重要的资料和信息。方法一:使用洞察眼MIT系统下载安装:...

    2024-10-19 09:15:40
  • 2024热门远程软件合集,六款电脑远程控制软件,总有一款适合你

    在数字化时代,远程控制软件已成为连接世界的桥梁。2024年,我们精选了六款热门的电脑远程控制软件,它们各具特色,功能强大。无论你是需要远程办公、技术支持,还是家庭娱乐,这些软件都能满足你的需求。让我们一同探索这个充满无限可能的远程世界,总有一款远程控制软件能够成为你生活中的得力助手。1、洞察眼MIT系统屏幕监控:实时查...

    2024-10-11 08:56:47
  • 如何数据防泄密?守护数据安全:十个简单实用的防泄密技巧

    在数据如潮的信息时代,数据安全成为企业生存与发展的命脉。如何有效防止数据泄露,守护企业核心资产,成为每个企业必须面对的重要课题。以下十个简单实用的防泄密技巧,旨在帮助企业构建坚不可摧的数据安全防线,确保信息资产安全无虞,为企业稳健前行保驾护航。让我们一同探索,共筑数据安全长城。一、数据加密采用高强度的加密算法对敏感数据...

    2024-10-10 14:15:44
  • 文件加密简单的方法有哪些?文件加密入门:五种简单方法轻松上手

    在信息爆炸的时代,数据安全已成为我们不可忽视的重要议题。无论是个人隐私还是企业机密,文件加密都是保护数据安全的重要手段。但对于初学者来说,文件加密可能显得复杂而难以掌握。别担心,本文将为您介绍五种简单而有效的文件加密方法,让您轻松上手,轻松保护自己的数据安全。无论是使用内置的加密工具,还是借助专业的加密软件,都能让您在...

    2024-10-08 14:29:18
  • 设计图纸怎么加密?加密设计图纸,这六款软件总有一款适合你!

    设计图纸是设计师的智慧结晶,承载着无数的创意与心血。然而,在数字化时代,设计图纸的安全问题日益凸显。如何确保设计图纸不被非法复制、篡改或泄露,成为每个设计师和企业必须面对的挑战。为了解决这个问题,我们精心挑选了六款加密设计图纸的软件,它们各具特色,功能强大,旨在帮助设计师和企业更好地保护自己的设计成果。无论你是个人设计...

    2024-10-08 14:08:46
  • 文档怎么加密?简单加密秘籍!五招保护你的文档安全

    在信息洪流的时代,每一份文档都承载着不可估量的价值。今天,我将为你揭秘五招简单却高效的文档加密秘籍,让你轻松掌握保护文档安全的秘诀。无需繁琐的操作,也无需深厚的技术功底,只需跟随我的步伐,你就能为你的文档筑起一道坚不可摧的安全防线。让我们一起,将数据安全紧握手中,让信息泄露的风险远离我们的世界。方法一:使用Window...

    2024-10-08 09:24:38
  • 文件加密最简单的方法有哪些?电脑文件加密五大简易方法

    在数字化时代,文件加密成为了保护个人隐私和企业机密不可或缺的一环。然而,面对纷繁复杂的加密技术和工具,许多人往往感到无所适从。本文将为您揭示文件加密的五大简易方法,无需繁琐的操作步骤,即可轻松实现文件的安全保护。无论是个人用户还是企业用户,都能从中找到适合自己的加密方式。让我们一同探索文件加密的奥秘,确保我们的数据在数...

    2024-09-30 11:24:49
  • 怎么对cad加密?简单易学!三种CAD图纸加密方法大揭秘

    1、使用洞察眼MIT系统进行加密安装洞察眼软件:首先,您需要在计算机上安装该系统。该系统是一款功能全面的企业监控与管理软件,同时也提供了CAD图纸加密的功能。配置加密策略:打开系统的管理端,依次进入文档安全、策略、透明加密等选项,根据实际需求配置加密策略。您可以指定需要加密的CAD图纸文件类型,以及加密的具体方式(如透...

    2024-09-30 10:16:23
  • 2024年四款高效的文件加密软件推荐|简单易用

    在探讨加密软件哪个最好用时,我们需要综合考虑软件的加密强度、易用性、功能多样性以及安全性。1. 洞察眼MIT系统特点与优势:综合防护:洞察眼MIT系统不仅是一款加密软件,还具备全面的监控和防护功能,包括屏幕监控、聊天软件监控、文件使用监控等,为企业和个人提供全方位的数据安全解决方案。智能分析:通过智能算法分析用户行为,...

大家都在搜的词:

微信扫一扫联系售前工程师