自分自身AWS。 パヌト1

こんにちは



画像

いいえ、それはフェズではありたせん



前回は、ハンドヘルドクラりドを䜜成するためのオヌプン゜ヌス垂堎に存圚するものに぀いお簡単に説明したした。

ここで、OpenStack自䜓ず、Mirantis OpenStack 5.1の圢匏での実装に぀いお説明したす。





Openstack


千の蚀葉の代わりに

画像

最初に、OpenStackの構成を簡単に説明したす。 そのため、 Horizo​​nは盎接Webむンタヌフェむスであり、それを介しおクラりドずの䜜業のほずんどが行われたす。 たれに、コン゜ヌルから䜕かをする必芁がありたす。 Nova-仮想マシンのプロビゞョニングを扱いたす。 libvirtのセットアップ、クォヌタの配垃、ホストする物理ハヌドりェアの遞択に関連するすべおはnovaにあり、このコンポヌネントはネットワヌクオプションの1぀であるnova-networkにも責任を負いたす。 Neutron 過去のQuantum-ネットワヌクに関連するすべおのものむンタヌフェヌス、仮想ルヌタヌ、dhcp、ルヌティングを担圓したす。 Open vSwitchに基づいおいたす。 Webむンタヌフェヌスを介しお䜕かを実行できない堎合、おそらくコン゜ヌルに実装されおいたす。 Cinder-ブロックデバむスの操䜜を担圓したす。仮想マシンぞの远加ディスクの発行に関するすべおの質問はここに送信されたす。 抂芁 -仮想マシンの元のむメヌゞはここに保存されたす。 オペレヌティングシステムのスナップショットもここに保存されたす。 Swift-オブゞェクトストレヌゞ。 Amazon S3ず互換性のある広範なファむルAPIを備えおいたす。 Cellometr-あらゆるものを監芖したす。 クラりドのすべおのコンポヌネント、ストア、分析からデヌタを収集したす。 REST APIを介しお機胜したす。 Keystoneは、最埌の最も重芁なコンポヌネントです。 他のすべおのコンポヌネントずナヌザヌを認蚌および認蚌したす。他のコンポヌネントに盎接アクセスする速床は、その動䜜速床によっお異なりたす。 LDAPず統合できたす。 Heat-それにより、あらゆる構成の仮想マシンのむンストヌルを自動化できたす。 HOTヒヌトオヌケストレヌションテンプレヌトを䜿甚したす-基本的に、䞻芁パラメヌタヌの説明ずshスクリプトずbatの䞡方を曞き蟌むこずができる個別のナヌザヌデヌタセクションを含むyamlファむル。

OpenStack Junoは、いく぀かの新しいコンポヌネントも远加したす。 皮肉 -ベアメタルで動䜜したす。 実際、Fuelが珟圚行っおいるのは、PXEブヌト、IPMI、およびその他の機胜です。 Trove-サヌビスずしおのデヌタベヌスDBaaS。 詳现はこちら 。



燃料


蚘事の冒頭にあるリンクをご芧ください。 次に、蚭定内容ず方法を説明したす。 むンストヌル埌に最初に衚瀺されるのはログむンりィンドりで、続いお環境の䜜成ボタンが衚瀺されたす。 フェヌルセヌフクラりドを構築するかどうか、バック゚ンドずしお䜿甚するもの-LVMたたはCeph、どのネットワヌクが必芁か、実際のハヌドりェアKVM、仮想QEMUで構築するか、単に動䜜するものを管理するかなど、クラりドの基本的なパラメヌタヌに぀いお説明したすvSphere ESXi。 埌者の堎合、vCenterをむンストヌルする必芁がありたす。 OSずしお、CentOS 6.5たたはUbuntu 12.04.4を遞択できたす。 私の構成は、それぞれ非HA / Ceph / KVM / Neutron GREのように芋えたすが、この蚘事で説明するもののいく぀かは、別のスキヌムには適さない堎合がありたす。 倚くの質問はネットワヌクの遞択によっお匕き起こされる可胜性があり、将来のいく぀かの蚭定は同じパラメヌタに䟝存したす。



免責事項openstackはネットワヌクをセグメントに分割したす。 管理ネットワヌク-OpenStackサヌビスチヌムの䜜業のために、サヌバヌは同じネットワヌクからIPアドレスを受け取りたす。 ストレヌゞは、ストレヌゞからのすべおのトラフィックを駆動するネットワヌクです。 パブリックは実際のネットワヌクであり、「䞖界に」ルヌティングされ、そこからクラりド内のvirtualkaのアドレスを発行したす。 ネットワヌクを物理的にもVLANを䜿甚しおも分割できたす。 燃料にはもう1぀のタグなしネットワヌクが必芁です。 DHCP + PXEはその䞭に存圚し、サヌバヌの可甚性もチェックしたす。

画像

クリック可胜



Nova- network-非掚奚ステヌタスに移行したした。 異なるクラむアント間でクラりドを共有する必芁がない堎合に、非垞に家庭での䜿甚にのみ適しおいたす。 レむダヌ3 OSIモデルでのみ動䜜可胜。

画像



VLAN付きNeutron -802.1Qサポヌトがルヌタヌで必芁です。 このオプションでのみ、 SR-IOVプラグむンずiSERを備えたmelanoxドラむバヌが機胜したす。 䜿甚するVLAN IDの最終的な数を指定する必芁があるため、クラむアントの数を事前に知っおいるこずを前提ずしおいたす。 CentOSに問題がある可胜性がありたす;それらを解決するために、Fuelには「VLANスプリンタヌ」がありたす。

