足球资料库数据/孙祥/nba五佳球/足球直播哪个平台好 - cctv5今日现场直播

首頁 > 知識庫 > 正文

阿里云運維部署工具AppDeploy最佳實踐(1)
2016-02-20 19:33:56   來源: 阿里云 運維幫    評論:0 點擊:

阿里云AppDeploy版是一個通過SSH實現的流式命令行工具,可用于完成應用部署和遠程運維管理,其工作于python平臺上,具有良好的可移植性;AppDeploy將本地應用軟件上傳到遠端服務器,并執行用戶預定義的產品部署命令。本文通過三個使用場景介紹AppDeploy,供大家參考!

阿里云AppDeploy版是一個通過SSH實現的流式命令行工具,可用于完成應用部署和遠程運維管理,其工作于python平臺上,具有良好的可移植性;AppDeploy將本地應用軟件上傳到遠端服務器,并執行用戶預定義的產品部署命令。

\

工具當前免費下載使用,地址:

http://market.aliyun.com/products/53690006/cmgj000331.html

http://market.aliyun.com/products/53690006/cmgj000321.html

本文通過三個使用場景介紹AppDeploy:

一、高效運維管理命令

1.實時監控服務器狀態

執行命令:

  1. $ adep check_status 

將得到服務器的具體信息,包括ip、route、dns、resolve、iptables、mount、disk、load等。

\

也可以在命令后面加具體參數查看部分信息,例如:

當前支持:ip、route、dns、resolve、iptables、mount、diskload。

  1. $ adep check_status:resolve 

\

  1. $ adep check_status:disk 

\

2.實時監控服務器帶寬

在命令行執行:

  1. $ adep check_bandwidth 

將會得到下面動態數據:

\

其中紅框內的數據分別為:

◆提示按”e”字母退出監控狀態:此處注意輸入格式。

◆服務器流入帶寬實時數據(動態顯示):分別顯示KB/s 和Mb/s兩中常見數據格式。

◆服務器流出帶寬實時數據(動態顯示):分別顯示KB/s 和Mb/s兩中常見數據格式。

3.文件的上傳下載

通過命令行類似shell命令的方式實現:

具體操作的哪些服務器、用戶名、密碼信息由appdeploy.py文件定義。

文件上傳命令格式:

  1. $ adep put:localfile,remoteFolder 

◆“put”、”:”、”localFile”、”,”、”remoteFolder”之間都沒有空格。

◆LocalFile:本地上傳文件路徑及名字,RemoteFolder:上傳到服務器的具體目錄。

文件下載命令格式:

  1. $ adep get:remoteFile,localFolder 

◆”get”、”:”、”remoteFile”、”,”、”localFolder”之間都沒有空格。

◆RemoteFile:從服務器上下載的文件名,localFolder:下載文件本地存放目錄。

例如:

\

4.遠程命令執行

通過命令行類似shell命令的方式實現:

具體操作的哪些服務器、用戶名、密碼信息由appdeploy.py文件定義。

命令遠程執行格式:

  1. return (1xx | 2xx | 4xx | 5xx) ["text"];  
  2. $ adep run:shellCommand 

◆“run”、”:”、”shellCommand”之間都沒有空格。

◆ShellCommand:指遠端執行的命令,有空格時要用引號引起來。

\

5.一鍵更新服務器源

命令行輸入:

  1. $ adep update_source 

可以更新服務器端的源配置,支持Ubuntu、Centos、Redhat、Opensuse、Debian等系統的多個版本源更新功能。

\

二、一鍵部署Web服務器之Mysql + Nginx + PHP

1.在appdeploy.py中輸入以下定義

  1. def runtime():  
  2. componets={“nginx” : “1.4.4″,  
  3. “php” : “5.6.11″,  
  4. “mysql” : “5.6.26″  
  5.  
  6. install_runtime(componets) 

2.在命令行執行下面命令,由于全部為源碼安裝,安裝會占用相對較長時間。

  1. $ adep runtime 

3.應用部署上線:上傳您的PHP項目

下面代碼表示將本地PHP項目上傳到服務器:/aliyun/www/phpwind目錄。

  1. def deploy_php():  
  2. put(“./php/*”, “/aliyun/www/phpwind/”) 

執行:

  1. $ adep deploy_php 

4.檢驗應用部署效果

\

三、一鍵部署Web服務器之JDK + Mysql + Nginx + Tomcat

1.在appdeploy.py中輸入以下定義:

  1. def runtime():  
  2. componets={ “jdk” : “1.8.0″,  
  3. “nginx” : “1.4.4″,  
  4. “tomcat” : “7.0.63″,  
  5. “mysql” : “5.6.26″  
  6.  
  7. install_runtime(componets) 

2.在命令行執行下面命令,由于全部為源碼安裝,會占用相對較長時間。

  1. $ adep runtime 

3.應用部署:上傳您的java項目

下面任務會將本地java項目編譯、打包、上傳到服務器(基于Maven,appdeploy會自動檢測您的maven程序是否安裝,若沒有安裝,則會自動安裝),最后上傳到服務器的/aliyun/server/tomcat/webapps目錄。

  1. def pack_deploy():  
  2. componets={“plugin”: “maven”,  
  3. “project_dir” : “./java/myFirstWebApp”,  
  4. “web_dir” : “/aliyun/server/tomcat/webapps”  
  5.  
  6. package(componets)  
  7. deploy(componets) 

執行:

  1. $ adep pack_deploy 

4.檢驗應用部署效果

\

【編輯推薦】

  1. 數據運維對于運維具有哪些重要意義
  2. Linux惡意軟件檢測工具LMD Tool介紹
  3. 微軟應用開發工具更新 無需編程就能創建Windows 10應用
  4. 功能強大的系統工具Sysdig命令實例介紹
  5. 面向高性能IT的精益運維體系初探
【責任編輯:火鳳凰 TEL:(010)68476606】

相關熱詞搜索:AppDeploy 運維 工具

上一篇:面向高性能IT的精益運維體系初探(1)
下一篇:阿里云運維部署工具AppDeploy UI界面上線(1)

分享到: 收藏