1. 程式人生 > >整合安裝6 jenkins構建釋出 soa服務 和 web專案

整合安裝6 jenkins構建釋出 soa服務 和 web專案

OK 前面已經把直接需要構建完成的專案構建完成併發布到私有庫中去了,那接下來就是需要構建bhz-sys-service (SOA服務) 和bhz-sys(web服務)專案了(這倆個工程和之前的區別是需要部署到其他節點上去 才能使其能夠執行起來)

1、首先建立一個bhz-sys-service專案(SOA服務 部署到 156 環境),修改4處 結果看 :

可以先儲存一看看看,儲存後 可以看到上級專案,等待 service自動構建專案:

然後開始構建bhz-sys web包 ,修改處跟 service差不多,就是少了觸發依賴構建,儲存,然後等待自動構建。

2、到目前為止,我們現在己經對所有的專案進行構建成功,但足我們希望bhz-sys-service bhz-sys 能釋出到遠端指定的伺服器上

,那麼就需要進行設定一下 ssh遠端釋出 。點選系統管理、系統設定:

3、首先配置下SSh site 設定 hostname、port、username、password。 前面已經安裝好 ssh 等外掛。

192.168.74.156(SOA伺服器 需要釋出到幾臺SOA伺服器上就需要配置幾個 這裡演示一臺 )、

192.168.74.155(web伺服器 需要釋出到幾臺web伺服器上就需要配置幾個 這裡演示一臺 )都要進行配置。

點選右下方 測試連線,提示連線成功即可

那麼現在 soa 和 web 伺服器的 ssh remote 配置完畢。

下面我們進行設定Publish over ssh,直接點選增加server

設定內容如下:我們的SOA服務部署到 192.168.74.156 上,weib伺服器部署到 192.168.74.155 上,

需要輸入部署伺服器的名稱、Pi地址、一個部署的基礎目錄、密碼 測試連線是否成功

暫時先不管代理設定,直接測試連線

接著測試連線是否成功。不成功就檢查下配置吧。 最後點選儲存。

那麼我們現在己經有1個部署SOA服務的節點和1個部署web應用的節點了!(正常的環境肯定不是一個節點 記得不要漏掉)

4、OK 我們現在需要進行部署一下bhz-sys-service,之前己經進行過 手工部署,現在要使用Jenkins幫我們進行部署這個服務,首先第一步記啟動dubbo服務,啟動dubbo前 首先要把zookeeper啟動起來 那麼啟動zookeeper叢集, 之前手工部署的時候,是把服務部署到了/usr/Iocal/workspace下面。 現在先把 workspace 資料夾刪除,重新來部署

5、在 156 節點上建立專案資料夾。

命令:mkdir -p /usr/local/workspace

但是我們需要自動化部署,所以這個資料夾我們需要使用shell指令碼進行建立。如下操作:那麼現在要我們使用Jenkins完成。進入bhz-sys-service的job的修改配置內容:

點選進入,加入 ssh 指令碼如下:

#!/bin/sh

## exec shell name
EXEC_SHELL_NAME=sys-service\.sh
## service name
SERVICE_NAME=bhz-sys-service
## service dir 
SERVICE_DIR=/usr/local/workspace/sys-service

mkdir $SERVICE_DIR

cd $SERVICE_DIR

##rm -rf logs 測試的時候可以刪除  正常是不應該刪除的 

mkdir logs

下一步 選擇Send build artifacts over SSH,如圖所示:

=====================需要上傳過去的 sys-service.sh 指令碼=========================

#!/bin/sh

## java env
export JAVA_HOME=/usr/local/java/jdk1.7.0_40
export JRE_HOME=$JAVA_HOME/jre

## exec shell name
EXEC_SHELL_NAME=sys-service\.sh
## service name
SERVICE_NAME=bhz-sys-service
SERVICE_DIR=/usr/local/workspace/sys-service
JAR_NAME=$SERVICE_NAME\.jar
PID=$SERVICE_NAME\.pid

cd $SERVICE_DIR

case "$1" in

    start)
        nohup $JRE_HOME/bin/java -Xms256m -Xmx512m -jar $JAR_NAME >/dev/null 2>&1 &
        echo $! > $SERVICE_DIR/$PID
        echo "#### start $SERVICE_NAME"
        ;;

    stop)
        kill `cat $SERVICE_DIR/$PID`
        rm -rf $SERVICE_DIR/$PID

        echo "#### stop $SERVICE_NAME"

        sleep 5

        TEMP_PID=`ps -ef | grep -w "$SERVICE_NAME" | grep -v "grep" | awk '{print $2}'`
        if [ "$TEMP_PID" == "" ]; then
            echo "#### $SERVICE_NAME process not exists or stop success"
        else
            echo "#### $SERVICE_NAME process pid is:$TEMP_PID"
            kill -9 $TEMP_PID
        fi
        ;;
    restart)
        $0 stop
        sleep 2
        $0 start
        echo "#### restart $SERVICE_NAME"
        ;;
    *)
        ## restart
        $0 stop
