專利名稱:基于云計算渲染農場的構建方法
技術領域:
本發明涉及通信技術領域,更具體的說,涉及基于云計算渲染農場的構建方法。
背景技術:
渲染農場屬于分布式并行集群計算系統,這是一種利用現成的CPU、以太網和操作系統構建的超級計算機,它使用主流的商業計算機硬件設備達到或接近超級計算機的計算能力。目前,構建渲染農場(也叫渲染集群)主要是使用渲染管理服務器、文件服務器(也叫存儲服務器)和多個渲染服務器(也叫渲染節點)通過網絡交換機連接起來。在建設渲染農場的過程中,工作人員需要給各個物理計算機安裝好有可能會用到的操作系統、渲染軟件和渲染插件。在對現有技術的研究和實踐過程中,本發明的發明人發現現有技術存在以下問題渲染服務器經常是需要靜態安裝,從操作系統的安裝和配置,到各種渲染軟件、渲染插件的安裝和配置,都需要人工完成,是一個工作量大而且繁雜的過程。靜態部署有一個弊端,安裝好的渲染服務器如果空閑了,無法臨時被其它資源緊缺的系統所使用,因為服務器所做的工作內容往往不相同。相反,若其它系統的資源空閑了,也無法快速地加入到資源緊缺的渲染農場中來。這樣會造成計算機資源的浪費,沒有把資源利用率最大化。由于渲染農場一般都具有幾十臺甚至幾百臺、上千臺渲染服務器,當需要添加新的渲染軟件或插件、重新配置系統或軟件的參數時,往往需要逐個服務器進行操作,非常耗時,并且出錯率高。對于管理員的維護工作也是一個很大的問題。因此,現有的渲染農場建設過程復雜、維護困難、不能快速增減節點。
發明內容
有鑒于此,本發明的設計目的在于,提供一種基于云計算渲染農場的構建方法,以使其建設過程簡單、維護高效方便、并且能夠令計算資源彈性化,使計算機資源利用率最大化。本發明實施例是這樣實現的—種基于云計算渲染農場的構建方法,包括在云計算環境中制作渲染管理服務器的鏡像和渲染服務器的鏡像,所述渲染服務器的鏡像中安裝有渲染程序;利用所述渲染管理服務器的鏡像創建虛擬渲染管理服務器;利用所述渲染服務器的鏡像創建第一預設數量的虛擬渲染服務器;通過所述虛擬渲染管理服務器獲取客戶端提交的渲染任務;利用所述第一預設數量的虛擬渲染服務器處理所述渲染任務;當獲取到所述客戶端刪除第二預設數量的虛擬渲染服務器的指令時,則銷毀第二預設數量的虛擬渲染服務器;當獲取到客戶端添加第三預設數量的虛擬渲染服務器的指令時,則利用所述渲染服務器的鏡像創建第三預設數量的虛擬渲染服務器。優選地,在利用所述渲染管理服務器的鏡像創建虛擬渲染管理服務器的步驟中,還包括所述虛擬渲染管理服務器獲取訪問所述文件服務器的參數,所述參數包括所述文件服務器的訪問地址、用戶名和密碼。優選地,所述渲染管理服務器與所述文件服務器之間使用服務器消息塊協議進行數據傳輸。優選地,在利用所述渲染服務器的鏡像創建第一預設數量的虛擬渲染服務器中, 還包括所述虛擬渲染服務器獲取訪問所述文件服務器的參數,所述參數包括所述文件服務器的訪問地址、用戶名和密碼;所述虛擬渲染服務器獲取訪問所述虛擬渲染管理服務器的參數,所述參數包括所述虛擬渲染管理服務器的訪問地址、用戶名和密碼。優選地,在利用所述第一預設數量的虛擬渲染服務器處理所述渲染任務的步驟中,具體包括所述第一預設數量的虛擬渲染服務器通過所述文件服務器的參數與所述文件服務器相連接;所述第一預設數量的虛擬渲染服務器利用內部預先存儲的渲染程序并加載所述文件服務器內的渲染素材來處理所述渲染任務;所述第一預設數量的虛擬渲染服務器將處理所述渲染任務的輸出結果保存至所述文件服務器。與現有技術相比,本實施例提供的技術方案具有以下優點和特點在本發明提供的方案中,使用渲染管理服務器和渲染服務器的鏡像可以快速創建虛擬渲染管理服務器和虛擬渲染服務器,通過自動配置和調度,可以快速構建不種類型的渲染農場;更新虛擬渲染管理服務器和虛擬渲染服務器時,只需要更新一次渲染管理服務器和渲染服務器的鏡像即可,維護管理更方便、更高效;由于云計算的資源彈性化特點,渲染農場的虛擬渲染服務器可以動態增減,快速地調配計算機資源,使計算機資源利用率最大化。因此,本發明提供的方案具有建設過程簡單、維護高效方便、并且能夠令計算資源彈性化,使計算機資源利用率最大化。
為了更清楚地說明本發明或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖I為本發明所提供的一種基于云計算渲染農場的構建方法的流程圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。本發明實施例提供了一種基于云計算渲染農場的構建方法,本發明提供的方案具有建設過程簡單、維護高效方便、并且能夠令計算資源彈性化,使計算機資源利用率最大化。由于上述基于云計算渲染農場的構建方法的具體實現存在多種方式,下面通過具體實施例進行詳細說明請參見圖I所示,圖I所示的為一種基于云計算渲染農場的構建方法,該方法包括 步驟S11、在云計算環境中制作渲染管理服務器的鏡像和渲染服務器的鏡像,所述渲染服務器的鏡像中安裝有渲染程序;其中,首先需要在云計算環境中制作渲染管理服務器和渲染服務器的機器鏡像,當然也可以把這兩種鏡像所充當的角色合并在一起做成一個鏡像,鏡像中安裝渲染軟件(Autodesk 3ds Max、Autodesk Maya 等)、 宣染插件(V-Ray、MultiScatter、RealFlow、Forest Pack、RenderMan 等)、網絡 宣染管理軟件(Thinkbox Deadline、AutodeskBackburner、Virtual Vertex Muster等)和值染調度代理程序等等。步驟S12、利用所述渲染管理服務器的鏡像創建虛擬渲染管理服務器;其中,通過云服務提供的管理系統或者云服務接口,可以快速地創建虛擬計算機。首先采用渲染管理服務器鏡像創建一個虛擬計算機,作為渲染管理服務器,創建虛擬計算機時提供了上下文(Context),內容包括訪問文件服務器的地址、用戶和密碼等等,這些上下文內容都是渲染管理服務器用于配置或調度的參數。當虛擬計算機就緒后,虛擬計算機中的渲染調度代理程序通過訪問云服務提供的特定網址來獲取上下文,初始化網絡渲染管理軟件的服務端(Server),不同的軟件初始化操作不一樣,需要分別對待。網絡渲染管理軟件的配置參數保存在程序數據文件夾中的一個文件或者Windows注冊表,渲染調度代理程序讀取并更改配置文件或Windows注冊表項,然后運行服務端程序,服務端進程就會監聽本地端口并開始接收來自渲染服務器的請求。渲染管理服務器負責管理和分派渲染任務,收集任務進度等,渲染過程中需要訪問文件服務器,所以渲染調度代理程序還會根據上下文提供的參數自動建立與文件服務器的連接。與文件服務器之間的數據傳輸通常使用服務器消息塊(Server Message Block,簡稱SMB)協議,SMB是Windows下使用最廣泛的文件共享傳輸協議。渲染調度代理程序使用Windows API (WNetAddConnection2> WNetAddConnection3)或 net. exe 命令,建立連接到文件服務器,映射文件服務器的網絡文件夾到渲染管理服務器本地。步驟S13、利用所述渲染服務器的鏡像創建第一預設數量的虛擬渲染服務器;通過云服務提供的管理系統或者云服務接口,可以快速地創建虛擬計算機。首先采用渲染服務器鏡像創建一個虛擬計算機,作為渲染服務器,創建虛擬計算機時提供了上下文(Context),內容包括訪問文件服務器的地址、用戶和密碼,還有渲染管理服務器的名稱或IP地址等等,這些上下文內容都是渲染服務器用于配置或調度的參數。當虛擬計算機就緒后,虛擬計算機中的渲染調度代理程序通過訪問云服務提供的特定網址來獲取上下文,初始化網絡渲染管理軟件的客戶端(Client),也稱Slave,不同的軟件初始化操作不一樣,需要分別對待。網絡渲染管理軟件的配置參數保存在程序數據文件夾中的一個文件或者Windows注冊表,渲染調度代理程序讀取并更改配置文件或Windows注冊表項,設置客戶端需要連接的服務器地址為上下文提供的渲染管理服務器名稱或IP,然后運行客戶端程序,客戶端進程就會連接渲染管理服務器,并自動注冊成為渲染農場的一個節點。渲染服務器負責處理渲染任務,報告任務進度,保存渲染輸出結果等。因為渲染的素材存放在文件服務器,渲染輸出結果也會保存到文件服務器,渲染過程中需要訪問文件服務器,所以渲染調度代理程序還會根據上下文提供的參數自動建立與文件服務器的連接。與文件服務器之間的數據傳輸通常使用服務器消息塊(Server Message Block,簡稱SMB)協議,SMB是Windows下使用最廣泛的文件共享傳輸協議。渲染調度代理程序使用Windows API (WNetAddConnection2> WNetAddConnection3)或 net. exe 命令,建立連接到 文件服務器,映射文件服務器的網絡文件夾到渲染管理服務器本地。渲染農場架構中的文件服務器,因為服務器比較固定,所以預先準備好即可,也可以使用已有的文件服務器,靈活性較高。文件服務器的規模和性能,主要由渲染農場的節點數量來決定。步驟S14、通過所述虛擬渲染管理服務器獲取客戶端提交的渲染任務;其中,虛擬渲染管理服務器的作用即為獲取客戶端提交的渲染任務,并將這些任務下發給各個虛擬渲染服務器,以使各個虛擬渲染服務器能夠同時對渲染任務進行處理。步驟S15、利用所述第一預設數量的虛擬渲染服務器處理所述渲染任務;其中,第一預設數量的虛擬渲染服務器利用內部預先存儲的渲染程序并調用所述文件服務器內的渲染素材來處理所述渲染任務,渲染服務器將處理所述渲染任務的輸出結果保存至所述文件服務器。步驟S16、當獲取到所述客戶端刪除第二預設數量的虛擬渲染服務器的指令時,則銷毀第二預設數量的虛擬渲染服務器;步驟S17、當獲取到客戶端添加第三預設數量的虛擬渲染服務器的指令時,則利用所述渲染服務器的鏡像創建第三預設數量的虛擬渲染服務器。在步驟S16和步驟S17中,無論系統獲取到客戶端發送的刪除指令還是添加指令,系統都會根據客戶端需要刪除或增加的數量進行處理。在圖I所示的實施例中,本發明提供的方案使用渲染管理服務器和渲染服務器的鏡像可以快速創建虛擬渲染管理服務器和虛擬渲染服務器,通過自動配置和調度,可以快速構建不種類型的渲染農場;更新虛擬渲染管理服務器和虛擬渲染服務器時,只需要更新一次渲染管理服務器和渲染服務器的鏡像即可,維護管理更方便、更高效;由于云計算的資源彈性化特點,渲染農場的虛擬渲染服務器可以動態增減,快速地調配計算機資源,使計算機資源利用率最大化。因此,本發明提供的方案具有建設過程簡單、維護高效方便、并且能夠令計算資源彈性化,使計算機資源利用率最大化。下面通過一個具體的應用例,來說明本發明的方案
步驟一、在云計算環境中制作渲染管理服務器和渲染服務器的機器鏡像,當然也可以把這兩種鏡像所充當的角色合并在一起做成一個鏡像,鏡像中安裝渲染軟件(Autodesk 3ds Max、Autodesk Maya 等)、 宣染插件(V-Ray、MultiScatter、RealFlow、Forest Pack、RenderMan 等)、網絡 宣染管理軟件(Thinkbox Deadline、AutodeskBackburner、Virtual Vertex Muster等)和值染調度代理程序等等。步驟二、準備好使用SMB協議的文件服務器。步驟三、通過云服務提供的管理系統或者云服務接口,使用渲染管理服務器鏡像創建一個虛擬計算機,作為渲染管理服務器,創建虛擬計算機時提供上下文,內容包括訪問文件服務器的地址、用戶和密碼等等。步驟四、通過云服務提供的管理系統或者云服務接口,使用渲染服務器鏡像創建多個虛擬計算機,作為渲染服務器,創建虛擬計算機時提供上下文,內容包括訪問文件服務器的地址、用戶和密碼,還有步驟三創建的渲染管理服務器的名稱或IP地址等等。
步驟五、渲染管理服務器和渲染服務器自動初始化完畢后,就成為渲染農場。用戶使用網絡渲染軟件監控端連接渲染管理服務器,或者通過遠程桌面連接或VNC等遠程登錄渲染管理服務器,就可以使用渲染農場了。步驟六、渲染服務器不夠時,重復步驟四動態增加渲染服務器。步驟七、渲染服務器過剩時,通過云服務提供的管理系統或者云服務接口,銷毀一個或多個渲染服務器的虛擬計算機,就會動態減少渲染服務器。步驟八、當不需要渲染農場時,通過云服務提供的管理系統或者云服務接口,銷毀渲染管理服務器和所有渲染服務器的虛擬計算機即可。綜上所述,使用機器鏡像快速創建虛擬計算機,通過自動配置和調度,可以快速構建3ds Max、Maya等不種類型的渲染農場。更新渲染管理服務器和渲染服務器時,只需要更新一次機器鏡像即可,維護管理更方便、更高效。由于云計算的資源彈性化特點,渲染農場的節點可以動態增減,快速地調配計算機資源,使計算機資源利用率最大化。需要說明的是,圖I所示的實施例只是本發明所介紹的優選實施例,本領域技術人員在此基礎上,完全可以設計出更多的實施例,因此不在此處贅述。對這些實施例的多種修改對本領域的專業技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發明的精神或范圍的情況下,在其它實施例中實現。因此,本發明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。
權利要求
1.一種基于云計算渲染農場的構建方法,其特征在于,包括 在云計算環境中制作渲染管理服務器的鏡像和渲染服務器的鏡像,所述渲染服務器的鏡像中安裝有渲染程序; 利用所述渲染管理服務器的鏡像創建虛擬渲染管理服務器; 利用所述渲染服務器的鏡像創建第一預設數量的虛擬渲染服務器; 通過所述虛擬渲染管理服務器獲取客戶端提交的渲染任務; 利用所述第一預設數量的虛擬渲染服務器處理所述渲染任務; 當獲取到所述客戶端刪除第二預設數量的虛擬渲染服務器的指令時,則銷毀第二預設數量的虛擬渲染服務器; 當獲取到客戶端添加第三預設數量的虛擬渲染服務器的指令時,則利用所述渲染服務器的鏡像創建第三預設數量的虛擬渲染服務器。
2.根據權利要求I所述的基于云計算渲染農場的構建方法,其特征在于,在利用所述渲染管理服務器的鏡像創建虛擬渲染管理服務器的步驟中,還包括 所述虛擬渲染管理服務器獲取訪問所述文件服務器的參數,所述參數包括所述文件服務器的訪問地址、用戶名和密碼。
3.根據權利要求2所述的基于云計算渲染農場的構建方法,其特征在于,所述渲染管理服務器與所述文件服務器之間使用服務器消息塊協議進行數據傳輸。
4.根據權利要求I所述的基于云計算渲染農場的構建方法,其特征在于,在利用所述渲染服務器的鏡像創建第一預設數量的虛擬渲染服務器中,還包括 所述虛擬渲染服務器獲取訪問所述文件服務器的參數,所述參數包括所述文件服務器的訪問地址、用戶名和密碼; 所述虛擬渲染服務器獲取訪問所述虛擬渲染管理服務器的參數,所述參數包括所述虛擬渲染管理服務器的訪問地址、用戶名和密碼。
5.根據權利要求4所述的基于云計算渲染農場的構建方法,其特征在于,在利用所述第一預設數量的虛擬渲染服務器處理所述渲染任務的步驟中,具體包括 所述第一預設數量的虛擬渲染服務器通過所述文件服務器的參數與所述文件服務器相連接; 所述第一預設數量的虛擬渲染服務器利用內部預先存儲的渲染程序并加載所述文件服務器內的渲染素材來處理所述渲染任務; 所述第一預設數量的虛擬渲染服務器將處理所述渲染任務的輸出結果保存至所述文件服務器。
全文摘要
本發明公開了一種基于云計算渲染農場的構建方法。在本發明提供的方案中,使用渲染管理服務器和渲染服務器的鏡像可以快速創建虛擬渲染管理服務器和虛擬渲染服務器,通過自動配置和調度,可以快速構建不種類型的渲染農場;更新虛擬渲染管理服務器和虛擬渲染服務器時,只需要更新一次渲染管理服務器和渲染服務器的鏡像即可,維護管理更方便、更高效;由于云計算的資源彈性化特點,渲染農場的虛擬渲染服務器可以動態增減,快速地調配計算機資源,使計算機資源利用率最大化。因此,本發明提供的方案具有建設過程簡單、維護高效方便、并且能夠令計算資源彈性化,使計算機資源利用率最大化。
文檔編號H04L29/08GK102932455SQ20121043155
公開日2013年2月13日 申請日期2012年11月1日 優先權日2012年11月1日
發明者邱洋, 董栓宗 申請人:廣州市品高軟件開發有限公司