云計(jì)算集群技術(shù)及應(yīng)用 課件 第9章-大型網(wǎng)站集群架構(gòu)項(xiàng)目二_第1頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第9章-大型網(wǎng)站集群架構(gòu)項(xiàng)目二_第2頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第9章-大型網(wǎng)站集群架構(gòu)項(xiàng)目二_第3頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第9章-大型網(wǎng)站集群架構(gòu)項(xiàng)目二_第4頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第9章-大型網(wǎng)站集群架構(gòu)項(xiàng)目二_第5頁
已閱讀5頁,還剩80頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第9章

大型網(wǎng)站集群架構(gòu)項(xiàng)目二9.1項(xiàng)目準(zhǔn)備9.2LNMP部署網(wǎng)站9.3部署數(shù)據(jù)庫服務(wù)器9.4共享存儲(chǔ)9.5共享存儲(chǔ)實(shí)時(shí)備份9.6部署HAProxy七層負(fù)載掌握搭建完整網(wǎng)站集群架構(gòu)的方式熟悉HAProxy+Keepalived的部署方式熟悉共享存儲(chǔ)集群的搭建引言通過項(xiàng)目一的學(xué)習(xí),讀者已經(jīng)可以掌握高并發(fā)大型網(wǎng)站的集群部署以及優(yōu)化的基本操作。為了進(jìn)一步提升讀者在生產(chǎn)環(huán)境中對該部分內(nèi)容的運(yùn)用技巧,本章將針對HAProxy+Keepalived高可用集群的部署進(jìn)行講解。9.1項(xiàng)目準(zhǔn)備項(xiàng)目說明項(xiàng)目設(shè)計(jì)項(xiàng)目實(shí)施該章節(jié)與第八章類似,主要是對全書內(nèi)容的一個(gè)綜合項(xiàng)目總結(jié)。對本書的重點(diǎn)知識,如HAProxy七層負(fù)載、Keepalived高可用軟件、共享存儲(chǔ)集群進(jìn)行回顧,進(jìn)一步掌握集群的架設(shè)要領(lǐng)。10.1

觸發(fā)器概述本章通過搭建集群實(shí)現(xiàn)新聞系統(tǒng)的上線。用戶可以通過網(wǎng)絡(luò)對集群的資源進(jìn)行訪問,訪問流程如下所示。首先,客戶端的用戶通過Internet訪問新聞系統(tǒng)的網(wǎng)站地址,如。通過客戶端在hosts文件中解析,解析到HAProxy前端負(fù)載均衡器上。HAProxy負(fù)載均衡器將請求輪詢到后端的LAMPWeb服務(wù)器和LNMPWeb服務(wù)器。在兩種web服務(wù)器上分別部署新聞系統(tǒng)虛擬主機(jī)網(wǎng)站內(nèi)容。當(dāng)用戶注冊登錄、發(fā)布新聞等內(nèi)容時(shí),數(shù)據(jù)通過Web服務(wù)寫入MySQL數(shù)據(jù)庫。當(dāng)用戶上傳新聞圖片、視頻、附件頭像等文件時(shí),這些數(shù)據(jù)會(huì)通過Web服務(wù)傳到共享存儲(chǔ)NFS服務(wù)器上,而不是存儲(chǔ)到Web服務(wù)器上。

9.1

項(xiàng)目準(zhǔn)備9.1.1

項(xiàng)目說明所有服務(wù)器時(shí)間保持一致,對重要數(shù)據(jù)進(jìn)行定時(shí)備份。NFS存儲(chǔ)的靜態(tài)文件數(shù)據(jù)會(huì)實(shí)時(shí)同步到備份服務(wù)器上,完成實(shí)時(shí)的數(shù)據(jù)熱備。NFS服務(wù)器宕機(jī)后,完成備份服務(wù)器的快速切換,幾乎保證數(shù)據(jù)無丟失。為HAProxyx配置高可用,實(shí)現(xiàn)宕機(jī)后由備機(jī)自動(dòng)接管服務(wù)。9.1

項(xiàng)目準(zhǔn)備9.1.1

項(xiàng)目說明本章將要搭建的HAProxy+Keepalived網(wǎng)站集群的架構(gòu)圖。9.1

項(xiàng)目準(zhǔn)備9.1.2

項(xiàng)目設(shè)計(jì)該架構(gòu)中用到的服務(wù)器及技術(shù)解釋。七層負(fù)載均衡調(diào)度器(HAProxy+Keepalived)Web1服務(wù)器(Apache+PHP)Web2服務(wù)器(Nginx+PHP)數(shù)據(jù)庫服務(wù)器(Mysql)共享存儲(chǔ)服務(wù)器(NFS+Rsync+inotify-tools)backup(Rsync)本章所演示的綜合項(xiàng)目首先以LNMP架構(gòu)為基礎(chǔ),分離部署數(shù)據(jù)庫,搭建小型網(wǎng)站集群,并上線內(nèi)容管理系統(tǒng)。在Web集群搭建之后,再對該網(wǎng)站進(jìn)行架構(gòu)的升級,配置七層負(fù)載均衡器改善網(wǎng)站性能,配置共享存儲(chǔ)服務(wù)器存儲(chǔ)靜態(tài)文件,配置備份服務(wù)器對網(wǎng)站數(shù)據(jù)進(jìn)行安全備份。9.1

項(xiàng)目準(zhǔn)備9.1.3

項(xiàng)目實(shí)施要完成圖中的網(wǎng)站架構(gòu)部署,至少要準(zhǔn)備8臺可用的服務(wù)器。本章項(xiàng)目使用云服務(wù)器,實(shí)驗(yàn)環(huán)境具體如表。9.1

項(xiàng)目準(zhǔn)備9.1.3

項(xiàng)目實(shí)施服務(wù)器角色應(yīng)用程序私網(wǎng)IP地址公網(wǎng)IP地址Web服務(wù)器1Apache+PHP226Web服務(wù)器2Nginx+PHP254數(shù)據(jù)庫服務(wù)器mysqlMySQL70共享存儲(chǔ)nfsNFS+Rsync+Inotify-tools430備份服務(wù)器backupRsync258七層負(fù)載均衡器lb01HAProxy+Keepalived176VIP:50彈性公網(wǎng)IP:91七層負(fù)載均衡器lb02HAProxy+Keepalived0備注:本實(shí)驗(yàn)中所有服務(wù)器都采用CentOS7.6操作系統(tǒng),需要提前關(guān)閉防火墻及Selinux,同步系統(tǒng)時(shí)間,做域名解析。使用云服務(wù)器時(shí)需要注意,實(shí)際環(huán)境按業(yè)務(wù)實(shí)際需要選擇區(qū)域購買。保證集群在同一內(nèi)網(wǎng)段,就要使所有云資源須在同一區(qū)域。從表9.1可以看出,將2臺同子網(wǎng)的彈性云服務(wù)器配置Keepalived,一臺為主服務(wù)器,一臺為備份服務(wù)器,并將這2臺彈性云服務(wù)器綁定同一個(gè)虛擬IP。虛擬IP需要登錄云控制臺,在VPC網(wǎng)絡(luò)板塊下去申請,申請通過后可以在VPC網(wǎng)絡(luò)板塊下看到。將虛擬IP與彈性公網(wǎng)IP綁定,從互聯(lián)網(wǎng)可以訪問綁定了該虛擬IP地址的主備云服務(wù)器。9.1

項(xiàng)目準(zhǔn)備9.1.3

項(xiàng)目實(shí)施為所有機(jī)器做域名解析,在/etc/hosts文件中加入以下代碼。22web125web27mysql43nfs25backup1lb01lb029.2LNMP部署網(wǎng)站LNMP架構(gòu)上線業(yè)務(wù)9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)1.在Web服務(wù)器上搭建LNMP環(huán)境,以web1為例,首先安裝Nginx,并設(shè)置為開機(jī)自啟。[root@web1~]#yum-yinstallepel-release[root@web1~]#yuminstall-ynginx[root@web1~]#systemctlstartnginx[root@web1~]#systemctlenablenginx2.使用源碼編譯安裝PHP。#安裝編譯工具及PHP的相關(guān)依賴包[root@web1~]#yuminstall-ygccgcc-c++makezlibzlib-develpcrepcre-devellibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-devellibxml2libxml2-develglibcglibc-develglib2glib2-develbzip2bzip2-develncursesncurses-develcurlcurl-devele2fsprogse2fsprogs-develkrb5krb5-developensslopenssl-developenldapopenldap-develnss_ldapopenldap-clientsopenldap-servers#下載PHP軟件包到/usr/local目錄[root@web1~]#cd/usr/local/9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)2.使用源碼編譯安裝PHP。[root@web1local]#wget/distributions/php-7.2.20.tar.gz--2022-05-1916:47:54--/distributions/php-7.2.20.tar.gzResolving()...9,2a02:cb40:200::1adConnectingto()|9|:443...connected.HTTPrequestsent,awaitingresponse...200OKLength:19724758(19M)[application/octet-stream]Savingto:‘php-7.2.20.tar.gz’100%[==============>]19,724,758344KB/sin63s2022-05-1916:48:58(307KB/s)-‘php-7.2.20.tar.gz’saved[19724758/19724758]#解壓[root@web1local]#tar-zxfphp-7.2.20.tar.gz9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)3.進(jìn)入解壓后的PHP目錄,對即將安裝的PHP軟件進(jìn)行配置,以及檢查當(dāng)前環(huán)境是否滿足源代碼安裝的依賴關(guān)系。[root@web1local]#cdphp-7.2.20[root@web1local]#./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php--enable-mbstring--with-openssl--enable-ftp--with-gd--with-jpeg-dir=/usr--with-png-dir=/usr--with-mysql=mysqlnd--with-mysqli=mysqlnd--with-pdo-mysql=mysqlnd--with-pear--enable-sockets--with-freetype-dir=/usr--with-zlib--with-libxml-dir=/usr--with-xmlrpc--enable-zip--enable-fpm--enable-xml--enable-sockets--with-gd--with-zlib--with-iconv--enable-zip--with-freetype-dir=/usr/lib/--enable-soap--enable-pcntl--enable-cli--with-curl--enable-exif--enable-bcmath#安裝[root@web1php-7.2.20]#make&&makeinstall9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)4.安裝完成后,拷貝一份php.ini至php安裝目錄。5.在環(huán)境配置文件/etc/profile中添加PHP環(huán)境變量。[root@web1php-7.2.20]#cpphp.ini-production/usr/local/php/php.ini[root@web1php-7.2.20]#exportPATH=$PATH:/usr/local/php/bin[root@web1php-7.2.20]#source/etc/profile6.查看當(dāng)前PHP的版本,進(jìn)一步驗(yàn)證PHP是否安裝成功。[root@web1php-7.2.20]#php-vPHP7.2.20(cli)(built:Apr20202217:21:31)(NTS)Copyright(c)1997-2018ThePHPGroupZendEnginev3.2.0,Copyright(c)1998-2018ZendTechnologies7.至此PHP安裝完成,接著復(fù)制PHP-FPM的啟動(dòng)腳本。[root@web1php-7.2.20]#cp./sapi/fpm/init.d.php-fpm/etc/init.d/php-fpm[root@web1php-7.2.20]#chmod+x/etc/init.d/php-fpm9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)8.修改PHP-FPM的配置文件。[root@web1php-7.2.20]#cd/usr/local/php/etc/[root@web1etc]#cpphp-fpm.conf.defaultphp-fpm.conf#刪除pid=run/php-fpm.pid前面的分號[root@web1etc]#vimphp-fpm.conf……省略部分代碼……pid=run/php-fpm.pid[root@web1etc]#cdphp-fpm.d/[root@web1php-fpm.d]#cpwww.conf.defaultwww.conf9.啟動(dòng)PHP-FPM。[root@web1php-fpm.d]#/etc/init.d/php-fpmstartStartingphp-fpmdone[root@web1php-fpm.d]#/etc/init.d/php-fpmstatusphp-fpm(pid126518)isrunning...可修改www.conf文件中的user和group為當(dāng)前用戶,默認(rèn)用戶和用戶組為nobody。9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)10.查看PHP-FPM的進(jìn)程信息。[root@web1php-fpm.d]#ps-ef|grepphp-fpmroot200921011:17?00:00:00php-fpm:masterprocess(/usr/local/php/etc/php-fpm.conf)nobody2009320092011:17?00:00:00php-fpm:poolwwwnobody2009420092011:17?00:00:00php-fpm:poolwwwroot3092729760011:25pts/000:00:00grep--color=autophp-fpm11.測試頁面的編寫代碼及內(nèi)容。#vim/var/www/html/index.php<?phpphpinfo();?>編寫完成后,輸入:wq!,保存退出可修改www.conf文件中的user和group為當(dāng)前用戶,默認(rèn)用戶和用戶組為nobody。在兩臺Web服務(wù)器上各自編寫一個(gè)PHP測試頁,測試網(wǎng)站是否能解析PHP語言。若之前安裝的PHP可以正常工作,在瀏覽器中訪問該動(dòng)態(tài)Web服務(wù)器IP時(shí),可以看到PHP信息頁。9.2

