<dfn id="bq4sp"><code id="bq4sp"><dl id="bq4sp"></dl></code></dfn>
<menuitem id="bq4sp"><mark id="bq4sp"></mark></menuitem>

<menuitem id="bq4sp"></menuitem>
<abbr id="bq4sp"><button id="bq4sp"><pre id="bq4sp"></pre></button></abbr>
  • <strike id="bq4sp"><rt id="bq4sp"></rt></strike>
  • <nobr id="bq4sp"></nobr>
  • 国产亚洲tv在线观看,五月综合婷婷开心综合婷婷,嫩草院一区二区乱码,国产精品18久久久久久麻辣 ,国产精品剧情亚洲二区,国产美熟女乱又伦AV果冻传媒,国产福利高颜值在线观看,无码人妻丰满熟妇啪啪网不卡

    基于彈性計算平臺構(gòu)建高可用、可擴展的應(yīng)用

    簡介:本文重點介紹如何利用三五互聯(lián)彈性計算平臺構(gòu)建高可用、可擴展的應(yīng)用。
     


    三五互聯(lián)彈性計算平臺(ECS)面向中國互聯(lián)網(wǎng)開發(fā)者和站長,致力于為中國的中小網(wǎng)站提供靠譜的互聯(lián)網(wǎng)基礎(chǔ)服務(wù)。它基于真正的分布式存儲系統(tǒng)Hadoop,結(jié)合高性能虛擬化技術(shù)KVM,實現(xiàn)了計算、存儲和網(wǎng)絡(luò)資源的統(tǒng)一調(diào)度和彈性分配。在具體的產(chǎn)品形式上,客戶接觸

    的是最簡單的云服務(wù)器,與物理機無二,沒有任何的使用門檻。由于采用了云計算技術(shù),相比傳統(tǒng)的IDC托管服務(wù),彈性計算在自助管理、資源組合靈活性、基礎(chǔ)環(huán)境定制化、數(shù)據(jù)安全性及硬件資源利用率上都有不小的優(yōu)勢。
     
    在本文中,我們將和大家分享在云計算平臺上構(gòu)建高可用、可擴展應(yīng)用的一些進階技巧。考慮到有些讀者尚未接觸過ECS,所以在進入正題之前,讓我們簡單瀏覽一下ECS的各項特性。
     
    自助管理
     
    ECS在west263.com的控制臺中提供了多種用戶自助的操作,例如最為常見的創(chuàng)建、啟動、關(guān)閉云服務(wù)器,將來還會陸續(xù)推出比較高級的自定義鏡像(Image)、負(fù)載均衡、磁盤導(dǎo)入等功能。回想我們以前遇到服務(wù)器不可訪問時,提交工單、電話催促,在經(jīng)歷漫長等待之后

    ,也未必能夠得到一個滿意的答復(fù)。現(xiàn)在,我們可以在控制臺中全程監(jiān)控和管理每一臺服務(wù)器的運行情況,從而做出快速的決定--重啟或者部署新的服務(wù)器。

    ECS支持目前主流的Windows和Linux系列操作系統(tǒng)。用戶不僅可以使用這些標(biāo)準(zhǔn)的鏡像,還可以在此基礎(chǔ)上修改配置、安裝軟件,創(chuàng)建出自己的鏡像,當(dāng)要快速恢復(fù)基礎(chǔ)環(huán)境或者批量部署集群時,自定義鏡像將成為提高運維效率的利器。
     
    云鏡像就是將您已有的云主機做成鏡像,以便購買新的云主機的時候使用,免去重復(fù)配置主機環(huán)境的麻煩。云鏡像按照實際的數(shù)據(jù)大小來收費,費用僅為0.50元/G/月.


    自動故障恢復(fù)

    有了分布式存儲的支持,ECS可以提供比傳統(tǒng)主機或VPS服務(wù)更高的可用性指標(biāo)。當(dāng)一臺物理機損壞時,ECS會自動監(jiān)測到硬件故障,在第一時間內(nèi)把云服務(wù)器遷移到新的宿主機上,同時硬盤數(shù)據(jù)保持最后一刻的狀態(tài)。

    然后,在國內(nèi),提供“云主機”的大大小小數(shù)百家服務(wù)商中,95%以上只是把一臺性能較好的物理服務(wù)器通過虛擬化技術(shù)虛擬為若干臺虛擬機再出售給客戶,實際上就是VPS。VPS的問題在于當(dāng)宿主服務(wù)器發(fā)生故障(如主板損壞、電源損壞、操作系統(tǒng)損壞、硬盤損壞等)的

    情況下,在上面運行的所有VPS將全部當(dāng)機,恢復(fù)時間一般需要數(shù)小時以上。 使用了分布式存儲系統(tǒng)的“真云”能在10分鐘左右將業(yè)務(wù)遷移至其他節(jié)點,且硬盤數(shù)據(jù)保持最后一刻的狀態(tài)。


    從以上介紹可以知道,托管在彈性計算平臺上的應(yīng)用可以獲得更多的保障,但我們是否可以認(rèn)為,將應(yīng)用搬到云計算平臺之后,它就能跑得歡快、永不宕機,還能自動擴展了?答案是NO!


    每時每刻,硬盤、主板、電源或者網(wǎng)絡(luò)設(shè)備都可能突然損壞,甚至整個數(shù)據(jù)中心發(fā)生停電。云計算技術(shù)沒有辦法解決所有硬件問題,只是降低了某些故障的發(fā)生幾率,例如:
     
    •普通SATA的年損壞率在2~4%,但使用分布式存儲的年損壞率在1‰以下;
     
    •自動故障恢復(fù)只是減少了服務(wù)器的宕機時間,但不能防止宕機;
     
    如果我們的應(yīng)用只能跑在單臺服務(wù)器上,只能依賴單臺設(shè)備的硬件升級才能應(yīng)付日益增長的訪問量,那么這種應(yīng)用的宕機是遲早的事。我們需要從部署架構(gòu)和應(yīng)用架構(gòu)兩個方面來破解這個難題。
     
    部署架構(gòu)

    既然沒有什么硬件是永不損壞的,我們是否可以用多份冗余的硬件來降低故障的概率?如果挨在一起的服務(wù)器被一把火燒掉的可能性太大,我們是否可以把它們分散在不同的集群?如果數(shù)據(jù)可能被破壞,是否要經(jīng)常做些備份?… …
     
    把各種故障因素都考慮一遍,我們就得出了一個大致的部署框架:
     
    1、以集群方式提供服務(wù)

    Web服務(wù)器、緩存服務(wù)器都是非常適合部署為集群的,單臺服務(wù)器損壞不會影響整個網(wǎng)站的訪問。數(shù)據(jù)庫服務(wù)器稍難一些,但它們也提供了鏡像、主從復(fù)制、讀寫分離等解決方案。


    2、 將云服務(wù)器分布在不同的可用區(qū)(Zone)下

    不同的可用區(qū)代表數(shù)據(jù)中心里的不同物理位置,同一可用區(qū)內(nèi)的服務(wù)器可能同時遭遇網(wǎng)絡(luò)設(shè)備、電力等故障,因此,把一個集群內(nèi)的云服務(wù)器分散到不同的可用區(qū)甚至不同的數(shù)據(jù)中心(Region)是個明智的選擇。


    3、 為Web服務(wù)集群配置負(fù)載均衡與DNS輪詢

    多臺Web服務(wù)器可以通過配置負(fù)載均衡或者DNS輪詢提供對外服務(wù)。

    相比DNS輪詢,負(fù)載均衡方式會更加靈活,因為它對外屏蔽了服務(wù)器的真實IP,當(dāng)負(fù)載均衡資源池內(nèi)增加或減少服務(wù)器時,對客戶是透明的。而DNS存在時延的問題,集群發(fā)生調(diào)整后,很有可能造成部分用戶在很長一段時間內(nèi)無法正常訪問網(wǎng)站。

    另外,負(fù)載均衡能夠跟蹤后端應(yīng)用服務(wù)器的健康狀態(tài),自動排除有故障的節(jié)點,避免出現(xiàn)服務(wù)時斷時續(xù)的問題。

    對于特別大的應(yīng)用,我們推薦使用負(fù)載均衡+DNS輪詢的方式,只是這里的DNS輪詢域名指向的是負(fù)載均衡的VIP。


    4、 實現(xiàn)動態(tài)部署

    為了應(yīng)對經(jīng)常性的業(yè)務(wù)推廣和可能的DDOS網(wǎng)絡(luò)攻擊,實現(xiàn)系統(tǒng)與應(yīng)用程序的一鍵部署很重要。系統(tǒng)管理員可以根據(jù)應(yīng)用的當(dāng)前狀態(tài)(CPU、內(nèi)存使用率、HTTP的響應(yīng)時間等)作出判斷,即時增加服務(wù)器,并且快速部署應(yīng)用程序,頂住突增的業(yè)務(wù)流量。如果實現(xiàn)得更智能一

    些,可以在應(yīng)用服務(wù)器內(nèi)部部署一些監(jiān)控程序,由主控程序判斷當(dāng)前整個集群的負(fù)載情況,調(diào)用ECS API自動增減服務(wù)節(jié)點。

    用一臺主控機去批量操作其它云服務(wù)器時,應(yīng)該盡量地使用一些便捷工具,例如SSH密鑰對,它實現(xiàn)了授權(quán)服務(wù)器間的免登錄,使得集群管理更加簡單。


    5、定時備份很重要
    前面說到,沒有什么技術(shù)可以保證100%的數(shù)據(jù)安全,你的數(shù)據(jù)始終面臨誤刪文件、病毒破壞、程序?qū)戝e、硬件損壞等種種可能的風(fēng)險。如果你的數(shù)據(jù)非常非常重要,請定期備份!在彈性計算平臺上,這件事情相對簡單,數(shù)據(jù)同時寫4份,還有每2天一次的外部云備份,基

    礎(chǔ)上可以保障您的數(shù)據(jù)高枕無憂。然而,單個物理位置的存儲始終會面臨地震、火災(zāi)等災(zāi)難的威脅,如果你覺得還不夠安全,或者有異地使用的需要,且能夠承受異地備份帶來的存儲、帶寬等成本,可以自行拷貝數(shù)據(jù)文件。我們的彈性計算平臺有不同區(qū)域的數(shù)據(jù)中心,

    您可以考慮在一個數(shù)據(jù)中心進行業(yè)務(wù)開展,而在另外一個數(shù)據(jù)中心進行災(zāi)難備份。


    6、 將應(yīng)用程序配置為自恢復(fù)的

    單臺服務(wù)器的硬件故障是常見現(xiàn)象,以現(xiàn)有的云計算技術(shù)能力,尚無法做到不影響云服務(wù)器的運行,但ECS可以快速檢測到故障特征,并且將云服務(wù)器自動遷移到新的宿主機上。這里存在一個問題,雖然云服務(wù)器重新啟動了,而且硬盤數(shù)據(jù)恢復(fù)到最后一刻的狀態(tài),但是原

    先正在運行的應(yīng)用程序中止了。為了讓你的服務(wù)中斷時間盡量地縮短,避免人工的介入,強烈建議將應(yīng)用程序及相關(guān)服務(wù)(如Web服務(wù)、數(shù)據(jù)庫服務(wù)等)設(shè)置為開機自啟動,這樣,你就可以高枕無憂地睡大覺,不用半夜起來恢復(fù)應(yīng)用,盡管只是幾個點擊或者命令操作。


    7、加固系統(tǒng)

    安全也是高可用的重要前提之一。放在IDC機房中的服務(wù)器時時面臨各種惡意攻擊,比如端口掃描攻擊


    大量的肉機在循環(huán)探測機房中每一臺機器的1433端口,它是在試探SQLServer服務(wù),一旦SQLServer被攻破,再利用SQLServer管理員的系統(tǒng)權(quán)限漏洞,馬上就有一些機器淪為肉雞。


    三五互聯(lián)彈性計算服務(wù)在平臺層面就屏蔽了一些影響范圍很大的惡意攻擊,例如篡改MAC、偽造IP、發(fā)送ARP欺騙包等,但用戶的系統(tǒng)還是要遵循一些安全最佳實踐,才能讓自己的系統(tǒng)更加穩(wěn)固:


    1、關(guān)閉不必要的系統(tǒng)服務(wù)

    越多的服務(wù)意味著越多的漏洞,特別是Windows共享文件夾、遠程修改注冊表項等服務(wù)都存在巨大的風(fēng)險,如果你的工作不需要這些服務(wù),請馬上關(guān)閉。


    2、及時升級系統(tǒng)補丁

    前段時間爆出的微軟高危RDP漏洞讓很多用戶深受其害,通過一個簡單的Python腳本,黑客就可以直接獲取系統(tǒng)管理員權(quán)限或者直接把服務(wù)器打至藍屏。不要忽略操作系統(tǒng)廠商的安全警告,一旦遭遇攻擊,將造成不可挽回的損失。


    3、開啟系統(tǒng)防火墻

    采用白名單控制策略,只開放最小集合的端口。對于數(shù)據(jù)庫服務(wù)器,更要設(shè)置IP白名單,僅允許前端的Web服務(wù)器訪問;對于Web服務(wù)器,只對外開放80端口。


    4、修改常見服務(wù)的端口

    黑客經(jīng)常用工具軟件破解3389的遠程登錄密碼,即使您的密碼足夠復(fù)雜,但這種嘗試會消耗掉您的主機大部分的CPU資源。筆者曾經(jīng)遇到過一個很奇怪的現(xiàn)象,在一臺Windows 2003服務(wù)器上,應(yīng)用的負(fù)載很低,但CPU利用率達到了99%,從任務(wù)管理器中看到,有無數(shù)個

    winlogon.exe進程瘋狂消耗CPU,當(dāng)時百思不得其解。一天之后,這臺服務(wù)器就淪陷了,我才恍然大悟,一定是攻擊者在嘗試破解密碼為了減少這類攻擊,最有效的方式就是修改掉遠程登錄的默認(rèn)端口,增加黑客掃描的難度。為預(yù)防這個問題,三五互聯(lián)彈性云主機開通后

    的默認(rèn)端口是33890,而不是3389,防止CPU資源被白白浪費。


     
    應(yīng)用架構(gòu)


    要支持上述高可用、可擴展的部署架構(gòu),應(yīng)用程序也要做相應(yīng)的調(diào)整。例如:


    •Web應(yīng)用的無狀態(tài)設(shè)計
    Web應(yīng)用的諸多因素可能造成系統(tǒng)無法擴展:本地存放的上傳文件、進程內(nèi)的Session等。以上傳文件為例,假設(shè)使用了本地存儲,用戶第一個請求上傳了一個頭像文件,存放在Web-A服務(wù)器上,接著刷新頁面,但這個請求被發(fā)送到Web-B服務(wù)器上,他驚奇地發(fā)現(xiàn):上傳的

    頭像文件不見了!要解決這個問題,必須把上傳文件存放到共享的文件夾,Web服務(wù)器不能保留任何自己的數(shù)據(jù)(即無狀態(tài))。 在使用負(fù)載均衡時,網(wǎng)頁文件建議使用文件共享、NFS、ISCSI 或 rsync定期自動同步。


    •用分布式服務(wù)代替單點的服務(wù)
    單點就意味著故障,不僅有可用性的風(fēng)險也有性能瓶頸的問題。常見的單點一般出現(xiàn)在共享文件服務(wù)器、數(shù)據(jù)庫服務(wù)器。三五互聯(lián)云計算平臺提供了一系列分布式服務(wù),是這些單點服務(wù)的可行替代方案:


    •需要高IO型的應(yīng)用
    可使用磁盤陣列存儲。 磁盤陣列存儲比分布式存儲有更高的IO性能,但在宿主服務(wù)器當(dāng)機的情況下需要更長的恢復(fù)時間。


    ■應(yīng)用的安全不容忽視

    安全不僅是操作系統(tǒng)配置的問題,堡壘更容易從內(nèi)部被攻破,而這個內(nèi)鬼很有可能就是我們的應(yīng)用。從概率上說,一個復(fù)雜程序會比一個簡單程序多很多漏洞,而Web應(yīng)用涉及數(shù)據(jù)庫、應(yīng)用服務(wù)器、緩存等諸多組件,稍有不慎,攻擊的后門就會向黑客敞開。

    常見的Web服務(wù)漏洞有:


    ■XSS跨站腳本攻擊
    這類Web攻擊最為普遍,一般發(fā)生在允許用戶輸入內(nèi)容的頁面,尤其是提供富文本編輯的模塊。幾乎所有的網(wǎng)站都會被XSS攻擊光顧,但防御這類攻擊也是最為簡單的:限制用戶輸入,并且在頁面輸出內(nèi)容時對敏感字符進行編碼,相對來說,后者更為重要一些。PHP語言的

    htmlspecialchars函數(shù)、Java Jakarta commons的StringEscapeUtils類都是實現(xiàn)編碼功能的快捷工具。


    ■SQL注入攻擊
    只要應(yīng)用代碼中存在這樣的SQL:


    sql = "select * from User where name='"   name   "' and password='"   password   "'";

    那么這個應(yīng)用距離淪陷也就不遠了,攻擊者只要輸入一個值為

    ”’ or 1=1 or name=’”’ or 1=1 or name=’”’ or 1=1 or name=’”’ or 1=1 or name=’
    的name就可以輕易進入你的應(yīng)用系統(tǒng)。杜絕這類問題的方法有2種:


    對輸入的特殊字符進行轉(zhuǎn)義,例如PHP的mysql_real_escape_string函數(shù);

    或者采用參數(shù)化的SQL,例如:

    [table=100%,,,0]
     [tr]
      [td]sql = "select * from User where name=? and password=?";
     
    result = query(sql, name, password);
    [/td]
     [/tr]
    [/table]
    后者實現(xiàn)更加優(yōu)雅,絕對避免了SQL注入的風(fēng)險,而且在提升數(shù)據(jù)庫的查詢性能上也會有所幫助。


    ■ 上傳文件漏洞
    這是最為危險的應(yīng)用級漏洞,特別容易出現(xiàn)在允許用戶上傳內(nèi)容的網(wǎng)站中。假設(shè)一個tomcat搭建的Web網(wǎng)站允許用戶上傳附件,卻忘了限制上傳目錄的可執(zhí)行權(quán)限,攻擊者就可以上傳一個帶webshell的jsp文件,通過訪問這個上傳文件的URL就可以完全控制網(wǎng)站服務(wù)器。

    一定要取消上傳文件的可執(zhí)行權(quán)限,另外,絕不允許這類文件被當(dāng)作服務(wù)端腳本解析。趕緊為你的網(wǎng)站實施安全策略吧!


    ■Cookie與傳輸加密
    只要會用HttpWatch、Firebug等開發(fā)工具,大家都可以看到各大網(wǎng)站的Cookie數(shù)據(jù),而這些Cookie正是網(wǎng)站用于鑒別用戶身份的憑證。通過分析Cookie構(gòu)成,黑客有可能猜測出網(wǎng)站的鑒權(quán)策略。要想讓你的應(yīng)用更安全,可以對Cookie等敏感數(shù)據(jù)進行加密。如果你的網(wǎng)站

    還包含在線支付功能,部署帶授權(quán)證書的HTTPS是必不可少的,這也是很多第三方支付平臺的強制要求。


    綜上所述,雖然云計算平臺提供了更靈活、更穩(wěn)定的基礎(chǔ)服務(wù)保障,但它不足以解決應(yīng)用的高可用性和可擴展性問題,應(yīng)用自身必須在架構(gòu)設(shè)計和部署上充分考慮各種意外情況,才能實現(xiàn)真正意義上的高可用、可擴展 。


    編輯:三五互聯(lián)
    日期:2013-08-07

    收藏 】 【 打印 】   
    您可對文檔進行評分喲~

    勾選遇到的問題提交給我們,收到反饋后保證及時修正更新!

    提交反饋需要先登陸會員帳號

    上一篇:已經(jīng)沒有了。
    下一篇:已經(jīng)沒有了。
    若文檔內(nèi)容對您沒有幫助,不能解決問題? 您還可以 咨詢在線客服提交工單搜索常見問題 ,我們將竭誠為您服務(wù)。
      >> 相關(guān)文章
     
    分享至: