開(kāi)源,免費,跨平台的devops批量運維工具,《卡死你(nǐ)3000》簡介
發布時(shí)間(jiān):2023-05-19 閱讀: 分享

大(dà)家(jiā)好!

又到了分享的時(shí)間(jiān),今天給大(dà)家(jiā)分享一款,開(kāi)源,免費跨平台的devops批量運維工具。讓我們先聽(tīng)聽(tīng),作(zuò)者是怎麽吹的:

簡介

作(zuò)者道(dào):

開(kāi)源+免費+跨平台安裝+100%兼容shell,

跨平台:主控機可(kě)以安裝在win,linux上(shàng)。可(kě)以管理(lǐ)win,linux被控機。

類似于Puppet,Ansible,pipeline。号稱比ansible好10倍,具有(yǒu)批量遠程執行(xíng)腳本,定時(shí)運行(xíng)腳本的,devops運維工具。運維手中的瑞士軍刀!

devops批量運維工具《卡死你(nǐ)3000》。

我道(dào):“先等等,名字咋這麽怪呢?”

為(wèi)神馬叫《卡死你(nǐ)3000》?

作(zuò)者答(dá):名字而已,瞎編!

v1.0版開(kāi)發代号=《卡死你(nǐ)3000》,源于要你(nǐ)命3000。《卡死你(nǐ)3000》最大(dà)的好處之一,就是100%兼容你(nǐ)編寫的舊(jiù)的bash,csh,zsh腳本。還(hái)有(yǒu)win上(shàng)的bat,vbs腳本等。

項目內(nèi)還(hái)封裝了,姥姥語音(yīn),表情包鬥圖樂等。再加上(shàng)舊(jiù)bat,bash腳本,緻力于3000個(gè)腳本工具。。。

v2.0版開(kāi)發代号(已經發布)=《穿雲箭》

寓意:一支穿雲箭,千萬被控機,從斧頭幫;)趕來(lái)相見。

我道(dào):“哦,我明(míng)白了。原來(lái)3000是指,可(kě)以四處調用各種腳本,工具多(duō)的意思。”

注意:軟件正式名字叫《kaiiit家(jiā)的飯店(diàn)》

那(nà)它是怎麽工作(zuò)的?

作(zuò)者道(dào):

“它控制(zhì)win被控機基于winrm協議。它控制(zhì)linux被控機,基于ssh協議。”

【主控機】控制(zhì)【被控機】基于【開(kāi)源 + 免費的】powershell語言。

那(nà)它怎麽比ansible好10倍呢?

作(zuò)者答(dá):

  • 1 《卡死你(nǐ)3000》控制(zhì)win被控機無敵。無需安裝agent。

  • 2 腳本遠程傳遞變量參數(shù)時(shí),可(kě)以直傳 「對象」 ,此功能世界上(shàng)唯一!比其他批量運維工具強一代!

$從被控機返回的_對象結果_而不是字符串 = krun.ps1 { 被控機命令1 } -allparameter $主控機本地對象1,$主控機本地對象2

上(shàng)述【主控機腳本a.ps1】,把主控機上(shàng)的.net對象,或powershell對象【主控機本地對象1】,【主控機本地對象2】 傳遞到被控機,由【被控機命令1】接收參數(shù), 執行(xíng)結果對象,從被控機返回到主控機變量【$從被控機返回的_對象結果_而不是字符串】中。

大(dà)家(jiā)都是面向對象編程語言的老司機,還(hái)需要我解釋 「遠程對象」 比字符串的好處嗎?

  • 3 卡死你(nǐ)3000調用并100%兼容你(nǐ)的舊(jiù)腳本,linux命令。

你(nǐ)舊(jiù)的shell腳本,不管是.py,還(hái)是.sh,放在主控機,然後在主控機腳本內(nèi)寫上(shàng)kct 主控機路徑 被控機路徑,即可(kě)複制(zhì)到被控機。比如你(nǐ)在卡死你(nǐ)3000腳本中寫:

bash -f /xxx/你(nǐ)的bash腳本

python -c /你(nǐ)的項目/b.py

還(hái)不明(míng)白?卡死你(nǐ)3000,100%兼容你(nǐ)已有(yǒu)的linux腳本,而ansible你(nǐ)要學它n多(duō)模塊。

yaml有(yǒu)如下缺點:

1 關鍵字不兼容。Ansible,阿裏雲的運維工具雲助手,騰訊雲的藍(lán)鲸,都用yaml,但(dàn)它們之間(jiān)的關鍵字不兼容。

2 Yaml還(hái)有(yǒu)文本縮進問題,或空(kōng)格問題。

3 腳本套腳本像喝(hē)水(shuǐ)般容易,管道(dào)容易。Yaml套yaml難,yaml套腳本難。

4 bash中有(yǒu)for,cshell中有(yǒu)foreach,powershell中有(yǒu)for,foreach。For是shell腳本人(rén)最常用的功能。

自打ansible來(lái)了之後,它用yaml關鍵字定義和(hé)jinjia2代替了for。可(kě)以說for的腿被被打折了。

5 管道(dào)傳值如“a腳本語言編寫的腳本1 | b腳本語言編寫的腳本1”,這在基于yaml的語言中,難以實現。在基于腳本的卡死你(nǐ)3000中,天生(shēng)支持。

6 還(hái)有(yǒu)必不可(kě)少(shǎo)的複制(zhì)文件功能,使用起來(lái)也很(hěn)簡單。還(hái)支持跨平台win,linux文件互傳。

7 主控機支持win。win,linux被控機操作(zuò)一緻。用win主控機時(shí)可(kě)以用聲音(yīn),背景圖片報警。

簡單而言,腳本學用簡單,用途廣。《卡死你(nǐ)3000》和(hé)ansible,都用powershell控制(zhì)win,有(yǒu)一半是相同的。它們最大(dà)的區(qū)别是,卡死你(nǐ)3000基于腳本。而Ansible基于yaml。用ansible,藍(lán)鲸等,就必須學習它的關鍵字,用它的模塊。

作(zuò)為(wèi)批量運維工具,它還(hái)支持定時(shí)任務,循環周期最短(duǎn)10秒(miǎo)鍾,主要用于監控應用,磁盤,內(nèi)存等。

我還(hái)為(wèi)卡死你(nǐ)3000定時(shí)任務主控機,開(kāi)發了主控機雙機高(gāo)可(kě)用功能。高(gāo)可(kě)用功能等。。

我道(dào):“嗯,挺能吹的,那(nà)麽”

它和(hé)shell相比,有(yǒu)哪些(xiē)好處呢?

作(zuò)者道(dào):

自動批量運維卻離不了腳本。但(dàn)這麽多(duō)年為(wèi)啥沒有(yǒu)shell的自動批量運維項目?

為(wèi)啥讓ansible成氣候了?隻因單純的shell功能有(yǒu)限,不足以支撐整個(gè)自動批量運維項目。

讓我嘗試分析出幾個(gè)原因:

  • 1 ansible項目為(wèi)啥linux下調用py,powershell,而不調用shell?有(yǒu)一點可(kě)能是shell變量是非面向對象腳本。Py,powershell是面向對象腳本,powershell有(yǒu)日期,布爾,精度數(shù)值,隊列等變量類型。

支持管道(dào)傳遞強類型對象!請(qǐng)看:

'abc'| foreach-object {$_.toupper()}

遠程傳遞強類型對象!請(qǐng)看:

$從遠程返回的日期型對象 = krun -powershell代碼塊 { get-date }

  • 2 powershell,卡死你(nǐ)3000,中有(yǒu)多(duō)線程調用腳本功能。多(duō)線程帶來(lái)了快速,輕量,大(dà)批量的好處,也帶來(lái)了不如多(duō)進程穩定的壞處。線程的講解以後再說。

  • 3 win上(shàng)powershell強,win沒有(yǒu)自帶sshd,也是一個(gè)問題。

  • 4 shell基于ssh傳遞多(duō)行(xíng)腳本代碼塊不行(xíng),傳遞腳本文件麻煩。多(duō)層傳遞沒有(yǒu)。卡死你(nǐ)3000隻需要在主控機上(shàng)指定腳本文件名,多(duō)行(xíng)腳本塊,則自動複制(zhì)到每台被控機執行(xíng)。從a機傳遞代碼塊到b機,b機再到c機,很(hěn)容易。用于穿透堡壘機。

  • 5 更嚴謹,開(kāi)發效率高(gāo)!支持在win上(shàng)經vscode+ssh模塊遠程開(kāi)發,遠程調試,單步,斷點,執行(xíng)鼠标選中代碼。

你(nǐ)道(dào):

主頁在哪?求你(nǐ)來(lái)點幹貨吧(ba)?

圖片

注意:上(shàng)述lsbkj命令,已經改為(wèi)lsnode

https://gitee.com/chuanjiao10/kasini3000

https://gitee.com/chuanjiao10/kasini3000_agent_linux #linux一鍵安裝powershell

主控機支持:

win10,win2012r2,win2016,win2019,centos7,centos8,ubuntu1404(但(dàn)不建議使用),ubuntu1604,ubuntu1804,ubuntu2004,debian8(但(dàn)不建議使用),debian9,debian10,alpine linux3.8----3.11,不支持centos6。

被控機支持:

win7,win2008r2,win10,win2012,win2016,win2019,centos7,centos8,ubuntu1404,ubuntu1604,ubuntu1804,ubuntu2004,debian8,debian9,debian10。alpine linux3.8----3.11,樹(shù)莓派linux,樹(shù)莓派win,不支持centos6。

excel版 命令手冊:

https://gitee.com/chuanjiao10/kasini3000/tree/master/docs

腳本例子:

https://gitee.com/chuanjiao10/kasini3000/wikis/卡死你(nǐ)3000腳本例子

常見問題:

https://gitee.com/chuanjiao10/kasini3000/wikis/卡死你(nǐ)3000腳本編寫要求和(hé)常見問題

卡死你(nǐ)3000主控機安裝:

https://gitee.com/chuanjiao10/kasini3000/wikis/安裝win版卡死你(nǐ)3000主控機

https://gitee.com/chuanjiao10/kasini3000/wikis/安裝linux版卡死你(nǐ)3000主控機

卡死你(nǐ)3000官方技(jì)術(shù)支持群。qq群:700816263

使用:

1 按照https://gitee.com/chuanjiao10/kasini3000/tree/master/docs/examples/nodelist.csv

編寫被控機ip、端口、賬戶、密碼、并保存在c:\ProgramData\kasini3000\nodelist.csv

這裏以win主控機為(wèi)例:

2 運行(xíng)pwsh。運行(xíng)c:\ProgramData\kasini3000\k-console.ps1

k-console.ps1有(yǒu)2個(gè)快捷方式。kc=用穩定版pwsh。kcp=用psv7版pwsh,建議用kcp

3 cdip 192.168.1.2 #選中被控機

4 kct #複制(zhì)文件,從主控機到被控機

5 kcf #複制(zhì)文件,從被控機到主控機

6 gtnode #進入被控機命令行(xíng)

7 .\krun.ps1 -腳本文件名 d:\xx.ps1 # 在遠程的,cdip選中的,被控機上(shàng)】運行(xíng)【主控機上(shàng)的d盤的腳本】。

8 .\krun.ps1 -powershell代碼塊 {ls /tmp} # 在【遠程的選中被控機上(shàng)】運行(xíng)【代碼塊】。

9 .\k-commit.ps1 -腳本文件名 d:\xx.ps1 #在後台運行(xíng)腳本。

10 .\k-commit.ps1 -powershell代碼塊 {ls /tmp} #在後台運行(xíng)ps代碼塊。

11 kl,kt。#輸出後台運行(xíng)的代碼結果。

12 安裝psv6後,用.\k-commit-rs.ps1。它是線程級别的,它作(zuò)用和(hé).\k-commit.ps1相同。

13 支持進程級别,線程級别,的定時(shí)任務。

後記

很(hěn)久以前,在一個(gè)虛拟位面上(shàng),有(yǒu)一個(gè)【馮-諾依曼計(jì)算(suàn)機國】,國內(nèi)有(yǒu)一個(gè)大(dà)家(jiā)庭叫做(zuò)【腳本命令行(xíng)】。家(jiā)庭中的bash,csh,zsh,bat,vbs,powershll兄弟們分工明(míng)确,互相合作(zuò),兄弟們用【管道(dào)】傳遞消息。

突然間(jiān),家(jiā)裏來(lái)了三頭大(dà)怪獸,它們是【阿裏雲助手=盒馬大(dà)聖】、【騰訊雲藍(lán)鲸=鲸角大(dà)王】、【ansible=歪果仁矮力大(dà)仙】

它們不分工,難合作(zuò),不用【管道(dào)】,矮力大(dà)仙還(hái)通(tōng)過python放出【幺蛾子jinjia2】,jinjia2怪一上(shàng)來(lái)就把for,foreach的腿打斷了,555,多(duō)麽善良好用的for啊!!!在此危機時(shí)刻,小(xiǎo)弟《卡死你(nǐ)》拿(ná)出3000種武器(qì),有(yǒu)鞋式吹風機,有(yǒu)光照才發光手電(diàn)筒,姥姥語音(yīn),表情包鬥圖樂,一一嘗試。。。

單純的shell強麽?單純的ssh行(xíng)麽?單純的yaml不麻煩麽?用途廣麽?這就是卡死你(nǐ)3000存在的意義。


13905190502 南京市玄武區(qū)洪武北路188号長發數(shù)碼大(dà)廈11樓E座
友(yǒu)情鏈接
百度 網絡安全和(hé)信息化委員會(huì) FreeBuf網絡安全行(xíng)業門(mén)戶

分享:
Copyright © 2020-2022 南京斯萊克斯網絡科技有限公司 版權所有(yǒu)  
技(jì)術(shù)支持:飛酷網絡