LNMP部署網(wǎng)站9.2.1

LNMP架構(gòu)12.在瀏覽器中訪問Web服務(wù)器的IP。Nginx與PHP可以正常工作。web2服務(wù)器做與web1同樣的操作。9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)13.在web1服務(wù)器上創(chuàng)建網(wǎng)站目錄/webdir,上傳內(nèi)容管理系統(tǒng)項(xiàng)目包。[root@web1~]#mkdir/webdir[root@web1~]#cd/webdir/[root@web1webdir]#wget/rpcms/RPCMS/repository/archive/master.zip[root@web1webdir]#lsmaster.zip[root@web1webdir]#unzipmaster.zip[root@web1webdir]#lsmaster.zipRPCMS-master14.設(shè)置網(wǎng)站目錄的權(quán)限。[root@web1webdir]#chmod777-R/webdir/*9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)15.Nginx默認(rèn)只處理以.html結(jié)尾的文件,將.php文件加入網(wǎng)站處理的范圍,更新網(wǎng)站接收的文件類型以及網(wǎng)站目錄。創(chuàng)建網(wǎng)站配置文件。[root@web1webdir]#vim/etc/nginx/conf.d/rpcms.confserver{listen80;server_namelocalhost;charsetutf-8;indexindex.phpindex.html;root/webdir/RPCMS-master;autoindexoff;location/{if(!-e$request_filename){rewrite^(.*)$/index.php?s=$1last;break;}}location~\.php${fastcgi_pass:9000;fastcgi_indexindex.php;fastcgi_paramPHP_VALUE"open_basedir=/webdir/:/tmp/:/var/tmp/";fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;includefastcgi_params;}9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)15.Nginx默認(rèn)只處理以.html結(jié)尾的文件,將.php文件加入網(wǎng)站處理的范圍,更新網(wǎng)站接收的文件類型以及網(wǎng)站目錄。創(chuàng)建網(wǎng)站配置文件。#配置偽靜態(tài)規(guī)則location~*^/(data|plugin|system)/.*.(php|php5)${ denyall;}location/RPCMS-master/{ if(!-e$request_filename){ rewrite^/rpcms/(.*)$/rpcms/index.php?s=$1last;break;}}}16.重新啟動(dòng)Nginx使配置文件生效。[root@web1webdir]#systemctlrestartnginx9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)17.有了執(zhí)行權(quán)限,業(yè)務(wù)就可以在線上運(yùn)行。重新啟動(dòng)Nginx服務(wù)后,訪問web1的IP即可進(jìn)入系統(tǒng)的安裝協(xié)議頁面。單擊“同意”按鈕,開始檢測環(huán)境支持和讀寫權(quán)限,進(jìn)入安裝向?qū)ы撁妗?8.環(huán)境及目錄權(quán)限檢測過程。單擊“下一步”按鈕。9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)19.頁面出現(xiàn)錯(cuò)誤提示。20.若沒有www用戶,則需要?jiǎng)?chuàng)建www用戶和組。data、plugin、templates/index和upload文件顯示“非www用戶”,因此修改data、plugin、templates/index和upload文件的屬主和屬組為www。[root@web1~]#idwwwid:www:nosuchuser[root@web1~]#groupaddwww[root@web1~]#useradd-gwww-s/sbin/nologinwww[root@web1RPCMS-master]#idwwwuid=1000(www)gid=1000(www)組=1000(www)9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)21.修改data、plugin、templates/index和upload文件的屬主和屬組為www。22.重新進(jìn)入安裝目錄檢測頁面。[root@web1~]#cd/webdir/RPCMS-master/[root@web1RPCMS-master]#lsconfig.phpfavicon.icopluginroute.phpsystemuploadsdataindex.phpREADME.mdstatictemplates[root@web1RPCMS-master]#chownwwwdata/[root@web1RPCMS-master]#chownwwwplugin/[root@web1RPCMS-master]#chownwwwtemplates/index/[root@web1RPCMS-master]#chownwwwuploads/安裝目錄檢測一切正常,單擊“下一步”按鈕。9.2

LNMP部署網(wǎng)站9.2.2

上線業(yè)務(wù)23.進(jìn)入?yún)?shù)配置頁面,開始填寫MySQL數(shù)據(jù)庫和網(wǎng)站管理員信息。接下來配置數(shù)據(jù)庫服務(wù)器,web1和web2需要使用的是同一個(gè)數(shù)據(jù)庫,才能使得數(shù)據(jù)同步。9.3部署數(shù)據(jù)庫服務(wù)器安裝并啟動(dòng)MySQL連接數(shù)據(jù)庫[root@mysql~]#lsmysql80-community-release-el7-3.noarch.rpm[root@mysql~]#rpm-ivhmysql80-community-release-el7-3.noarch.rpmwarning:mysql80-community-release-el7-3.noarch.rpm:HeaderV3DSA/SHA1Preparing...#################################Updating/installing...1:mysql80-community-release-el7-3#################################9.3

