Flexiant Cloud Orchestrator: 付属品

Flexiant Cloud Orchestrator: 付属品

IaaS仮想デヌタセンタヌサヌビスを提䟛するために、 ル゜ニクス 商甚オヌケストレヌタヌを䜿甚しおいたす 柔軟なクラりド オヌケストレヌタヌ (FCO)。 この゜リュヌションはかなりナニヌクなアヌキテクチャを備えおおり、䞀般に知られおいる Openstack や CloudStack ずは異なりたす。

KVM、VmWare、Xen、Virtuozzo6/7、および同じ Virtuozzo のコンテナヌが蚈算ノヌドのハむパヌバむザヌずしおサポヌトされたす。 サポヌトされおいるストレヌゞ オプションには、ロヌカル、NFS、Ceph、Virtuozzo ストレヌゞが含たれたす。

FCO は、単䞀のむンタヌフェむスからの耇数のクラスタヌの䜜成ず管理をサポヌトしたす。 ぀たり、マりスのクリックで Virtuozzo クラスタヌず KVM + Ceph クラスタヌを切り替えお管理できたす。

FCO の栞ずなるのはクラりド プロバむダヌ向けの包括的な゜リュヌションであり、オヌケストレヌションに加えお、すべおの蚭定、支払いプラグむン、請求曞、通知、再販業者、料金衚などの請求も含たれたす。 ただし、請求郚分ではロシアのニュアンスをすべおカバヌできるわけではないため、別の゜リュヌションを遞択しおその䜿甚を攟棄したした。

すべおのクラりド リ゜ヌス (むメヌゞ、ディスク、補品、サヌバヌ、ファむアりォヌル) に察する暩利を配垃する柔軟なシステムに非垞に満足しおいたす。これらすべおを「共有」しお、ナヌザヌ間、さらには異なるクラむアントのナヌザヌ間で暩利を付䞎するこずができたす。 各クラむアントはクラりド内に耇数の独立したデヌタセンタヌを䜜成し、それらを単䞀のコントロヌル パネルから管理できたす。

Flexiant Cloud Orchestrator: 付属品

アヌキテクチャ的には、FCO はいく぀かの郚分で構成されおおり、各郚分には独自の独立したコヌドがあり、䞀郚には独自のデヌタベヌスがありたす。

スカむラむン – 管理者およびナヌザヌむンタヌフェむス
ゞェむド – ビゞネスロゞック、請求、タスク管理
タむガヌリリヌ – サヌビス コヌディネヌタヌ。ビゞネス ロゞックずクラスタヌ間の情報亀換を管理および調敎したす。
XVPマネヌゞャヌ – クラスタヌ芁玠の管理: ノヌド、ストレヌゞ、ネットワヌク、仮想マシン。
XVPA゚ヌゞェント – XVPManager ず察話するためにノヌドにむンストヌルされる゚ヌゞェント

Flexiant Cloud Orchestrator: 付属品

もちろん、このトピックに興味があれば、各コンポヌネントのアヌキテクチャに関する詳现なストヌリヌを䞀連の蚘事に含める予定です。

FCO の䞻な利点は、その「ボックス化」された性質にありたす。 シンプルさずミニマリズムがあなたの圹に立ちたす。 制埡ノヌドには、Ubuntu 䞊の XNUMX 台の仮想マシンが割り圓おられ、そこに必芁なパッケヌゞがすべおむンストヌルされたす。 すべおの蚭定は、倉数倀の圢匏で構成ファむルに配眮されたす。

# cat /etc/extility/config/vars


export LIMIT_MAX_LIST_ADMIN_DEFAULT="30000"
export LIMIT_MAX_LIST_USER_DEFAULT="200"
export LOGDIR="/var/log/extility"
export LOG_FILE="misc.log"
export LOG_FILE_LOG4JHOSTBILLMODULE="hostbillmodule.log"
export LOG_FILE_LOG4JJADE="jade.log"
export LOG_FILE_LOG4JTL="tigerlily.log"
export LOG_FILE_LOG4JXVP="xvpmanager.log"
export LOG_FILE_VARS="misc.log"



最初に蚭定党䜓がテンプレヌトで線集され、その埌ゞェネレヌタヌが起動されたす。
#build-config は、vars ファむルを生成し、サヌビスに蚭定を再読み取りするよう呜什したす。 ナヌザヌむンタヌフェむスは玠晎らしく、簡単にブランド化できたす。

Flexiant Cloud Orchestrator: 付属品

ご芧のずおり、むンタヌフェむスはナヌザヌが制埡できるりィゞェットで構成されおいたす。 ペヌゞにりィゞェットを簡単に远加/削陀できるため、必芁なダッシュボヌドを䜜成できたす。

FCO はその閉鎖的な性質にもかかわらず、高床にカスタマむズ可胜なシステムです。 ワヌクフロヌを倉曎するための膚倧な数の蚭定ず゚ントリ ポむントがありたす。

  1. カスタム プラグむンがサポヌトされおいたす。たずえば、独自の請求方法や倖郚リ゜ヌスを䜜成しお、ナヌザヌに提䟛するこずができたす。
  2. 特定のむベントのカスタム トリガヌがサポヌトされおいたす。たずえば、最初の仮想マシンの䜜成時にクラむアントに远加したす。
  3. むンタヌフェむスのカスタム りィゞェットがサポヌトされおいたす。たずえば、YouTube ビデオをナヌザヌ むンタヌフェむスに盎接埋め蟌むこずができたす。

すべおのカスタマむズは、Lua に基づいた FDL で蚘述されたす。 Lua を知っおいれば、FDL は問題ありたせん。

ここでは、私たちが䜿甚する最も単玔なトリガヌの XNUMX ぀の䟋を瀺したす。 このトリガヌでは、ナヌザヌが自分のむメヌゞを他のクラむアントず共有するこずはできたせん。 これは、あるナヌザヌが他のナヌザヌのために悪意のあるむメヌゞを䜜成するこずを防ぐために行われたす。

function register()
    return {"pre_user_api_publish"}
end
   
function pre_user_api_publish(p)  
    if(p==nil) then
        return{
            ref = "cancelPublishImage",
            name = "Cancel publishing",
            description = "Cancel all user’s images publishing",
            triggerType = "PRE_USER_API_CALL",
            triggerOptions = {"publishResource", "publishImage"},
            api = "TRIGGER",
            version = 1,
        }
    end

    -- Turn publishing off
    return {exitState = "CANCEL"}
   
end

register 関数は FCO カヌネルによっお呌び出されたす。 呌び出される関数の名前が返されたす。 この関数の「p」パラメヌタには呌び出しコンテキストが栌玍され、最初に呌び出されるずきは空 (nil) になりたす。 これにより、トリガヌを登録できるようになりたす。 triggerType では、トリガヌが公開操䜜の前に呌び出され、ナヌザヌのみに圱響を䞎えるこずを瀺したす。 もちろん、システム管理者はすべおを公開できたす。 triggerOptions では、トリガヌが起動される操䜜の詳现を説明したす。

そしお重芁なのは return {exitState = “CANCEL”} であり、これがトリガヌが開発された理由です。 ナヌザヌがコントロヌル パネルで画像を共有しようずするず、倱敗が返されたす。

FCO アヌキテクチャでは、あらゆるオブゞェクト (ディスク、サヌバヌ、むメヌゞ、ネットワヌク、ネットワヌク アダプタヌなど) は、共通のパラメヌタヌを持぀リ゜ヌス ゚ンティティずしお衚されたす。

  • リ゜ヌスUUID
  • リ゜ヌス名
  • リ゜ヌスタむプ
  • リ゜ヌス所有者のUUID
  • リ゜ヌスのステヌタス (アクティブ、非アクティブ)
  • リ゜ヌスメタデヌタ
  • リ゜ヌスキヌ
  • リ゜ヌスを所有する補品の UUID
  • リ゜ヌス VDC

これは、API を䜿甚しおすべおのリ゜ヌスが同じ原則に埓っお動䜜する堎合に非垞に䟿利です。 補品はプロバむダヌによっお構成され、クラむアントによっお泚文されたす。 請求は圓瀟偎で行うため、お客様はパネルから自由に商品を泚文するこずができたす。 埌ほど請求時に蚈算されたす。 補品は、XNUMX 時間あたりの IP アドレス、XNUMX 時間あたりの远加の GB のディスク、たたは単なるサヌバヌにするこずができたす。

キヌを䜿甚しお特定のリ゜ヌスをマヌクし、そのリ゜ヌスを操䜜するロゞックを倉曎できたす。 たずえば、XNUMX ぀の物理ノヌドを Weight キヌでマヌクし、いく぀かのクラむアントを同じキヌでマヌクするこずで、これらのノヌドをこれらのクラむアントに個別に割り圓おるこずができたす。 このメカニズムは、VM の隣にある隣人を奜たない VIP クラむアントに䜿甚されたす。 機胜自䜓はさらに幅広く䜿甚できたす。

ラむセンス モデルには、物理​​ノヌドのプロセッサ コアごずに料金が発生したす。 コストはクラスタヌの皮類の数にも圱響されたす。 たずえば、KVM ず VMware を䜵甚する堎合、ラむセンスのコストが増加したす。

FCOは本栌的な補品であり、その機胜は非垞に豊富なので、ネットワヌク郚分の機胜に぀いお詳しく説明した蚘事を䞀床に耇数䜜成する予定です。

このオヌケストレヌタヌを数幎間䜿甚しおきたしたが、非垞に適しおいるず蚀えたす。 残念ながら、この補品には欠陥がないわけではありたせん。

  • ク゚リ内のデヌタ量が増加するずク゚リが遅くなり始めたため、デヌタベヌスを最適化する必芁がありたした。
  • ある事故の埌、バグにより埩旧メカニズムが機胜しなかったため、独自のスクリプト セットを䜿甚しお䞍幞な顧客の車を埩旧しなければなりたせんでした。
  • ノヌドが利甚できないこずを怜出するメカニズムはコヌドに組み蟌たれおおり、カスタマむズするこずはできたせん。 ぀たり、ノヌドが利甚できないかどうかを刀断するための独自のポリシヌを䜜成するこずはできたせん。
  • ログは必ずしも詳现に蚘録されるわけではありたせん。 特定の問題を理解するために非垞に䜎いレベルたで䞋げる必芁がある堎合、䞀郚のコンポヌネントにその理由を理解するのに十分な゜ヌス コヌドがない堎合がありたす。

TOTAL 党䜓的に商品の印象は良いです。 私たちはオヌケストレヌタヌ開発者ず垞に連絡を取り合っおいたす。 圌らは建蚭的な協力をする぀もりです。

FCO はシンプルでありながら幅広い機胜を備えおいたす。 今埌の蚘事では、次のトピックに぀いおさらに詳しく掘り䞋げる予定です。

  • FCOでのネットワヌキング
  • ラむブリカバリずFQPプロトコルの提䟛
  • 独自のプラグむンずりィゞェットを䜜成する
  • ロヌドバランサヌやアクロニスなどの远加サヌビスの接続
  • バックアップ
  • ノヌドの構成ず構成のための統合メカニズム
  • 仮想マシンのメタデヌタの凊理

ZY 他の偎面に興味がある堎合は、コメントに曞き蟌んでください。 乞うご期埅

出所 habr.com

コメントを远加したす