• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Linux系統(tǒng)下web服務(wù)雙機(jī)熱備系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      2014-04-07 22:06:57顧躍舉
      關(guān)鍵詞:備份文件熱備雙機(jī)

      顧躍舉

      (武警遼寧省總隊(duì),遼寧沈陽110034)

      Linux系統(tǒng)下web服務(wù)雙機(jī)熱備系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      顧躍舉

      (武警遼寧省總隊(duì),遼寧沈陽110034)

      充分利用linux系統(tǒng)所獨(dú)有的功能強(qiáng)大的網(wǎng)絡(luò)命令工具,編寫基于tomcat+db2的網(wǎng)站更新文件和數(shù)據(jù)庫(kù)文件自動(dòng)導(dǎo)出與導(dǎo)入腳本程序,配合系統(tǒng)定時(shí)器模擬心跳,實(shí)現(xiàn)基礎(chǔ)的雙機(jī)熱備功能。防止因硬件故障造成網(wǎng)站系統(tǒng)永久性的癱瘓,解決小企業(yè)無力購(gòu)買價(jià)格昂貴的雙機(jī)熱備軟件的難題。

      linux;雙機(jī)熱備;腳本程序

      雙機(jī)熱備一般指兩臺(tái)高可用服務(wù)器的熱備份,簡(jiǎn)稱雙機(jī)熱備,雙機(jī)高可用按工作中的切換方式分為:主-備方式(Active-Standby方式)和雙主機(jī)方式(Active-Active方式),主-備方式即指的是一臺(tái)服務(wù)器處于某種業(yè)務(wù)的激活狀態(tài)(即Active狀態(tài)),另一臺(tái)服務(wù)器處于該業(yè)務(wù)的備用狀態(tài)(即Standby狀態(tài))。而雙主機(jī)方式即指兩種不同業(yè)務(wù)分別在兩臺(tái)服務(wù)器上互為主備狀態(tài)(即Active-Standby和Standby-Active狀態(tài))。微軟將此功能加入到了windows2000server之后所有的服務(wù)器版本之中,命名為網(wǎng)絡(luò)負(fù)載均衡群集服務(wù)(nlb)。群集從切換方式來看為雙主機(jī)模式。即兩臺(tái)主機(jī)同時(shí)均可以接受訪問,根據(jù)訪問強(qiáng)度自動(dòng)分配負(fù)載,且互為備份。其最大支持8個(gè)負(fù)載均衡節(jié)點(diǎn)。有效解決了高可用系統(tǒng)熱備需求。但也有其局限性,即服務(wù)器所連接的交換機(jī)必須配置使能組播功能,即使多個(gè)mac地址(也就是多塊網(wǎng)卡)共享一個(gè)ip地址映射,而一些低端交換機(jī)卻無法提供此服務(wù),這就對(duì)軟件應(yīng)用造成了瓶頸。而linux系統(tǒng)據(jù)了解目前尚未出現(xiàn)系統(tǒng)自帶的簡(jiǎn)單易用的雙機(jī)熱備軟件,仍需第三方軟件來支持,如較為知名的rose軟件,不僅配置較為復(fù)雜,且系統(tǒng)硬件升級(jí)仍須交付軟件重新授權(quán)使用費(fèi)用,這是一般小公司所不希望開銷的費(fèi)用。本文以linux系統(tǒng)所自帶的網(wǎng)絡(luò)與系統(tǒng)命令工具為基礎(chǔ),編寫了簡(jiǎn)單易用的雙機(jī)熱備腳本程序,以解決上述難題。

      一、雙機(jī)熱備系統(tǒng)需求分析

      我單位門戶網(wǎng)站由java語言開發(fā),現(xiàn)部署在tomcat應(yīng)用服務(wù)環(huán)境下,后臺(tái)數(shù)據(jù)庫(kù)部署在db2數(shù)據(jù)庫(kù)管理系統(tǒng)中。由于此門戶網(wǎng)站既提供web服務(wù),又提供本單位的oa自動(dòng)化辦公服務(wù),其重要性、安全性與穩(wěn)定性要求非常高。為防止因停電、服務(wù)器硬盤老化壞損或其他無法預(yù)見因素帶來無法恢復(fù)的災(zāi)難性的影響,本文嘗試以兩臺(tái)服務(wù)器為基礎(chǔ),通過編寫雙機(jī)熱備腳本代碼程序,實(shí)現(xiàn)雙機(jī)熱備功能,工作方式為主-備方式。

      二、雙機(jī)熱備系統(tǒng)設(shè)計(jì)

      由于門戶網(wǎng)站服務(wù)器主要提供web與數(shù)據(jù)庫(kù)服務(wù),其他服務(wù)暫不予考慮。所以只要實(shí)現(xiàn)雙機(jī)上的web文件與數(shù)據(jù)庫(kù)自動(dòng)同步與高可用即可。以此為目的,設(shè)計(jì)基本思路為在主服務(wù)器上編寫數(shù)據(jù)庫(kù)導(dǎo)出腳本程序、網(wǎng)站新增文件備份腳本程序。依托l(wèi)inux系統(tǒng)的計(jì)劃任務(wù)crontab工具,實(shí)現(xiàn)每日增量文件自動(dòng)備份至ftp服務(wù)主目錄下的某特定文件夾,并設(shè)定網(wǎng)絡(luò)用戶的完全訪問權(quán)限,以供備份服務(wù)器訪問;在從服務(wù)器上編寫數(shù)據(jù)庫(kù)導(dǎo)入腳本程序、網(wǎng)站新增文件拷貝腳本程序。以計(jì)劃任務(wù)工具來模擬心跳,具體自動(dòng)備份更新的頻率可以設(shè)為每周、每日或每時(shí)。從服務(wù)器以主服務(wù)器所提供的網(wǎng)絡(luò)訪問用戶登錄ftp目錄,通過與本地文件的創(chuàng)建時(shí)間比對(duì),增量拷貝所需更新文件,導(dǎo)入db2數(shù)據(jù)庫(kù)文件,重新啟動(dòng)tomcat與db2應(yīng)用服務(wù)程序,完成數(shù)據(jù)的更新過程。

      (一)主服務(wù)器程序編寫

      首先在主服務(wù)器上創(chuàng)建遠(yuǎn)程ftp訪問用戶,設(shè)定遠(yuǎn)程訪問主目錄,創(chuàng)建系統(tǒng)備份文件夾,而后編寫web文件與數(shù)據(jù)庫(kù)文件自動(dòng)備份腳本程序代碼,配置計(jì)劃任務(wù),完成系統(tǒng)的數(shù)據(jù)備份工作。具體實(shí)現(xiàn)過程如下:

      [root@localhost]service vsftpd start#開啟linux的ftp服務(wù)

      [root@localhost]useradd–d/home/backupuser–m backupuser#創(chuàng)建遠(yuǎn)程訪問用戶并配置用戶登錄目錄

      [root@localhost]passwdbackupuser#設(shè)置用戶登錄密碼

      [root@localhost]cd/home/backupuser

      [root@localhost]mkdir backup#創(chuàng)建系統(tǒng)備份文件夾

      [root@localhost]cd backup

      [root@localhost]mkdirdatabak#創(chuàng)建數(shù)據(jù)庫(kù)備份文件夾

      [root@localhost]cd..

      [root@localhost]mkdirnewsbak#創(chuàng)建新聞備份文件夾

      [root@localhost]cd/usr/local

      [root@localhost]vibackup.sh#編寫備份腳本程序#!/bin/sh

      Date=’date+%y%m%d’#設(shè)定以日期命名的文件名變量

      find/usr/local/tomcat/webapps/ROOT/news-name" ${Date}*"-exec cp{}/home/backupuser/backup/newsbak #查找文件名并拷貝至備份文件夾中

      su-db2inst1#切換至數(shù)據(jù)庫(kù)管理員用戶

      cd/home/backupuser/backup/databak#進(jìn)入數(shù)據(jù)庫(kù)備份文件夾

      db2move OA export#導(dǎo)出數(shù)據(jù)庫(kù)數(shù)據(jù)到此文件夾

      [root@localhost]crontab-e 012***/usr/local/backup.sh–r#每日12點(diǎn)整執(zhí)行備份程序至此,主服務(wù)器備份過程配置完成。

      (二)從服務(wù)器程序編寫

      基本過程與主服務(wù)器配置雷同,首先要建立文件拷貝的目錄,通過wget網(wǎng)絡(luò)命令比對(duì)文件創(chuàng)建時(shí)間完成文件增量更新,導(dǎo)入數(shù)據(jù)庫(kù),最后重啟系統(tǒng)服務(wù)完成系統(tǒng)更新操作。具體實(shí)現(xiàn)過程如下:

      [root@localhost]vi/usr/local/restore.sh#編寫系統(tǒng)更新腳本程序

      cd/usr/local/tomcat/webapps/ROOT/news

      wget–nc–nH–r–np–c ftp://backupuser:backupuser@192.168.1.2/backup/*#拷貝比本目錄下更新的文件

      su db2inst1

      cddatabak

      db2move OA import#完成數(shù)據(jù)庫(kù)導(dǎo)入

      db2stop force

      db2start#數(shù)據(jù)庫(kù)重啟

      exit

      ./usr/local/tomcat/bin/shutdown.sh

      ./usr/local/tomcat/bin/startup.sh#重啟tomcat網(wǎng)頁(yè)服務(wù)[root@localhost]crontab-e

      1012***/usr/local/restore.sh–r#每日12點(diǎn)10分執(zhí)行更新程序

      至此,從服務(wù)器更新過程配置完成。

      三、系統(tǒng)延伸設(shè)計(jì)

      主服務(wù)器每日12點(diǎn)開始自動(dòng)將增量數(shù)據(jù)備份至備份文件夾,從服務(wù)器每日12點(diǎn)10分開始自動(dòng)將增量數(shù)據(jù)更新至從服務(wù)器。實(shí)現(xiàn)雙機(jī)熱備的主從工作模式。那么如何能夠讓系統(tǒng)自動(dòng)檢測(cè)故障出現(xiàn)時(shí)間,讓從服務(wù)器及時(shí)替換主服務(wù)器進(jìn)行工作呢?同樣,我們可以利用計(jì)劃任務(wù)模擬心跳,進(jìn)行對(duì)主服務(wù)器的ping操作。如果不能連通,則修改本機(jī)ip地址為主服務(wù)器ip地址,重啟網(wǎng)絡(luò)服務(wù),實(shí)現(xiàn)無人值守的自動(dòng)災(zāi)難恢復(fù)。具體實(shí)現(xiàn)過程如下:

      [root@localhost]vi/usr/local/ping.sh#創(chuàng)建與主服務(wù)器的連通性測(cè)試腳本程序if[“$?”–ne“0”];#如果輸出結(jié)果不等于0則視為不通

      then ifconfig eth0 192.168.1.1#修改本機(jī)網(wǎng)卡ip地址為主服務(wù)器地址

      service netword restart#重起網(wǎng)絡(luò)服務(wù)

      fi

      同樣,再利用計(jì)劃任務(wù)設(shè)置每10分鐘進(jìn)行一次連通性測(cè)試,以保證web服務(wù)的不間斷運(yùn)行。

      [root@localhost]crontab-e 10****/usr/local/ping. sh–r#每10分中執(zhí)行連通性測(cè)試程序或者,也可以將系統(tǒng)的更新程序添加到連通性測(cè)試程序后面,以保證替換的系統(tǒng)能夠保持最新的系統(tǒng)數(shù)據(jù)。

      如果單位資金條件允許,也可以購(gòu)買網(wǎng)絡(luò)存儲(chǔ)設(shè)備,就可以將網(wǎng)站與數(shù)據(jù)庫(kù)資源單獨(dú)存儲(chǔ)在網(wǎng)絡(luò)存儲(chǔ)的磁盤空間中,這時(shí)如果當(dāng)主服務(wù)器出現(xiàn)中斷,可以隨時(shí)將網(wǎng)站與數(shù)據(jù)庫(kù)資源原原本本的移植到從服務(wù)器中,將數(shù)據(jù)損失風(fēng)險(xiǎn)歸零,且能夠保障網(wǎng)絡(luò)服務(wù)的不間斷運(yùn)行。

      [1]劉曉潔,黃永佳.基于Linux的雙機(jī)熱備系統(tǒng)的實(shí)現(xiàn)技術(shù)[J].計(jì)算機(jī)應(yīng)用研究,2007,24(4).

      [2]張立航,陳大勇.基于Linux的雙機(jī)熱備系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)安全,2011,(10).

      [3]張永立,胡杰,張根寶.Linux集群心跳檢測(cè)方法的研究與實(shí)現(xiàn)[J].化工自動(dòng)化及儀表,2010,37(6).

      編輯∕高偉

      顧躍舉(1982-),男,遼寧遼陽人,現(xiàn)為武警遼寧省總隊(duì)助理工程師,主要研究方向:為計(jì)算機(jī)系統(tǒng)應(yīng)用與維護(hù)。

      猜你喜歡
      備份文件熱備雙機(jī)
      文件智能備份好助手
      熱備動(dòng)車組配置方案優(yōu)化模型
      東海區(qū)實(shí)時(shí)海洋觀測(cè)數(shù)據(jù)庫(kù)雙機(jī)熱備系統(tǒng)解決方案
      繼電保護(hù)裝置意外掉電的保護(hù)措施研究
      雙機(jī)、雙槳軸系下水前的安裝工藝
      iPhone備份文件加密模式及安全性研究
      雙機(jī)牽引ZDJ9道岔不同步問題的處理
      Loader軸在雙機(jī)桁架機(jī)械手上的應(yīng)用
      青海廣播電視大學(xué)校園網(wǎng)升級(jí)改造探討
      熱備冗余技術(shù)在焦化設(shè)備上的應(yīng)用
      河南科技(2014年22期)2014-02-27 14:18:13
      两当县| 乐陵市| 吴旗县| 行唐县| 宁明县| 河池市| 峨眉山市| 通渭县| 大姚县| 巴林左旗| 平泉县| 伊宁县| 乌兰察布市| 九龙城区| 连云港市| 佳木斯市| 霍山县| 武平县| 都匀市| 唐山市| 新源县| 开平市| 温州市| 华坪县| 郓城县| 永寿县| 克什克腾旗| 米易县| 香港 | 五指山市| 泉州市| 兰州市| 甘肃省| 揭阳市| 巴彦淖尔市| 赫章县| 阿坝县| 徐水县| 申扎县| 普兰店市| 包头市|