sleep 2
        $0 start
        ;;

esac
exit 0

===========================需要執行的 shell指令碼===============================================

#!/bin/sh

## exec shell name

EXEC_SHELL_NAME=sys-service\.sh

## service name

SERVICE_NAME=bhz-sys-service

## service dir

SERVICE_DIR=/usr/local/workspace/sys-service

cd $SERVICE_DIR

##賦予許可權

chmod 777 $EXEC_SHELL_NAME

執行 指令碼需要有相應的jar包, 所以還需要新增jar包

jenkins構建完專案後的路徑:/usr/local/JenkinsHome/workspace/bhz-sys-service/target

#!/bin/sh

## exec shell name

sh /usr/local/workspace/sys-service/sys-service.sh

儲存 SOA服務 設定自動化部署完成。 等待構建專案

構建成功後,檢視 dubbo管控臺 可以看到我們釋出的soa服務 有對內提供的 20880 服務和對外的rest 8888 服務

同時,通過請求,檢視 能否正常提供服務

=================web工程================
下面部署 web 服務,也就是 sys-web工程
1、 修改  sys-web 的job配置


#!/bin/sh

## java env
export JAVA_HOME=/usr/local/java/jdk1.7.0_40
export JRE_HOME=$JAVA_HOME/jre

## restart tomcat
/usr/local/tomcat/bin/shutdown.sh
sleep 5
rm -rf /usr/local/tomcat/webapps/bhz-sys
/usr/local/tomcat/bin/startup.sh


然後要實現 使用 shell指令碼重啟tomcat服務,無非就是先停止tomcat 然後刪除 webapps下面的 bhz-sys 專案,最後啟動 tomcat服務。儲存job配置


設定 tomcat 的jvm 引數  避免 記憶體不夠
命令:vim /usr/local/tomcat/bin/catalina.sh
新增內容:JAVA_OPTS='-Xms256m -Xmx512m'


OK 重新構建一下bhz-sys項日:構建成功如下圖所示:




 
 OK,最後可以發現 bhz-sys應用已經啟動完畢, 進行訪問地址,如下:
http://192.168.74.155:8080/bhz-sys/sysindex.html





 到此為止,我們現在已經實現了持續整合的工作,我們現在的環境才算徹底的搭建成功!
如果有新的 模組加入,基本按照前面的步驟去 建立 job ,讓jenkins自動構建和釋出專案 就好了。

項日啟動步驟:
首先開啟157伺服器:Apache+svn+jenkins+Maven+Nexus服務
然後開啟zookeeper服務:用於SOA Dubbo  155 156 14=57 三個節點!
然後我開啟叢集的SOA服務(此處是單節點 156)和WEB服務(此處是單節點 155)即可!


相關推薦

整合安裝6 jenkins構建釋出 soa服務 web專案

OK 前面已經把直接需要構建完成的專案構建完成併發布到私有庫中去了,那接下來就是需要構建bhz-sys-service (SOA服務) 和bhz-sys(web服務)專案了(這倆個工程和之前的區別是需要部署到其他節點上去 才能使其能夠執行起來)1、首先建立一個bhz-sys

openresty lua zlib整合安裝 讓lua支援解壓服務端壓縮過的資料

來源於http://www.tuicool.com/articles/EZZZFn3的整理 openresty在編譯安裝的時候就加入了lua支援,所以無需再對nginx進行改造。但lua下對gzip進行解壓,需要藉助一個庫:lua- zlib(https://githu

SpringBoot整合cxf釋出WebService服務客戶端呼叫WebService服務