部署數(shù)據(jù)庫服務(wù)器1.首先,卸載系統(tǒng)自動(dòng)安裝的MariaDB。#查看已安裝的MariaDB[root@mysql~]#rpm-qa|grepmariadbmariadb-libs-5.5.65-1.el7.x86_64#強(qiáng)制刪除MariaDB[root@mysql~]#rpm-e--nodepsmariadb-libs-5.5.65-1.el7.x86_64[root@mysql~]#rpm-qa|grepmariadb2.使用wget命令下載MySQLRPM包。[root@mysql~]#wget/get/mysql80-community-release-el7-3.noarch.rpm3.此時(shí)再使用RPM工具將該鏡像包解析并更新至本機(jī)的鏡像源中。下載完成后,輸入ls即可看到下載完成的MySQL鏡像包。9.3

部署數(shù)據(jù)庫服務(wù)器4.當(dāng)官方源配置完成,服務(wù)器就可以使用Yum進(jìn)行安裝并使用該軟件。下載Yum管理工具包。[root@mysql~]#yum-yinstallyum-utils5.下載完成后使用yum-config-manager命令關(guān)閉MySQL8.0版本,并開啟MySQL5.7版本。[root@mysql~]#yum-config-manager--disablemysql80-community[root@mysql~]#yum-config-manager--enablemysql57-community6.使用Yum命令下載并安裝MySQL。[root@mysql~]#yum-yinstallmysql-community-server--nogpgcheck……省略安裝過程……已安裝:mysql-community-server.x86_640:5.7.38-1.el7完畢!9.3

部署數(shù)據(jù)庫服務(wù)器7.啟動(dòng)MySQL,并設(shè)置為開機(jī)自啟。[root@mysql~]#systemctlstartmysqld[root@mysql~]#systemctlenablemysqld8.查看root用戶被授予的臨時(shí)密碼。[root@mysql~]#grep"Atemporarypassword"/var/log/mysqld.log2022-06-08T06:33:34.949805Z1[Note]Atemporarypasswordisgeneratedforroot@localhost:a_g7Rd:fqUa&綜上所述,MySQL已經(jīng)安裝并啟動(dòng)完成。MySQL的臨時(shí)登錄密碼為a_g7Rd:fqUa&(隨機(jī))。9.3

部署數(shù)據(jù)庫服務(wù)器9.登錄數(shù)據(jù)庫修改密碼,創(chuàng)建數(shù)據(jù)庫用戶,并授予相關(guān)權(quán)限。[root@mysql~]#mysql-uroot-p'a_g7Rd:fqUa&'……省略安裝過程……#修改MySQL登錄密碼mysql>ALTERUSER'root'@'localhost'IDENTIFIEDWITHmysql_native_passwordBY'qf@123.coM';QueryOK,0rowsaffected(0.00sec)#授予web服務(wù)器權(quán)限mysql>grantallon*.*toroot@'192.168.1.%'identifiedby'qf@123;.coM';QueryOK,0rowsaffected,1warning(0.00sec)#創(chuàng)建數(shù)據(jù)庫用戶qianfengmysql>createuserqianfeng@'%'identifiedby'qf@123.coM';QueryOK,0rowsaffected(0.06sec)#授予權(quán)限mysql>grantallon*.*to'qianfeng'@'%';QueryOK,0rowsaffected(0.00sec)#允許遠(yuǎn)程登錄mysql>usemysqlDatabasechangedmysql>updateusersethost='%'whereuser='qianfeng';QueryOK,0rowsaffected(0.00sec)Rowsmatched:0Changed:0Warnings:0#刷新mysql>flushprivileges;QueryOK,0rowsaffected(0.00sec)新建數(shù)據(jù)庫用戶為qianfeng,登錄密碼為“qf@123.coM”。9.3

部署數(shù)據(jù)庫服務(wù)器10.初始化數(shù)據(jù)庫之后,在網(wǎng)站根目錄下編寫test.php文件,測試網(wǎng)站是否能與數(shù)據(jù)庫連通。若可以成功連接則返回Successfullyconnected,否則返回Fail。[root@web1~]#cat/webdir/RPCMS-master/connect.php<?php$link=mysqli_connect('7','qianfeng','qf@123.coM');if($link)echo"Successfullyconnected";elseecho"Fail";mysql_close();?>11.編寫完成后,在瀏覽器中訪問connect.php。PHP7.0版本開始廢除mysql_connect()函數(shù),使用mysqli_connet()函數(shù)代替。當(dāng)前網(wǎng)站與數(shù)據(jù)庫交互成功,分離式LNMP環(huán)境搭建完成。9.3

部署數(shù)據(jù)庫服務(wù)器12.為內(nèi)容管理系統(tǒng)創(chuàng)建數(shù)據(jù)庫rpcms,并授予qianfeng用戶管理該數(shù)據(jù)庫的權(quán)限。#創(chuàng)建rpcms數(shù)據(jù)庫mysql>createdatabaserpcms;QueryOK,1rowaffected(0.00sec)mysql>showdatabases;++|Database|++|information_schema||mysql||performance_schema||rpcms||sys|++5rowsinset(0.00sec)#授予qianfeng管理數(shù)據(jù)庫的權(quán)限mysql>grantallon*.*to'qianfeng'@'%';QueryOK,0rowsaffected(0.00sec)#刷新mysql>flushprivileges;QueryOK,0rowsaffected(0.00sec)9.3

部署數(shù)據(jù)庫服務(wù)器13.數(shù)據(jù)庫服務(wù)器配置完成后,開始填寫MySQL數(shù)據(jù)庫和網(wǎng)站管理員信息。需要注意數(shù)據(jù)庫的信息要填寫之前設(shè)置的用戶及密碼,必須保證圖9.9填寫信息的真實(shí)性,否則無法連接到數(shù)據(jù)庫。填寫完成后,單擊“下一步”按鈕,即可開始安裝14.安裝成功頁面。至此,內(nèi)容管理網(wǎng)站安裝完成,單擊“訪問后臺”按鈕9.3

部署數(shù)據(jù)庫服務(wù)器15.輸入網(wǎng)站管理員信息,即可登錄網(wǎng)站。單擊“登錄”按鈕。16.進(jìn)入網(wǎng)站管理后臺。9.3

