SSD Cloud Hosting - Linode的配置和部署,搭建Java環境 - yejq
0、發牢騷
前一個月在淘寶購買了個Jsp空間,挺便宜的,才38元/年。部署了程序,然後ALIMAMA驗證網站,一直提示驗證失敗。最後找賣家,他說可能是因爲空間太慢,照他的推薦換了最好的空間,138元/年。換了之後一次就驗證通過了,感覺還挺滿意。期間有一次GET請求亂碼問題,server.xml改不了,找賣家,讓我付技術費什麼的,一來二去,很不愉快,最後自己在代碼中處理解決。
折騰了幾天,必須得做全站靜態化、模板化,提高各個功能模塊的可複用性,於是jsp換FreeMarker。再次發佈程序,上傳了war包,看log,tomcat沒有解壓war包,在控制面板中重啓進程,提示成功,但是看日誌還是沒有重新部署。沒有辦法,於是又找賣家幫忙重啓tomcat,賣家這次態度更惡劣,說我的菜鳥啊,垃圾程序啊什麼的,很不耐煩,素質很低。感覺就是那種剛剛當一年客服,被問題折磨成抑鬱症,見到客戶說有問題就極度厭惡(這種感受我親身經歷過,早年的時候現場就我一個人,即是開發又是客服,一聽到座機電話響就有把它砸爛的衝動)。 算啦,138元算是打水漂了,於是轉投Linode,以下便是記錄這次的配置和部署。
購買了個一般般的配置,練練手,配置如下:
套餐5:1G內存、24G SSD硬盤、2T 月流量、125M帶寬、1IP,多機房可選;70元/月;
1、創建一個磁盤並安裝操作系統
賣家會給你一個Linode後臺頁面: https://manager.linode.com/linodes/dashboard/linodexxxxx,登陸後,進入Dashboard,點擊 Deploy a Linux Distribution,出現下面的頁面。
在 Distribution下拉列表中選擇將要安裝的Linux發行版本。你也可以選擇使用 StackScripts,通過腳本直接安裝操作系統及必要的軟件,並配置系統,以及Wordpress也不在話下。我這裏選擇CentOS7。
在Deployment Disk Size中填寫磁盤大小,必須小於你的Linode剩餘待分配空間。
Swap Disk 菜單一般使用默認選項即可,當內存不夠用時,暫時會把長期不使用的內存換到交換區中,以節省出內存空間供其他使用。
輸入Root密碼:Root Password。
最後點擊 Deploy就完成了新磁盤的創建。
最後的最後,千萬別忘記點擊boot,也就是啓動VPS。
啓動中:
啓動完成:
2、SSH登陸測試
啓動CentOS7之後,就可以使用SSH工具登陸測試,以後安裝軟件就靠它了。這裏我使用SecureCRT,密碼是剛剛設置的那個。
OK,連接成功;
3、SFTP登陸測試
我這裏用的工具是SecureFX,同樣能連接成功,great!
4、搭建Java環境
搭建Java環境要安裝JDK,搭配Tomcat可以作爲JSP Web服務器。系統先升級到目前最新。
yum check-update && yum update
JDK下載地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html
這裏使用rpm包,JDK7(Java SE 7u67 64位, http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.rpm,這裏貌似需要登陸的,實際我下載的鏈接是 http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.rpm?AuthParam=1410504824_54a84185fe3ce61caeec050ef3430c35 ),開始安裝;
cd /tmp
wget http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.rpm?AuthParam=1410504824_54a84185fe3ce61caeec050ef3430c35
接着安裝:
mv jdk-7u67-linux-x64.rpm\?AuthParam\=1410504824_54a84185fe3ce61caeec050ef3430c35 jdk-7u67-linux-x64.rpm
cd /usr
mkdir java
cd java
cp /tmp/jdk-7u67-linux-x64.rpm .
chmod a+x jdk-7u67-linux-x64.rpm
rpm -ivh jdk-7u67-linux-x64.rpm
編輯環境變量:
vi /etc/profile
在最後增加配置:
export JAVA_HOME=/usr/java/jdk1.7.0_67
export CALSSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
重啓linux或者執行source /etc/profile命令讓修改生效:
reboot
重啓之後,驗證java是否安裝成功:
java -version
5、安裝Tomcat7
創建app目錄;
cd /
mkdir app
到官網下載tomcat7, http://apache.dataguru.cn/tomcat/tomcat-7/v7.0.55/bin/apache-tomcat-7.0.55.tar.gz
用SecureFx將apache-tomcat-7.0.55.tar.gz上傳到目錄/app;
解壓縮;
cd /app
tar -xzvf apache-tomcat-7.0.55.tar.gz
進入tomcat目錄設置tomcat的內存使用情況及其他配置:
cd apache-tomcat-7.0.55/bin
vi daemon.sh
在正文開始的地方加入以下內容(注意將jdk等目錄結合自己的實際情況進行修改) :
JAVA_HOME=/usr/java/jdk1.7.0_67
CATALINA_HOME=/app/apache-tomcat-7.0.55
CATALINA_OPTS="-Xms256m -Xmx896m -XX:PermSize=128m -XX:MaxPermSize=512m"
修改爲:
先安裝gcc,因爲編譯的時候要用到
yum install gcc
輸入y,回車安裝;
創建tomcat用戶,用來運行tomcat服務,在生產環境用root是不安全的,所以
useradd -s /sbin/nologin tomcat
chown -R tomcat:tomcat /app/apache-tomcat-7.0.55
要將tomcat作爲linux的daemon運行,需要commons-daemon工程的jsvc工具,tomcat的bin目錄裏已經自帶了這個工具的源碼。/app/apache-tomcat-7.0.55/bin/commons-daemon-native.tar.gz,解壓它,編譯它;
tar -xzvf commons-daemon-native.tar.gz
cd commons-daemon-1.0.15-native-src/unix
./configure
make
cp jsvc ../..
將tomcat服務做爲service,和操作系統一起啓動。
cp daemon.sh /etc/init.d/tomcat
chmod 755 /etc/init.d/tomcat
修改tomcat的配置;
cd /etc/init.d
vi tomcat
增加配置:
# chkconfig: 2345 10 90
# description: tomcat ....
加入到服務;
chkconfig --add tomcat
chkconfig tomcat on
chkconfig --list tomcat
確認2~5爲on的狀態就OK了。啓動Tomcat:
service tomcat start
瀏覽器訪問網站,出現tomcat的首頁就表示成功了,騷年;
6、修改tomcat配置
修改server.xml,修改端口爲80;
service tomcat stop
cd /app/apache-tomcat-7.0.55/conf
vi server.xml
增加GET請求編碼支持:
URIEncoding="UTF-8"
useBodyEncodingForURI="true"
啓動tomcat驗證;
service tomcat start
7、部署web程序
先修改DNS綁定到新的主機ip,我這裏用的是https://www.dnspod.cn/,修改ip就可以了;
上傳程序到tomcat的webapps目錄;
上傳war包之後,tomcat會自動解壓;
修改默認項目爲你自己的項目,server.xml中Host節點增加配置;
<Context docBase="xqsoso" path="/" reloadable="true"/>
啓動tomcat,訪問網站,驗證成功,ok洗洗睡;