前言
? 大佬說要讓技術(shù)部方便部署诈乒,前面的文檔看不懂舱馅,所以只能整合成shell腳本了。
正文
1.tracker腳本
#!/bin/bash
echo -e "關(guān)閉防火墻"
systemctl stop firewalld.service
systemctl disable firewalld.service
echo -e "===================start install FastDFS=============================="
if [ -z $(rpm -qa | grep gcc-c++) ]
then
echo -e "start install gcc-c"
yum install -y make cmake gcc gcc-c++
fi
if [ -z $(rpm -qa | grep perl) ]
then
echo -e "安裝perl"
yum install -y perl
fi
# FastDFS 相關(guān)base path
fastDFS_base_path="/home/fastdfs/"
# 軟件所在目錄
software_path="/usr/local/software/"
echo -e "\033[32m ==============================start install FastDFS============================== \033[0m"
# ----------------安裝libfastcommon start----------------
# 解壓libfastcommon-master.zip
echo "1.解壓libfastcommon-master.zip? ----start"
if [ -z $(rpm -qa | grep unzip) ]
then
echo -e "安裝unzip"
yum install -y unzip zip
fi
if [ -d "/usr/local/fast/libfastcommon-master" ] ;then
? ? rm -rf /usr/local/fast/libfastcommon-master
fi
unzip ${software_path}libfastcommon-master.zip -d /usr/local/fast/
cd /usr/local/fast/libfastcommon-master/
ls -l
# 編譯libfastcommon
cd libfastcommon-master
./make.sh || exit 1
# 安裝
./make.sh install || exit 1
echo "解壓libfastcommon-master.zip? ----end"
echo "---"
# ----------------安裝libfastcommon end----------------
# ----------------安裝FastDFS start----------------
# 解壓FastDFS安裝包
echo "2.解壓FastDFS安裝包 ----start"
if [ -d "/usr/local/fast/FastDFS" ] ;then
? ? rm -rf /usr/local/fast/FastDFS
fi
cd ${software_path}
tar -zxvf ${software_path}FastDFS_v5.05.tar.gz -C /usr/local/fast/
cd /usr/local/fast/FastDFS/
ls -l
# 編譯
./make.sh || exit 1
#安裝
./make.sh install || exit 1
echo "解壓FastDFS安裝包 ----end"
echo "---"
# ----------------安裝FastDFS end----------------
# ----------------配置Tracker服務(wù) start----------------
echo "3.開始配置tracker_server屬性"
cd /etc/fdfs/
echo "把tracker.conf文件進行cope一份"
cp ${software_path}tracker.conf /etc/fdfs/
# tracker目錄是否存在,不存在則創(chuàng)建
if [ ! -d ${fastDFS_base_path}"tracker" ] ;then
? ? mkdir -p ${fastDFS_base_path}"tracker"
fi
# ----------------配置Tracker服務(wù) end----------------
echo -e "\033[32m ==============================install Nginx Start============================== \033[0m"
# ----------------安裝和配置nginx start----------------
# 安裝依賴
echo "安裝依賴"
yum install -y pcre
yum install -y pcre-devel
yum install -y zlib
yum install -y zlib-devel
echo "解壓fastdfs-nginx-module"
#解壓fastdfs-nginx-module_v1.16.tar.gz
if [ -d "/usr/local/fast/fastdfs-nginx-module" ];then
echo "刪除fastdfs-nginx-module"
rm -rf /usr/local/fast/fastdfs-nginx-module/
fi
cd ${software_path}
tar -zxvf ${software_path}fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fast/
echo "解壓ngx_cache_purge"
#解壓ngx_cache_purge-2.3.tar.gz
if [ -d "/usr/local/fast/ngx_cache_purge-2.3" ];then
echo "刪除ngx_cache_purge-2.3"
rm -rf /usr/local/fast/ngx_cache_purge-2.3
fi
tar -zxvf ${software_path}ngx_cache_purge-2.3.tar.gz -C /usr/local/fast/
cd /usr/local/fast/
ls -l
echo "解壓nginx"
#解壓nginx
if [ -d "/usr/local/nginx-1.8.0" ];then
echo "刪除nginx1.8.0"
rm -rf /usr/local/nginx-1.8.0/
fi
if [ -d "/usr/local/nginx" ];then
echo "刪除nginx"
rm -rf /usr/local/nginx/
fi
tar -zxvf ${software_path}nginx-1.8.0.tar.gz -C /usr/local/
cd /usr/local/nginx-1.8.0/
ls -l
echo "nginx加入ngx_cache_purge模塊"
# nginx加入ngx_cache_purge模塊
./configure --add-module=/usr/local/fast/ngx_cache_purge-2.3
echo "編譯安裝nginx"
# 編譯安裝nginx
make || exit 1
make install || exit 1
echo "修改nginx配置"
rm -rf /usr/local/nginx/conf/nginx.conf
cp ${software_path}nginx_tracker.conf /usr/local/nginx/conf/nginx.conf
echo "創(chuàng)建文件夾"
# 判斷/var/cache/nginx/proxy_cache/tmp目錄是否存在嚎卫,不存在則創(chuàng)建
if [ ! -d "/var/cache/nginx/proxy_cache/tmp" ] ;then
? ? mkdir -p "/var/cache/nginx/proxy_cache/tmp"
fi
echo "啟動tracker服務(wù)"
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
echo "打印tracker進程"
ps -el | grep fdfs
echo "啟動nginx服務(wù)"
/usr/local/nginx/sbin/nginx
echo "打印nginx進程"
ps -ef | grep nginx
2.storage腳本
#!/bin/bash
echo -e "關(guān)閉防火墻"
systemctl stop firewalld.service
systemctl disable firewalld.service
if [ -z $(rpm -qa | grep gcc-c++) ]
then
echo -e "start install gcc-c"
yum install -y make cmake gcc gcc-c++
fi
if [ -z $(rpm -qa | grep perl) ]
then
echo -e "安裝perl"
yum install -y perl
fi
if [ -z $(rpm -qa | grep unzip) ]
then
echo -e "安裝unzip"
yum install -y unzip zip
fi
# FastDFS 相關(guān)base path
fastDFS_base_path="/home/fastdfs/"
# 軟件所在目錄
software_path="/usr/local/software/"
echo -e "\033[32m ==============================start install FastDFS============================== \033[0m"
# ----------------安裝libfastcommon start----------------
# 解壓libfastcommon-master.zip
echo "1.解壓libfastcommon-master.zip? ----start"
if [ -d "/usr/local/fast/libfastcommon-master/" ];then
echo "刪除libfastcommon-master"
rm -rf /usr/local/fast/libfastcommon-master/
fi
unzip ${software_path}libfastcommon-master.zip -d /usr/local/fast/
cd /usr/local/fast/libfastcommon-master/
ls -l
# 編譯libfastcommon
./make.sh || exit 1
# 安裝
./make.sh install || exit 1
echo "解壓libfastcommon-master.zip? ----end"
echo "---"
# ----------------安裝libfastcommon end----------------
# ----------------安裝FastDFS start----------------
# 解壓FastDFS安裝包
echo "2.解壓FastDFS安裝包 ----start"
if [ -d "/usr/local/fast/FastDFS/" ];then
echo "刪除FastDFS"
rm -rf /usr/local/fast/FastDFS/
fi
cd ${software_path}
tar -zxvf ${software_path}FastDFS_v5.05.tar.gz -C /usr/local/fast/
cd /usr/local/fast/FastDFS/
ls -l
# 編譯
./make.sh || exit 1
#安裝
./make.sh install || exit 1
echo "解壓FastDFS安裝包 ----end"
echo "---"
# ----------------安裝FastDFS end----------------
# ----------------配置storage服務(wù) start----------------
echo "3.開始配置storage_server屬性"
cd /etc/fdfs/
cp ${software_path}storage.conf storage.conf
# storage目錄是否存在栅干,不存在則創(chuàng)建
if [ ! -d ${fastDFS_base_path}"storage" ] ;then
? ? mkdir -p ${fastDFS_base_path}"storage"
fi
# ----------------配置storage服務(wù) end----------------
echo -e "\033[32m ==============================install Nginx Start============================== \033[0m"
# ----------------安裝和配置nginx start----------------
# 安裝依賴
echo "安裝依賴"
yum install -y pcre
yum install -y pcre-devel
yum install -y zlib
yum install -y zlib-devel
echo "解壓fastdfs-nginx-module"
if [ -d "/usr/local/fast/fastdfs-nginx-module/" ];then
echo "刪除fastdfs-nginx-module"
rm -rf /usr/local/fast/fastdfs-nginx-module/
fi
#解壓fastdfs-nginx-module_v1.16.tar.gz
cd ${software_path}
tar -zxvf ${software_path}fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fast/
cd /usr/local/fast/fastdfs-nginx-module/src/
ls -l
sed -i "s|CORE_INCS=\"\$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/\"|CORE_INCS=\"\$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/\"|g" config
echo "解壓nginx"
#解壓nginx
if [ -d "/usr/local/nginx-1.8.0" ];then
echo "刪除nginx1.8.0"
rm -rf /usr/local/nginx-1.8.0/
fi
if [ -d "/usr/local/nginx" ];then
echo "刪除nginx"
rm -rf /usr/local/nginx/
fi
tar -zxvf ${software_path}nginx-1.8.0.tar.gz -C /usr/local/
cd /usr/local/nginx-1.8.0/
ls -l
echo "nginx加入ngx_cache_purge模塊"
# nginx加入ngx_cache_purge模塊
./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src/
echo "編譯安裝nginx"
# 編譯安裝nginx
make || exit 1
make install || exit 1
echo "復(fù)制配置文件mod_fastdfs.conf"
cp ${software_path}mod_fastdfs.conf /etc/fdfs/
echo "復(fù)制http.conf和mime.types"
cd /usr/local/fast/FastDFS/conf/
cp http.conf mime.types /etc/fdfs/
echo "修改nginx配置"
rm -rf /usr/local/nginx/conf/nginx.conf
cp ${software_path}nginx_storage.conf /usr/local/nginx/conf/nginx.conf
echo "創(chuàng)建文件夾"
# 判斷/var/cache/nginx/proxy_cache/tmp目錄是否存在迈套,不存在則創(chuàng)建
if [ ! -d "/var/cache/nginx/proxy_cache/tmp" ] ;then
? ? mkdir -p "/var/cache/nginx/proxy_cache/tmp"
fi
echo "啟動storage服務(wù)"
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
echo "打印storage進程"
ps -el | grep fdfs
echo "啟動nginx服務(wù)"
/usr/local/nginx/sbin/nginx
echo "打印nginx進程"
ps -ef | grep nginx