最近在做公司專案的一個功能需要寫WebSerice介面,為了系統得學習WebService,決定寫一個測試介面的例子。 測試專案中使用的是SpringBoot(spring整合cxf需新增cxf-rt-frontend-jaxws,cxf-rt-transpo

Gitlab + Jenkins 構建,釋出一個基於Go的Gin測試專案

### 部署Go專案簡介 > 對於golang的釋出,之前一直沒有一套規範的釋出流程,來看看之前釋出流程: #### 方案一 ``` • 開發者本地環境需要將環境變數檔案改為正式環境配置 • 編譯成可執行檔案 • 傳送給運維 • (運維)將檔案覆蓋為線上 • (運維)重啟程序 (可謂“又臭又長”) ``

asp.net釋出網站及打包web專案生成安裝檔案

環境:VS2005     如果想要將完成的網站部署到伺服器中,可以使用 Microsoft Visual Web Developer Web 開發工具提供的“釋出網站”實用工具。“釋出網站”實用工具對網站中的頁和程式碼進行預編譯,然後將編譯器輸出寫入指定的資料夾。然後可以將

SpringBoot釋出HttpClient服務客戶端呼叫HttpClient服務

之前在做公司專案的一個功能需要寫WebSerice介面,寫完之後我們老大說也可以用HttpClient來寫介面,所以寫了一個介面例子。 新增依賴 <project xmlns="http://maven.apache.org/POM/4.0.0"

SpringBoot | CXF釋出WebService服務客戶端呼叫WebService服務

一、引入maven依賴 <!-- cxf支援 --> <dependency> <groupId>org.apache.cxf</groupId> <art

學習——JavaWeb02:修改埠web專案釋出

學習——JavaWeb02:修改埠和web專案釋出 壹:修改埠 1.         Tomcat伺服器的配置,全部都需要在tomcat的安裝目錄下conf目錄下完成: Tomcat的預設埠號是8080;

ant自動化構建非maven的java web專案

java web專案部署可能主要分兩個步驟:1.更新程式碼輸出專案包 2.拷貝專案包部署到伺服器 目前公司的專案部署第二個步驟通過指令碼都已實現,但是第一個步驟仍然是手動非常煩鎖,公司配置的電腦卡的要死,eclipse每次開啟更新程式碼編譯都要耗費很長時間,所以最後想想還是寫個指令碼來自動更新打

Docker環境安裝在Tomcat中部署靜態專案web專案

Docker 使用記錄 準備工作 linux伺服器一臺 ssh工具一個(主要用登入linux) 獲取該伺服器root許可權 耐心 環境搭建 登入伺服器 1. ssh -p 22 [email protected]

Linux系統git服務端搭建web專案的自動更新

伺服器端 1.linux伺服器上搭建 【centos】 yum install -y git 2.搭建完成後使用命令檢視 git --version 3. 伺服器端建立 git 使用者,用來管理 Git 服務,併為 git 使用者

使用Advanced Installer製作IIS安裝包(一:配置IISWeb.config)

前言:大過年的,寫篇文章不容易,還是給自己點個贊~~年前找了下.net安裝包的製作方法,發現Visual Studio自帶的製作工具使用起來非常麻煩,需要單獨下載安裝包,並且什麼啟用認證等等屁事相當麻煩,最坑爹的是它的自定義dialog使用起來有很多的侷限性,所以找了很久,終於找到了Advanced Inst

開啟XP系統的FTP服務WEB服務

一、用IIS架設 如果只是想建個小型的同時線上使用者數不超過10個的FTP伺服器,且不會同時進行大流量的資料傳輸,可以用IIS 5.0作為伺服器軟體來架設(IIS只適用於Windows NT/2000/XP作業系統)。 1.安裝 Windows XP預設安裝時不安裝IIS元件,需要手工新增安裝。進入控

阿里雲服務部署web專案

使用的工具:putty和psftp. putty是用來連線伺服器的,psftp是傳檔案的。 首先使用psftp上傳tomcat和jdk. 雙擊PSFTP,如下圖所示: 輸入put -r命令上傳檔案 上傳時會出現一長串的檔案。。。 然後開啟:putty,連線伺服器。

Jenkins高階篇之Pipeline實踐篇-6-SeleniumJenkins持續整合-pipeline引數化構建selenium自動化測試

       這篇來思考下如何寫一個方法,可以修改config.properties檔案裡面的屬性。加入這個方法可以根據key修改value,那麼我們就可以通過jenkins上變數,讓使用者輸入,來修改config.properties檔案裡面的值。例如測

整合開源系統實現自動化構建、程式碼質量評估、專案資訊統計(1)——Jenkins安裝

Jenkins 是java 語言開發,需要JRE(JDK)的支援(注:我到現在還不知道JRE 和 JDK 的區別>_<),因需要支撐分散式部署支撐,因此採用直接部署jenkins.jar 包的方式進行安裝。 (一)  前期準備 確認安裝jenkins 的機器已

Jenkins構建本地項目到服務器上自動部署的方法

images mman jenkins webapp shell home 一個 需求 command 最近在用Jenkins做項目的自動部署,由於項目需求,現在要在本地構建後再放到Tomcat裏。以下是本地構建步驟: 名稱填寫好,下面的選項是可選的。 源碼管理這裏

基於k8s、docker、jenkins構建springboot服務

k8s docker jenkins springboot Jenkins + github + docker + k8s + springboot 本文介紹基於k8s、docker、jenkins、springboot構建docker服務。 環境準備 server-1 k8s-master

Jenkins使用QQ郵箱構建郵件提醒服務

ati 管理 plugin ack not img 回復 stat pro 前置條件:  已安裝好Jenkins服務端 步驟: 訪問Jenkins服務端(ip+端口),登錄Jenkins 點擊系統管理 選擇管理插件 選擇可選插件 搜索Mailer Plugin 點擊直接安

Maven安裝 &快速構建服務項目

maven3 成功 open ext mis 創建 根目錄 unable 安裝 Maven安裝手冊 1、準備安裝包   安裝包: apache-maven-3.5.4-bin.zip (最好JDK 1.7及以上版本)   集成包: eclipse-maven3-plugi