部署數(shù)據(jù)庫服務(wù)器17.將web1的/webdir/目錄拷貝給web2,使得Web集群將數(shù)據(jù)存儲(chǔ)到同一個(gè)數(shù)據(jù)庫中。[root@web1~]#scp-r/webdir/root@web2:/18.將web1的網(wǎng)站配置文件拷貝給web2。[root@web1RPCMS-master]#scp-r/etc/nginx/conf.d/rpcms.confroot@web2:/etc/nginx/conf.d/root@web2'spassword:rpcms.conf100%7633.4MB/s00:0019.web2若沒有www用戶,則需要?jiǎng)?chuàng)建www用戶和組。[root@web1~]#idwwwid:www:nosuchuser[root@web1~]#groupaddwww[root@web1~]#useradd-gwww-s/sbin/nologinwww[root@web1RPCMS-master]#idwwwuid=1000(www)gid=1000(www)組=1000(www)9.3

部署數(shù)據(jù)庫服務(wù)器20.修改web2網(wǎng)站目錄下data、plugin、templates/index和upload文件的屬主和屬組為www。[root@web1~]#cd/webdir/RPCMS-master/[root@web1RPCMS-master]#lsconfig.phpfavicon.icopluginroute.phpsystemuploadsdataindex.phpREADME.mdstatictemplates[root@web1RPCMS-master]#chownwwwdata/[root@web1RPCMS-master]#chownwwwplugin/[root@web1RPCMS-master]#chownwwwtemplates/index/[root@web1RPCMS-master]#chownwwwuploads/21.修改網(wǎng)站目錄的權(quán)限。[root@web1RPCMS-master]#chmod777-R/webdir/RPCMS-master/*9.3

部署數(shù)據(jù)庫服務(wù)器22.重啟web2服務(wù)器的Nginx,然后訪問web2的IP地址,會(huì)直接訪問到網(wǎng)站首頁。web集群已經(jīng)成功上線網(wǎng)站業(yè)務(wù)。9.4共享存儲(chǔ)配置NFS服務(wù)配置Web集群測試共享數(shù)據(jù)在Web服務(wù)器成功上線網(wǎng)站系統(tǒng)后,所有的資源都存儲(chǔ)于Web服務(wù)器及其連接的第三方數(shù)據(jù)庫中。將Web服務(wù)器中的靜態(tài)資源文件通過NFS共享至Web服務(wù)器,搭建共享存儲(chǔ)服務(wù)器,配置NFS,讓W(xué)eb集群讀寫數(shù)據(jù)都從NFS掛載。9.4

共享存儲(chǔ)9.4

共享存儲(chǔ)9.4.1

配置NFS服務(wù)1.首先在NFS服務(wù)器中下載并安裝NFS,啟動(dòng)該項(xiàng)服務(wù),并設(shè)置其開機(jī)自啟。[root@nfs~]#yum-yinstallnfs-utilsrpcbind……省略安裝過程……Installed:nfs-utils.x86_641:1.3.0-0.68.el7.2rpcbind.x86_640:0.2.0-49.el7[root@nfs~]#systemctlstartnfs-server[root@nfs~]#systemctlenablenfs-server[root@nfs~]#systemctlstartrpcbind[root@nfs~]#systemctlenablerpcbind2.設(shè)置完成后,新建商城網(wǎng)站存放目錄/leadshop/web,用于接收Web服務(wù)器上安裝完成的論壇網(wǎng)站數(shù)據(jù)。[root@nfs~]#mkdir-p/webdir/RPCMS-master/uploads[root@nfs~]#mkdir-p/webdir/RPCMS-master/static9.4

共享存儲(chǔ)9.4.1

配置NFS服務(wù)3.內(nèi)容管理系統(tǒng)的uploads目錄和static目錄存儲(chǔ)靜態(tài)資源,故需設(shè)置這兩個(gè)目錄為共享目錄即可,共享對象為Web集群。[root@nfs~]#vim/etc/exports/webdir/RPCMS-master/uploads/24(rw,all_squash,anonuid=0,insecure)/webdir/RPCMS-master/static//24(rw,all_squash,anonuid=0,insecure)創(chuàng)建完成后,編輯/etc/exports文件,設(shè)置服務(wù)器共享規(guī)則。本項(xiàng)目中的web1和web2在同一網(wǎng)段,客戶端地址寫其所在的網(wǎng)段即可。9.4

共享存儲(chǔ)9.4.1

配置NFS服務(wù)4.一般修改NFS配置文檔后,無需重啟NFS,直接執(zhí)行exportfs-rv命令即可使修改的/etc/exports生效。[root@nfsRPCMS-master]#exportfs-rvexporting/24:/webdir/RPCMS-master/staticexporting/24:/webdir/RPCMS-master/uploads9.4

共享存儲(chǔ)9.4.2

配置Web集群1.首先將Web服務(wù)器中的靜態(tài)數(shù)據(jù)發(fā)送至NFS服務(wù)器一份,使得NFS服務(wù)器存有相關(guān)數(shù)據(jù)。[root@web1~]#scp-r/webdir/RPCMS-master/uploads/*root@nfs:/webdir/RPCMS-master/uploads/[root@web1~]#scp-r/webdir/RPCMS-master/static/*root@nfs:/webdir/RPCMS-master/static/2.在Web服務(wù)器中下載并安裝NFS服務(wù),啟動(dòng)該項(xiàng)服務(wù),并設(shè)置其開機(jī)自啟。#web1[root@web1~]#yum-yinstallnfs-utilsrpcbind[root@web1~]#systemctlstartnfs[root@web1~]#systemctlstartrpcbind[root@web1~]#systemctlenablenfs[root@web1~]#systemctlenablerpcbind#web2[root@web2~]#yum-yinstallnfs-utilsrpcbind[root@web2~]#systemctlstartnfs[root@web2~]#systemctlstartrpcbind[root@web2~]#systemctlenablenfs[root@web2~]#systemctlenablerpcbind9.4

共享存儲(chǔ)9.4.2