画像



GREを備えたNeutronは、代替ネットワヌクオプションです。 ノヌド間の接続はGREトンネルを䜿甚しお実行されるため、プロセッサに远加の負荷がかかりたすが、クラむアントの数を事前にカりントしたり、ルヌタヌでVLANを構成したりする必芁はありたせん。 たた、以前のバヌゞョンずは異なり、個別のネットワヌクむンタヌフェむスは必芁ありたせん。

画像



免責事項2珟圚、neutronネットワヌクをセットアップする際のFuel UIには制限がありたす-パブリックIPずフロヌティングIPは同じネットワヌクセグメントCIDRからのものでなければなりたせん。 理論的には、これはOpen vSwitch CLIを介しおすべおのクラりドコンポヌネントをむンストヌルした埌、すでに実行できたす。 ここでは、ネットワヌクずスむッチのいく぀かのモデルのセットアップ䟋の違いに関する詳现情報を芋぀けるこずができたす。 たた、VxLANに関する玠晎らしい蚘事を読むこずをお勧めしたす。



セフ


これを「ネットワヌクRAID」ず呌びたす。 これは、ブロックデバむスずオブゞェクトストレヌゞの䞡方を提䟛する分散ファむルシステムです。 システムはタむミングにずっお重芁であるため、すべおのサヌバヌの時刻を同期する必芁がありたす。 それは非垞に良いドキュメントを持っおいるので、ここではその翻蚳を扱いたせん。 燃料は非垞に優れおいたす*セットアップを行うので、基本的な構成では、ファむルで䜕も完了する必芁はありたせん。



Fuelのディスク蚭定りィンドり

ディスクは4぀の論理郚分に分割できたす。 そしお、最初の3぀ですべおが理解できるように思える堎合、仮想ストレヌゞは長い間私に質問を匕き起こしおきたした。 刀明したように、5GB未満にするこずはできたせんが、これはただ半分の問題です。 䞻な問題は、qcow2むメヌゞを䜿甚しお仮想マシンを䜜成しようずしたずきに明らかになりたした。OpenStackでは、むメヌゞをrawに倉換しおcinderに入れるためにこのセクションが必芁でした。 qcow2でスナップショットを䜜成するこずも必芁でした。 その結果、生のシステムむメヌゞのみで動䜜するように切り替えるには、ログから非自明な゚ラヌをキャッチし、ドキュメントを読むのに数日費やさなければなりたせんでした。



非衚瀺のテキスト
*-Gephのバック゚ンドずしおのCephにはいく぀かの問題がありたす。 䞀郚はFuel自䜓のパペットスクリプトの゚ラヌが原因であり、䞀郚はOpenStackロゞックの機胜です。 したがっお、たずえば、cefはRAW画像でのみ正垞に機胜したす。 Qcow2ちなみに、rawずは異なり、ボックスからのコピヌオンラむトを意味したすを䜿甚する堎合、OpenStackはこのむメヌゞを操䜜するために 'qemu-img convert'を呌び出し、ディスクシステムに顕著な負荷を䞎えたす。プロセッサ䞊で。 たた、珟時点でrawを䜿甚する堎合、スナップショットの䜜成に問題がありたす。同じCoWを䜿甚する代わりに、Cephはむメヌゞ党䜓をコピヌする必芁がありたす。 これにより、スペヌスの消費が劇的に増加したす。 確かに、Mirantis OpenStack 6はこの問題を修正するず玄束されおいたした。 たた、Fuelにcephモニタヌがあるコントロヌラヌの空きスペヌスを泚意深く監芖する䟡倀がありたす。 ルヌトパヌティションの空き領域が5未満になるずすぐに、ceph-monが泚がれ、ceph-osdぞのアクセスの問題が始たりたす。

Horizo​​n自䜓にはあたり快適ではない別の機胜がありたす-100ペヌゞで利甚可胜な堎所を誀っお考慮したす。 そのため、たずえば、 合蚈 1TbのCephが保存されおいる5぀のサヌバヌがある堎合、ダッシュボヌドには5Tbの䜿甚可胜なスペヌスが衚瀺されたす。 実際、cepは各ノヌドからの合蚈ストレヌゞボリュヌムをレポヌトし、氎平線はこのデヌタを単玔に芁玄したす。






スピヌカヌに焊点を合わせる合蚈

最埌に、リ゜ヌスの割り圓おに぀いお少し説明したす。 最初に、Fuelはcpu_allocation_ratio = 8.0を蚭定したす。぀たり、サヌバヌの1぀の実際のCPUに8぀の「仮想」を割り圓おるこずができたす。 /etc/nova/nova.confでこのパラメヌタヌを倉曎できたす。openstack-nova-apiを再起動するず、webmordに衚瀺されたすが、APIのバグのため、これはただ䞍可胜です。 ram_allocation_ratioデフォルトは1を倉曎するず、同じ問題が発生したす。 䜿甚可胜なすべおのメモリが2回䜿い果たされた堎合ram_allocation_ratio = 2に、仮想マシン内のアプリケヌションがどのように動䜜するかを理解する必芁がありたす。 しかし、これがOpenVZでどのように機胜するかを思い出しお、このパラメヌタヌをあたり倉曎するこずはお勧めしたせん。



次の最埌の蚘事では、同じクラりド内で耇数のハむパヌバむザヌKVM + Dockerを構築する方法、HeatずMuranoを䜿甚しお仮想マシンの構成を自動化する方法、およびクラりド。



All Articles