服務器集成環境搭建
從零開始模擬搭建項目的服務器環境及運行環境,所有操作在本地VMware虛擬機上完成,系統使用RedHatEnterpriseLinux6的ISO。
1、安裝yum源
由於redhat6.5的yum功能是需要註冊費用的,所以自帶的yum並不可用,想要使用免費的yum,可以用Centos6的yum源,配置自己的yum源。(可以先用yum list檢查yum源是否可用,如果出現很多安裝包,說明可用,則可以跳過這一步,如果報錯說明不可以)
① 查看已安裝的yum包:rpm -qa|grep yum
② 卸載yum軟件包:rpm -qa|grep yum|xargs rpm -e --nodeps
③ 下載yum安裝文件(註意機器是32位還是64位的):
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-81.el6.centos.noarch.rpm wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm
④ 安裝yum:
rpm -ivh python-urlgrabber-3.9.1-11.el6.noarch.rpm
rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
rpm -ivh yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm yum-3.2.29-81.el6.centos.noarch.rpm (這兩個要一起安裝,有依賴關系)
⑤ 更改成163的yum源:
進入源目錄:cd /etc/yum.repos.d/ 下載163源:wget http://mirrors.163.com/.help/CentOS6-Base-163.repo 把文件裏面的$releasever全部替換為版本號6:sed -i ‘s#$releasever#6#g‘ CentOS6-Base-163.repo
⑥ 清除原有緩存:yum clean all
⑦ 重建緩存,以提高搜索安裝軟件的速度:yum makecache
⑧ 更新系統:yum update
⑨ gcc等環境安裝,後續有些軟件安裝需要這些基礎環境
gcc安裝:yum install gcc-c++
PCRE pcre-devel 安裝:yum install -y pcre pcre-devel
zlib 安裝:yum install -y zlib zlib-devel
OpenSSL 安裝:yum install -y openssl openssl-devel
2、JDK安裝
① 由於jdk下載需要接受條款的原因,所以下載後使用FlashFXP從本地上傳到服務器。
② 進入/usr/local/src,解壓jdk:tar -zxvf jdk-8u172-linux-x64.tar.gz
③ 將解壓的jdk移動到/usr/local/:mv jdk1.8.0_172 /usr/local/
④ 配置環境變量:
$ vim /etc/profile 在最後添加如下環境變量: export JAVA_HOME=/usr/local/jdk1.8.0_172 export JRE_HOME=/usr/local/jdk1.8.0_172/jre export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
保存退出後輸入命令使配置生效:source /etc/profile
⑤ 驗證jdk:java –version
3、Tomcat安裝
① 準備tomcat:
下載:wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.30/bin/apache-tomcat-8.5.30.tar.gz 解壓:tar –zxvf apache-tomcat-8.5.30.tar.gz
將tomcat復制一份到/local/src/下,作為項目的服務器:cp -r apache-tomcat-8.5.30 /usr/src/tomcat-ljz
② 修改配置:
修改/conf/server.xml,在8080端口Connector增加兩項。
修改/conf/context.xml,增加數據源
修改/bin/catalina.sh,在開頭增加如下配置
③ 進入/usr/src/tomcal-ljz/bin
啟動Tomcat:./startup.sh
關閉Tomcat:./shutdown.sh
④ Linxu防火墻設置:
在/etc/sysconfig/iptables中設置允許端口:vim /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
重啟防火墻:service iptables restart;
之後就可以從虛擬機外部訪問80/8080端口了
4、Nginx安裝
① 準備nginx:
下載:wget http://nginx.org/download/nginx-1.8.1.tar.gz
解壓:tar -zxvf nginx-1.8.1.tar.gz
進入目錄:cd nginx-1.8.1
② 配置nginx:
./configure --prefix=/usr/src/nginx --with-http_stub_status_module --with-http_ssl_module
--prefix=PATH :指定 nginx 的安裝目錄
--with-http_ssl_module :使用https協議模塊
--with-http_stub_status_module :用來監控 Nginx 的當前狀態
③ 編譯安裝:make && make install
④ 查看nginx版本:
進入安裝目錄:cd /usr/src/nginx/sbin
查看版本:./nginx -v
⑤ 配置nginx.conf,進入conf目錄:cd /usr/src/nginx/conf
將原始nginx.conf備份:cp nginx.conf nginx.conf.bak
使用nginx.conf替換/usr/src/nginx/conf/nginx.conf
創建門戶網站目錄:mkdir /usr/src/ljzsg_mt
檢測配置文件的正確性:./nginx –t
⑥ 設置開機啟動
編輯/etc/rc.local:vim /etc/rc.local 添加一行:/usr/src/nginx/sbin/nginx
之後,開機會自動啟動nginx
⑦ nginx 命令
進入nginx目錄:cd /usr/src/nginx/sbin
啟動服務:./nginx
停止服務:./nginx –s stop
重啟服務:./nginx –s reopen
重新載入配置文件:./nginx –s reload
5、Node安裝
① 準備node
下載:wget https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.gz
解壓:tar –zxvf node-v8.9.4-linux-x64.tar.gz
移動到/usr/local/:mv node-v8.9.4-linux-x64 /usr/local/node-v8.9.4
② 創建軟鏈接:
ln -s /usr/local/node-v8.9.4/bin/node /usr/local/bin/node
ln -s /usr/local/node-v8.9.4/bin/npm /usr/local/bin/npm
驗證:
node -v
npm -v
6、Redis安裝
① 準備Redis
下載:wget http://download.redis.io/releases/redis-4.0.6.tar.gz
解壓:tar -zxvf redis-4.0.6.tar.gz
移動到/usr/local/下:mv redis-4.0.6 /usr/local/ redis
進入目錄:cd /usr/local/redis
② 編譯:make
③ 修改配置文件:vim redis.conf
將redis設置為守護進程,不然啟動時會一直占著終端
daemonize yes
關閉守護模式,否則外部訪問不了redis,正式環境可不改.
protected-mode no
註釋掉bind,否則其它地址無法訪問redis
④ 設置開機啟動
編輯/etc/rc.local:vim /etc/rc.local
添加一行:/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
之後,開機會自動啟動redis
⑤ 啟動/停止服務:
進入redis目錄:cd /usr/local/redis/src
啟動服務:./redis-server ../redis.conf
停止服務:./redis-cli shutdown
7、Git安裝
① 準備Git
下載:wget https://www.kernel.org/pub/software/scm/git/git-2.9.4.tar.gz
解壓:tar -zxvf git-2.9.4.tar.gz
② 安裝編譯Git時需要的包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
③ 刪除已有的git:yum remove git
④ 編譯安裝
cd /usr/local/src/git-2.9.4
安裝到/usr/local/git目錄:./configure --prefix=/usr/local/git
編譯安裝:make && make install
⑤ 創建軟鏈並測試
ln -s /usr/local/git/bin/* /usr/local/bin/
測試git:git --version
8、Maven安裝
① 準備maven
下載:wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
解壓:tar -zxvf apache-maven-3.3.9-bin.tar.gz
移動到/usr/local:mv apache-maven-3.3.9 /usr/local/maven3
② 添加環境變量
vim /etc/profile
在最後添加如下兩行:
export MAVEN_HOME=/usr/local/maven3
export PATH=$MAVEN_HOME/bin:$PATH
使環境變量生效:source /etc/profile
③ 檢驗maven:mvn -v
9、Jenkins安裝
將jenkins war包放入Tomcat中托管運行,可在https://jenkins.io/download/下載war包。
① 準備Jenkins Tomcat容器
復制一份tomcat:mv /usr/local/src/apache-tomcat-8.5.30 /usr/src/tomcat-jenkins-8090
設置端口為8090:
cd tomcat-jenkins-8090/conf/
vim server.xml
修改端口,避免和ljzsg服務器的端口沖突
開放8090端口
vim /etc/sysconfig/iptables
添加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT
重啟防火墻:service iptables restart
② 將jenkins war包放入webapps目錄下
③ 啟動tomcat:
cd tomcat-jenkins-8090/bin/
./startup.sh
10、部署服務
① 訪問jenkins網站做一些配置:http://192.168.0.0:8090/jenkins/
顯示解鎖jenkins頁面:第一次運行Jenkins時,會在~目錄下創建一個.jenkins的隱藏文件夾來存儲Jenkins的配置文件和插件庫,初始化的用戶名和密碼也在裏邊,登錄時需要用到。從/root/.jenkins/secrets/initialAdminPassword復制密碼並填入繼續。
② 登錄成功之後跳轉到插件選擇頁面。Jenkins作為一個框架,裏邊很多功能的集成是基於插件的,比如git插件可以從git獲取源碼,maven插件可以執行maven命令等等。我們選擇左邊的,自動安裝可支持的插件。重要插件安裝失敗可以重試幾次,或者手動安裝。
③ 創建管理員賬戶
④ 創建任務
選擇創建一個新任務,輸入項目名稱,勾選“構建一個自由風格的軟件項目”然後點擊確定,進入詳細配置頁面。
⑤ General配置
⑥ 選擇git進行源碼管理,輸入遠程倉庫地址,點擊Add添加git賬號。
⑦ 構建觸發器
構建觸發器是指在什麽條件下自動觸發構建,這裏我們不配置,手動觸發構建。
⑧ 構建配置
選擇Excecute shell
添加如下命令,打包項目:
LJZSG_HOME="/root/.jenkins/workspace/ljzsg_mt"
cd $LJZSG_HOME
mvn clean package
構建完成之後,將war包復制到tomcat下,並重啟項目
# LJZSG根目錄
LJZSG_HOME="/root/.jenkins/workspace/ljzsg_mt"
#Tomcat根目錄
TOMCAT_HOME="/usr/src/tomcat-ljz"
#端口
TOMCAT_PORT=8080
#TOMCAT_PID用於檢測Tomcat是否在運行
TOMCAT_PID=`lsof -n -P -t -i :${TOMCAT_PORT}`
#如果Tomcat還在運行
warRootPath="${TOMCAT_HOME}/webapps/ROOT/"
warPath="${TOMCAT_HOME}/webapps/core/"
warFile="${TOMCAT_HOME}/webapps/core.war"
#如果文件或者文件夾存在則刪除
deleteWhenExist(){
if [ -e $1 ]; then
rm -rf $1
fi
}
#如果Tomcat在運行,幹掉服務
if [ -n $TOMCAT_PID ]; then
kill -9 $TOMCAT_PID
fi
deleteWhenExist ${warRootPath}
deleteWhenExist ${warPath}
deleteWhenExist ${warFile}
#拷貝新編譯的包到Tomcat
cp $LJZSG_HOME/core/target/core.war ${TOMCAT_HOME}/webapps/
#啟動Tomcat
${TOMCAT_HOME}/bin/startup.sh
⑨ 構建項目
第一次會下載maven插件和項目依賴的包,會比較慢,可手動上傳jar包到maven倉庫。
11、其它
以後有的時候再添加
---
服務器集成環境搭建