配置Web集群3.設(shè)置完成后,查看NFS服務(wù)器共享出來的目錄。[root@nfs~]#showmount-enfsExportlistfornfs:/webdir/RPCMS-master/static/24/webdir/RPCMS-master/uploads/244.繼續(xù)在Web服務(wù)器上掛載共享目錄。#web1[root@web1~]#mountnfs:/webdir/RPCMS-master/static/webdir/RPCMS-master/static[root@web1~]#mountnfs:/webdir/RPCMS-master/uploads/webdir/RPCMS-master/uploads#web2[root@web2~]#mountnfs:/webdir/RPCMS-master/static/webdir/RPCMS-master/static[root@web2~]#mountnfs:/webdir/RPCMS-master/uploads/webdir/RPCMS-master/uploads當(dāng)前可用的共享文件目錄/webdir/RPCMS-master/static和/webdir/RPCMS-master/uploads。9.4

共享存儲(chǔ)9.4.2

配置Web集群5.需要注意,直接用mount方式進(jìn)行掛載,重啟后就會(huì)失效。一般企業(yè)工作中推薦使用配置文件的方式,使其開機(jī)自動(dòng)掛載,編輯/etc/fstab文件,編輯掛載命令后保存即可。#web1[root@web1~]#vim/etc/fstabnfs:/webdir/RPCMS-master/uploads/webdir/RPCMS-master/uploadsnfsdefaults00nfs:/webdir/RPCMS-master/static/webdir/RPCMS-master/staticnfsdefaults00#web2[root@web2~]#vim/etc/fstabnfs:/webdir/RPCMS-master/uploads/webdir/RPCMS-master/uploadsnfsdefaults00nfs:/webdir/RPCMS-master/static/webdir/RPCMS-master/staticnfsdefaults006.配置完成后,輸入mount-a使/etc/fstab中的內(nèi)容重新加載,自動(dòng)掛載共享目錄。[root@web1~]#mount-a[root@web2~]#mount-a9.4

共享存儲(chǔ)9.4.2

配置Web集群7.配置完成后,查看動(dòng)態(tài)Web服務(wù)器的掛載信息。[root@web1~]#df-h文件系統(tǒng)容量已用可用已用%掛載點(diǎn)devtmpfs3.9G03.9G0%/devtmpfs3.9G03.9G0%/dev/shmtmpfs3.9G8.6M3.9G1%/runtmpfs3.9G03.9G0%/sys/fs/cgroup/dev/vda236G3.3G31G10%/tmpfs783M0783M0%/run/user/0nfs:/webdir/RPCMS-master/static36G2.4G32G7%/webdir/RPCMS-master/staticnfs:/webdir/RPCMS-master/uploads36G2.4G32G7%/webdir/RPCMS-master/uploads[root@web2~]#df-h文件系統(tǒng)容量已用可用已用%掛載點(diǎn)devtmpfs3.9G03.9G0%/devtmpfs3.9G03.9G0%/dev/shmtmpfs3.9G17M3.9G1%/runtmpfs3.9G03.9G0%/sys/fs/cgroup/dev/vda236G3.3G31G10%/tmpfs783M0783M0%/run/user/0nfs:/webdir/RPCMS-master/static36G2.4G32G8%/webdir/RPCMS-master/staticnfs:/webdir/RPCMS-master/uploads36G2.4G32G8%/webdir/RPCMS-master/uploads通過系統(tǒng)的反饋信息可以看到,目標(biāo)目錄均已成功掛載。9.4

共享存儲(chǔ)9.4.3

測試共享數(shù)據(jù)1.資源共享部署完成后,測試靜態(tài)文件能不能在各Web服務(wù)器之間達(dá)成共享。首先在NFS服務(wù)器的網(wǎng)站靜態(tài)資源文件夾中編寫測試文件test.html。[root@nfs~]#vim/webdir/RPCMS-master/static/test.htmlNFS共享存儲(chǔ)測試頁面!2.測試頁面創(chuàng)建完成后,NFS服務(wù)器現(xiàn)已存有相關(guān)數(shù)據(jù),在Web服務(wù)器端對該資源進(jìn)行訪問。瀏覽器訪問web1的IP,訪問界面如圖。3.瀏覽器訪問web2的測試頁面,訪問界面如圖。由此可以看出,盡管文件只在NFS服務(wù)器中進(jìn)行寫入,但因?yàn)椴煌腤eb服務(wù)器之間對靜態(tài)資源文件夾進(jìn)行共享,共享系統(tǒng)中的動(dòng)態(tài)Web服務(wù)器也可以直接獲取共享文件夾內(nèi)的資源,返回給用戶,資源共享配置成功。9.4

共享存儲(chǔ)9.4.3

測試共享數(shù)據(jù)4.登錄內(nèi)容管理網(wǎng)站后臺,發(fā)布一篇文章,上傳一張圖片。同理,若用戶與Web服務(wù)器進(jìn)行交互,產(chǎn)生的動(dòng)態(tài)數(shù)據(jù)將寫入數(shù)據(jù)庫,靜態(tài)數(shù)據(jù)將寫入共享的靜態(tài)文件夾,兩臺Web服務(wù)器都可以訪問。單擊“發(fā)布文章”按鈕,則成功創(chuàng)建了靜態(tài)文件,可通過單擊“文章”選項(xiàng)欄查看已發(fā)布的文章。9.4

共享存儲(chǔ)9.4.3

測試共享數(shù)據(jù)5.網(wǎng)頁上傳的文件則保存至網(wǎng)站根目錄下的uploads目錄中,查看Web服務(wù)器的uploads目錄中的圖片。#web1[root@web1~]#tree-L3/webdir/RPCMS-master/uploads/webdir/RPCMS-master/uploads├──202206│

├──1654745802111372.png│

└──thum-1654745802111372.png└──index.html1directory,3files#web2[root@web2~]#tree-L3/webdir/RPCMS-master/uploads/webdir/RPCMS-master/uploads├──202206│

├──1654745802111372.png│

└──thum-1654745802111372.png└──index.html1directory,3files9.4

共享存儲(chǔ)9.4.3

