專業(yè)做淘寶網(wǎng)站地推網(wǎng)
前幾天逛知乎,有個(gè)問(wèn)題是如何成為一個(gè)優(yōu)秀的運(yùn)維工程師,有個(gè)回答是讓自己搞清楚如下幾件事情。
首先,搭4臺(tái)Linux的服務(wù)器。然后完成如下操作
- 批量安裝最新版OpenJDK
- 安裝部署elastic search集群
- 安裝部署mysql9.0,實(shí)現(xiàn)一主三備。
- 安裝redis server,實(shí)現(xiàn)兩主兩從。
- 安裝監(jiān)控prometheus,把以上服務(wù)的運(yùn)行狀態(tài)全都監(jiān)控起來(lái)。
最后,讓以上操作在命令下自動(dòng)執(zhí)行。
所以我們今天就來(lái)實(shí)踐第一步。當(dāng)然了,4臺(tái)服務(wù)器的搭建過(guò)程略。
OpenJDK是一個(gè)java環(huán)境的開源安裝包,比較小,安裝比較簡(jiǎn)單。很適合用來(lái)做自動(dòng)化運(yùn)維的安裝測(cè)試。以下用手動(dòng)安裝和腳本安裝兩種方式來(lái)進(jìn)行介紹。
下載安裝文件
-
手動(dòng)下載
下載地址:https://jdk.java.net/22/
我下載到的文件名是:openjdk-22.0.2_linux-x64_bin.tar.gz
通過(guò)ftp工具上傳到服務(wù)器指定目錄,略。
-
通過(guò)wget下載
需要安裝wget工具
# 檢查是否安裝了wget rpm qa|grep wget # 如果有會(huì)顯示版本,否則使用yum命令安裝。默認(rèn)rpm源可能略慢,建議使用阿里云的repo
設(shè)置阿里云yum源(可選)
# 測(cè)試是否能ping通阿里云 ping mirrors.aliyun.com# 刪除原yum倉(cāng)庫(kù) rm -rf /etc/yum.repos.d/*# 下載阿里云的repo # curl命令下載: curl [options] [url] curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo# 清除yum緩存 yum clean all# 緩存阿里云鏡像 yum makecache
確認(rèn)yum源
[root@69af1d3b05c2 yum.repos.d]# yum repolist Loaded plugins: fastestmirror, ovl Loading mirror speeds from cached hostfile* base: mirrors.aliyun.com* extras: mirrors.aliyun.com* updates: mirrors.aliyun.com repo id repo name status base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10072 extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 526 updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 5802 repolist: 16400
yum安裝wget
yum install -y wget
然后使用如下命令進(jìn)行下載,假設(shè)下載到/opt/
wget /opt/ https://download.java.net/java/GA/jdk22.0.2/c9ecb94cd31b495da20a27d4581645e8/9/GPL/openjdk-22.0.2_linux-x64_bin.tar.gz
如果下載途中出現(xiàn)卡住的問(wèn)題
首先使用ctrl+z 暫停任務(wù) 然后使用下述命令繼續(xù)下載 wget -c https://download.java.net/java/GA/jdk22.0.2/c9ecb94cd31b495da20a27d4581645e8/9/GPL/openjdk-22.0.2_linux-x64_bin.tar.gz
解壓進(jìn)行安裝
解壓命令
# 先創(chuàng)建文件夾
# mkdir /opt/jdk/
# tar -zxf /opt/openjdk-22.0.2_linux-x64_bin.tar.gz -C /opt/jdk/
配置環(huán)境變量
vim /etc/profile# 在最后添加如下語(yǔ)句,然后保存
export JAVA_HOME=/opt/jdk/jdk-22.0.2export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar# 使配置文件生效
source /etc/profile# 然后可以使用下述命令檢查是否成功
java --version
腳本安裝
熟悉了手動(dòng)安裝的步驟,接下來(lái)我們來(lái)進(jìn)行腳本一鍵安裝。首先,腳本內(nèi)容如下:
#!/bin/sh
# 安裝OpenJDK的腳本
live=1
#判斷自帶JDK
rpm -qa|grep java#創(chuàng)建jdk安裝路徑
echo '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'
echo 創(chuàng)建jdk安裝路徑/opt/jdk
mkdir -p /opt/jdk
tar -zxf /opt/openjdk-22.0.2_linux-x64_bin.tar.gz -C /opt/jdk/
if [ $? == 0 ]thenecho '解壓成功'elseecho '解壓失敗'live=0exit 0
fi#配置環(huán)境變量
function setJdk(){
if [ live == 0 ];then exit 0 else
echo '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'
echo 配置環(huán)境變量
echo '#設(shè)置環(huán)境變量' >> /etc/profile
echo 'export JAVA_HOME=/opt/jdk/jdk-22.0.2' >> /etc/profile
echo 'export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/:$JAVA_HOME/jre/lib' >> /etc/profile
echo 'export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR' >> /etc/profile
fi
}
setJdk#重新加載配置文件
echo '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'
echo 重新加載配置文件
source /etc/profile
echo JAVA_HOME=$JAVA_HOME
echo CLASSPATH=$CLASSPATH#查詢java安裝信息
echo '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'
echo 查詢java安裝信息
java -version
假設(shè)我們把腳本放在/opt/install_jdk.sh,我們需要授予它運(yùn)行的權(quán)限
chmod 777 /opt/install_jdk.sh
然后運(yùn)行腳本
# 注意這里是用sh運(yùn)行的
sh /opt/install_jdk.sh
此時(shí),當(dāng)前連接的bash界面還沒(méi)刷新,還無(wú)法使用java命令。這是因?yàn)?#xff1a;執(zhí)行腳本時(shí),腳本中的命令是在子shell中執(zhí)行,子shell只能繼承父shell的環(huán)境變量,而無(wú)法修改父shell的環(huán)境變量,所做的修改僅對(duì)當(dāng)前子shell有效。所以,當(dāng)腳本執(zhí)行完成,回到shell命令行,原子shell腳本中執(zhí)行的source命令也就不生效。
所以,建議使用source或.運(yùn)行腳本
source /opt/install_jdk.sh
或者
. /opt/install_jdk.sh