測試共享數(shù)據(jù)6.查看NFS共享存儲(chǔ)服務(wù)器中是否同步數(shù)據(jù)。[root@nfs~]#ls/webdir/RPCMS-master/uploads/202206index.html[root@nfs~]#ls/webdir/RPCMS-master/uploads/202206/1654745802111372.pngthum-1654745802111372.pngNFS共享存儲(chǔ)服務(wù)器部署成功。9.5共享存儲(chǔ)實(shí)時(shí)備份部署Rsync服務(wù)端—backup備份服務(wù)器部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器若保證用戶的重要的數(shù)據(jù)不丟失,且數(shù)據(jù)一有變化就備份到備份服務(wù)器上,是非常重要的一步。NFS作為Web服務(wù)器的共享存儲(chǔ),就需要將存儲(chǔ)的數(shù)據(jù)同步到備份服務(wù)器上,實(shí)現(xiàn)文件的同步備份。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.1

部署Rsync服務(wù)端—backup備份服務(wù)器1.首先查看備份主機(jī)是否安裝了rsync工具。[root@backup~]#rpm-qa|grep"rsync"2.安裝rsync服務(wù)。[root@backup~]#yum-yinstallrsync[root@backup~]#rpm-qa|grep"rsync"rsync-3.1.2-10.el7.x86_643.修改/etc/rsyncd.conf配置文件,添加webdir模塊,模塊名可根據(jù)NFS服務(wù)端的備份目錄自定義。[root@backup~]#cat/etc/rsyncd.conf#/etc/rsyncd:configurationfileforrsyncdaemonmode#Seersyncd.confmanpageformoreoptions.#configurationexample:uid=rsyncgid=rsyncusechroot=nomaxconnections=200pidfile=/var/run/rsyncd.pidlogfile=/var/log/rsync.log#exclude=lost+found/#transferlogging=yestimeout=300#ignorenonreadable=yes#dontcompress=*.gz*.tgz*.zip*.z*.Z*.rpm*.deb*.bz2ignoreerrorsreadonly=falselist=falsehostsallow=43/24#nfshostsdeny=/32authusers=rsync_backupsecretsfile=/etc/rsync.passwordfakesuper=yes#[ftp]#path=/home/ftp#comment=ftpexportarea[webdir]path=/webdir/9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.1

部署Rsync服務(wù)端—backup備份服務(wù)器4.創(chuàng)建rsync屬主和屬組。[root@backup~]#useradd-M-s/sbin/nologinrsync[root@backup~]#tail-1/etc/passwdrsync:x:1000:1000::/home/rsync:/sbin/nologin[root@backup~]#idrsyncuid=1000(rsync)gid=1000(rsync)組=1000(rsync)5.根據(jù)對配置文件的新模塊的描述,創(chuàng)建相應(yīng)目錄。[root@backup~]#mkdir-p/webdir/6.設(shè)置目錄的屬主和屬組,使得rsync客戶端通過用戶連接時(shí)對備份目錄獲得相關(guān)權(quán)限。[root@backup~]#chown-Rrsync.rsync/webdir/[root@backup~]#ll-d/webdir/drwxr-xr-x2rsyncrsync40966月910:24/webdir/9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.1

部署Rsync服務(wù)端—backup備份服務(wù)器7.啟動(dòng)rsync服務(wù),并且設(shè)置開機(jī)自啟。[root@backup~]#systemctlstartrsyncd[root@backup~]#systemctlenablersyncd[root@backup~]#systemctlstatusrsyncd

……Active:active(running)since四2022-06-0910:41:01CST;13sago

……8.將虛擬用戶及密碼寫入密碼配置文件。[root@backup~]#echo"rsync_backup:123456">/etc/rsync.password9.為提高密碼安全性,修改密碼文件的權(quán)限。[root@backup~]#ll/etc/rsync.password-rw-r--r--1rootroot206月910:43/etc/rsync.password[root@backup~]#chmod600/etc/rsync.password[root@backup~]#ll/etc/rsync.password-rw1rootroot202月2115:23/etc/rsync.password9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(1)查看nfs主機(jī)是否安裝了rsync工具。[root@nfs~]#rpm-qa|grep"rsync"(2)安裝rsync服務(wù)。[root@nfs~]#yum-yinstallrsync[root@nfs~]#rpm-qa|grep"rsync"rsync-3.1.2-10.el7.x86_64(3)添加虛擬用戶的密碼文件,只寫入密碼即可。[root@nfs~]#echo"123456">/etc/rsync.password1.實(shí)現(xiàn)rsync數(shù)據(jù)推送(4)更改密碼文件的權(quán)限,以提高安全性。[root@nfs~]#chmod600/etc/rsync.password[root@nfs~]#ll-d/etc/rsync.password-rw1rootroot76月910:46/etc/rsync.password9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(5)使用push推送需備份的靜態(tài)資源文件,即在nfs主機(jī)中將指定的目錄內(nèi)容推送到rsync服務(wù)端指定目錄下。[root@nfs~]#rsync-avH--port=873--progress/webdir/*rsync_backup@25::webdir/--password-file=/etc/rsync.password……省略傳輸過程……sent6,884,841bytesreceived6,227bytes13,782,136.00bytes/sectotalsizeis6,861,649speedupis1.001.實(shí)現(xiàn)rsync數(shù)據(jù)推送Rsync同步包括兩種方式,push推送和pull拉取。文件備份成功。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(6)查看備份服務(wù)器的備份目錄。[root@backup~]#tree-L3/webdir//webdir/└──RPCMS-master├──a.test├──b.test├──static│

├──css│

├──editor│

├──font│

├──images│

├──js│

└──test.html└──uploads├──202206└──index.html9directories,4files1.實(shí)現(xiàn)rsync數(shù)據(jù)推送nfs主機(jī)完成推送數(shù)據(jù)至備份服務(wù)器。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(1)首先查看當(dāng)前系統(tǒng)是否支持inotify。[root@nfs~]#uname-r3.10.0-957.el7.x86_64[root@nfs~]#ls-l/proc/sys/fs/inotify/總用量0-rw-r--r--1rootroot06月913:50max_queued_events-rw-r--r--1rootroot06月913:50max_user_instances-rw-r--r--1rootroot06月913:50max_user_watches2.安裝Inotify插件-rsync客戶端rsync不能實(shí)時(shí)監(jiān)測和同步數(shù)據(jù),為了使服務(wù)端和客戶端數(shù)據(jù)保持一致,以及在應(yīng)用故障時(shí)完全恢復(fù)數(shù)據(jù),可以使用rsync+inotify插件解決,然后通過寫入腳本實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)同步。出現(xiàn)了3個(gè)文件則表示支持inotify。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器2.安裝Inotify插件-rsync客戶端(2)查看是否安裝了inotify軟件,如果沒有,則安裝inotify軟件。[root@nfs~]#rpm-qainotify-tools[root@nfs~]#yum-yinstallepel-release[root@nfs~]#yum-yinstallinotify-tools……部分步驟已省略……已安裝:inotify-tools.x86_640:3.14-9.el7

完畢!(3)開啟兩個(gè)nfs窗口用于測試inotify插件的監(jiān)控功能是否正常開啟。①第一個(gè)窗口使用inotifywait命令監(jiān)控/webdir目錄的創(chuàng)建文件。[root@nfs~]#inotifywait-mrq--timefmt'%y/%m/%d%H:%M'--format'%T%w%f'-ecreate/webdir9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器2.安裝Inotify插件-rsync客戶端(3)-②第二個(gè)窗口在/webdir目錄中創(chuàng)建文件,以觸發(fā)inotify的監(jiān)控功能。#查看已有文件[root@nfs~]#ls/webdir/RPCMS-master#創(chuàng)建測試文件[root@nfs~]#touch/webdir/{1,2,3}.test.file[root@nfs~]#ls/webdir/1.test.file2.test.file3.test.fileRPCMS-master(3)-③回到窗口1觀察監(jiān)控創(chuàng)建create事件會(huì)有什么變化。[root@nfs~]#inotifywait-mrq--timefmt'%y/%m/%d%H:%M'--format'%T%w%f'-ecreate/webdir22/06/0914:24/webdir/1.test.file22/06/0914:24/webdir/2.test.file22/06/0914:24/webdir/3.test.fileinotify插件的監(jiān)控功能正常。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(4)將rsync和inotify實(shí)現(xiàn)的功能寫入腳本中。[root@nfs~]#cat/real_time_backup.sh#!/bin/bashwhile:dosrcdir=/webdirinotifywait-rq--timefmt'%d/%m/%y-%H:%M'--format'%T%w%f'-emodify,create,attrib,delete,move${srcdir}\|whilereadfiledoecho"${file}isnotified!"rsync-aH--port=873--progress/webdir/*rsync_backup@25::webdir/--password-file=/etc/rsync.passworddonedone2.安裝Inotify插件-rsync客戶端開啟兩個(gè)nfs主機(jī)窗口用于測試實(shí)時(shí)同步數(shù)據(jù)備份,然后在備份服務(wù)器查看數(shù)據(jù)是否推送備份成功。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(5)首先在nfs主機(jī)窗口1,執(zhí)行上述腳本。[root@nfs~]#bashrsync_test_1.sh(6)在nfs主機(jī)窗口2,在需要備份的目錄創(chuàng)建文件。#已有文件[root@nfs~]#ls/webdir/RPCMS-master/staticuploads#創(chuàng)建新的測試文件[root@nfs~]#touch/webdir/RPCMS-master/{a,b}.test[root@nfs~]#ls/webdir/RPCMS-master/a.testb.teststaticuploads2.安裝Inotify插件-rsync客戶端9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(7)返回窗口1觀察。[root@nfs~]#bash/real_time_backup.sh09/06/22-14:50/webdir/RPCMS-master/a.testisnotified!sendingincrementalfilelistRPCMS-master/RPCMS-master/a.test0100%0.00kB/s0:00:00(xfr#1,to-chk=366/368)RPCMS-master/b.test0100%0.00kB/s0:00:00(xfr#2,to-chk=365/368)2.安裝Inotify插件-rsync客戶端數(shù)據(jù)顯示已經(jīng)傳到備份服務(wù)器。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(8)為了進(jìn)一步驗(yàn)證,查看備份機(jī)的備份目錄。[root@backup~]#tree-L3/webdir//webdir/├──1.test.file├──2.test.file├──3.test.file└──RPCMS-master├──a.test├──b.test├──static│

├──css│

├──editor│

├──font│

├──images│

├──js│

└──test.html└──uploads├──202206└──index.html9directories,7files2.安裝Inotify插件-rsync客戶端NFS共享數(shù)據(jù)的實(shí)時(shí)同步推送備份成功實(shí)現(xiàn)。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器①將(腳本)啟動(dòng)文件移動(dòng)到/etc/init.d/或者/etc/rc.d/init.d/目錄下。[root@nfs~]#mv/real_time_backup.sh/etc/init.d/2.安裝Inotify插件-rsync客戶端(9)該腳本需要在系統(tǒng)啟動(dòng)時(shí)自動(dòng)執(zhí)行,開機(jī)腳本自動(dòng)執(zhí)行的方式有多種,讀者可任選一種方式進(jìn)行配置。在此,通過chkconfig命令設(shè)置腳本開機(jī)自動(dòng)執(zhí)行,步驟如下。②啟動(dòng)文件前面務(wù)必添加如下3行代碼,否則會(huì)提示chkconfig不支持。#!/bin/sh:表示系統(tǒng)使用的shell,所有的shell腳本都是這樣。#chkconfig:例“#chkconfig:352080”分別代表運(yùn)行級別,啟動(dòng)優(yōu)先權(quán),關(guān)閉優(yōu)先權(quán),此行代碼必須存在。#description:自定義描述。9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(9)-②腳本文件。[root@nfs~]#cat/etc/init.d/real_time_backup.sh#!/bin/bash#chkconfig:352080#description:httpserverwhile:dosrcdir=/webdirinotifywait-rq--timefmt'%d/%m/%y-%H:%M'--format'%T%w%f'-emodify,create,attrib,delete,move${srcdir}\|whilereadfiledoecho"${file}isnotified!"rsync-aH--port=873--progress/webdir/*rsync_backup@25::webdir/--password-file=/etc/rsync.passworddonedone2.安裝Inotify插件-rsync客戶端9.5

共享存儲(chǔ)實(shí)時(shí)備份9.5.2

部署Rsync客戶端—nfs存儲(chǔ)服務(wù)器(9)-③設(shè)置腳本的可執(zhí)行權(quán)限。[root@nfs~]#chmod+x/etc/init.d/real_time_backup.sh2.安

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論