nutanixってナニ?

37
Nutanix ってナニ? 「ハイパーコンバージド」言われてもワカランのじゃ フランちゃんウフフなしすてむえんじにあ おおかわ かずひと

Upload: kazuhito-ohkawa

Post on 07-Jan-2017

2.876 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Nutanixってナニ?

Nutanix ってナニ?

「ハイパーコンバージド」言われてもワカランのじゃ

フランちゃんウフフなしすてむえんじにあ

おおかわ かずひと

Page 2: Nutanixってナニ?

Nutanix = Software

分散ファイルシステムで実装された仮想ストレージソフトウェア

ハイパーバイザ上で仮想マシンとして動作する -> CVM(Controller VM)

VMware, Hyper-V, Acropolis(KVM)をサポート

主にCassandraを核として実装

あと付随した管理ツール群

Page 3: Nutanixってナニ?

NutanixのHardware

ソフトウェア実装なのでx86サーバならなんでも動く、本家はSupermicro製

Page 4: Nutanixってナニ?

DELLも公式サポート (レノボ?知らない子ですね…)

Page 5: Nutanixってナニ?

無料のOSS版(Nutanix CE)もある

ほとんどの機能が試せる(らしい)

イメージとして配布(*.img)

パブリッククラウドで動かそうとしている猛者も… (http://www.adventar.org/calendars/1124)

個人的に評価中

URL

http://www.nutanix.com/products/commu

nity-edition/

Page 6: Nutanixってナニ?

じゃあどうやって動いとるの?

Nutanixの構成について

Page 7: Nutanixってナニ?

構成イメージ その1

SATA DOM 16G HDD SSD

Hyper Visor

(ESXi, Hyper-V, KVM)

HyperVisorはSATA DOMに格納されていて

ここから起動する

※DOMは非冗長化 CVM

Page 8: Nutanixってナニ?

構成イメージ その2

SATA DOM 8G HDD SSD

Hyper Visor

(ESXi, Hyper-V, KVM)

• CVMはHV上で起動

• SSDとHDDを制御する

• HVと仮想スイッチで

接続してSANを構成

CVM

iSCSI

NFS

※192.168.5.0/32

決め打ち 分散仮想ストレージ領域

vSwitch

Page 9: Nutanixってナニ?

構成イメージ その3

SSD

Hyper Visor

クラスタ構成で冗長性を確保

CVM

HDD SSD HDD SSD HDD SSD HDD

Hyper Visor Hyper Visor Hyper Visor

CVM CVM CVM

分散仮想ストレージ領域

Page 10: Nutanixってナニ?

構成イメージ その4

1ノード論理構成

SATA DOM

boot

Page 11: Nutanixってナニ?

クラスタの構成

クラスタコンポーネントをしっかり覚えておくと障害対応のときに役立つはず…

Page 12: Nutanixってナニ?

クラスタを構成するコンポーネント

Page 13: Nutanixってナニ?

Zeus

全クラスタの設定を参照、変更する

Apache Zookeeperで実装されている

Page 14: Nutanixってナニ?

Zookeeper

クラスタ構成情報を管理する(コーディネーションサービス)

最低3ノードで構成され、そのうちの1

台が自動的にリーダーになる

リーダーノードは構成情報を各ノードにレプリケーションする

リーダーがダウンした場合は、自動的に次のリーダーが選出される

Page 15: Nutanixってナニ?

Stargate

全てのI/O操作を実行している ◦ HVからのI/O要求

◦ ローカルディスクのI/O処理

MedusaのメタデータとZeusの設定情報に依存しているので、これらが止まるとノードのI/O障害となる

ZookeeperがStargateの障害を検知した場合は自動で切り離される(=CVMとしての機能停止、Data Path Redundancyモードに)

Page 16: Nutanixってナニ?

Cassandra

Cassandra…う…頭が…

という記憶しかないけど、あれは当時使ってた人たちのせい(白目

メタデータを管理するデータベース

Zeusに構成管理を依存している

NutanixではMedusa経由でアクセスしている

個人的経験では何かあった時深淵の闇を見ることができるソリューション

Page 17: Nutanixってナニ?

Curator

メタデータのメンテナンスを実行している

◦ リバランス

◦ スクラビング

◦ データ整合性の確認

Curatorクラスタの中で1台がマスターとなりジョブやタスクの管理権限を受け持つ

MapReduceアルゴリズム

クラスタ障害時にデータの再分布もする

Page 18: Nutanixってナニ?

Medusa

Cassandra のメタデータにアクセスするためのフロントエンド

各ノードで起動している

Page 19: Nutanixってナニ?

Prism

UIとAPIを提供するゲートウェイ

各ノードで実行されているため、どこのCVM IPにつなげても使うことができる

Page 20: Nutanixってナニ?

全コンポーネントのステータス確認 nutanix@$ cluster status

2015-07-29 13:52:28 INFO cluster:1691 Executing action status on SVMs

The state of the cluster: start

Lockdown mode: Enabled

CVM: Up

Zeus UP [8475, 8488, 8489, 8490, 8498, 8511]

Scavenger UP [8717, 8734, 8735, 8763]

ConnectionSplicer UP [8784, 8799]

Hyperint UP [8805, 8817, 8818, 8819, 8825, 8829]

Medusa UP [8959, 8973, 8974, 8989, 9154]

DynamicRingChanger UP [9829, 9841, 9842, 9862]

Pithos UP [9844, 9857, 9858, 9885]

Stargate UP [9861, 9882]

Cerebro UP [10211, 10223, 10224, 10252]

Chronos UP [10226, 10238, 10239, 10245]

Curator UP [10312, 10332, 10333, 10450]

Prism UP [10342, 10355, 10356, 10392]

AlertManager UP [10358, 10370, 10371, 10442]

Arithmos UP [10373, 10385, 10386, 10476]

StatsAggregator UP [10389, 10409, 10410, 10472]

SysStatCollector UP [10411, 10431, 10432, 10526]

Page 21: Nutanixってナニ?

Nutanixクラスタの冗長 頭の運動・・・

Page 22: Nutanixってナニ?

いろいろ考えられる故障パターン

ノード障害

ブロック障害

上記の多重障害

Page 23: Nutanixってナニ?

ノード障害

障害

Page 24: Nutanixってナニ?

ブロック障害

障害

Page 25: Nutanixってナニ?

耐障害性

リング状トポロジー構造でレプリケーション ◦ 空き容量と必要なブロック/ノード数があれば永遠にレプリカを作成し続けられる

データの複製レベルで耐障害性を高められる ◦ Replication Factor 2(2 Replication)

◦ Replication Factor 3(3 Replication) CVMに24Gのメモリ割り当てが必要

最低5ノード

コンテナごとにRF3にするか選択できる(重要なやつだけとか可)

近々RF2コンテナをRF3にアップグレードできる変更がはいる予定

ブロック障害を考慮した Block awareness

Page 26: Nutanixってナニ?

Block awareness

ブロック障害からデータを保護する機能

Web Consoleから確認可能

ブロックのHW構成が大きく違うと有効にできない場合あり

◦ 容量差33%以内, 同じストレージ階層(HDD, SSD)

構成可能な状態でクラスタを組むと自動で有効になる

最低3ブロック必要(※Nutanix推奨最小構成)

Page 27: Nutanixってナニ?

RF2 + Block awareness

A B B A

障害

Page 28: Nutanixってナニ?

RF3 + Block awareness

障害

A B B A A B

障害

Page 29: Nutanixってナニ?

障害後

生き残ったノードでレプリケーションを再開する

リソースが足りなくなった時点でレプリケーションをあきらめる

◦ この時点で耐障害性がなくなるので早めに交換する

Page 30: Nutanixってナニ?

容量計算

RAID DISK = ノード/ブロックと同じ考え

異なる点は耐障害のための容量もユーザに見えてしまうこと

実効容量の目安

◦ RF2 クラスタの総容量 /2

◦ RF3 クラスタの総容量 /3

Page 31: Nutanixってナニ?

むずかしいからざっくりまとめ

要求する冗長レベルを上げていくとストレージ利用効率が低下する(使える実用量が減る)

障害発生時のために空き容量を残しておくという考え

どこまでの障害ケースを許容するかポリシーを決める

ポリシー内でのストレージ運用を行うことを徹底する

リングトポロジ構造、自動リバランスなのでユーザはノードやブロックの組み合わせを考える必要なし

データは保護されるけど、使えるCPUリソースは当然減るのでサイジングの際はこっちも重要

Page 32: Nutanixってナニ?

リングトポロジ構造

Page 33: Nutanixってナニ?

Block awareness フロー

Page 34: Nutanixってナニ?

Nutanixのバックアップ機能

システムバックアップはできません

Page 35: Nutanixってナニ?

ストレージバックアップのみサポート

VMのイメージ単位のバックアップのみサポート(ストレージだしね…)

◦ Local Backup

◦ Async DR(ゆっくりレプリケーション)

◦ Metro Availability(リアルタイム、制限かなり厳しめ)

◦ Cloud Connect(AWS/Azure) ※アクティブサイトして運用はできない

◦ VAAIやVSS等、標準的な機能は大体サポート

システムバックアップ等OSの中身の場合は従来通りバックアップソフト/サーバが必要

Page 36: Nutanixってナニ?

個人的に気になったこと 大型建造で武蔵と大和と大鳳が連続できてやばい

Page 37: Nutanixってナニ?

本番サイト(Nutanix) <-> 災対サイト(Nutanix CE)という使い方はできるのか(コスト重視)

スプリットブレインは起こり得るのか?

クラスタ外バックアップのベストプラクティス?

Acroporis どうなんじゃろ

Hyper-V どうなんじゃろ

CVMのための制約が慣れるまでめんどくさい

楽できるようなものでもないけどストレージ、 SANを1から覚えるよりかは学習コスト低めな印象

値段高い

ノード数が少ないと分散しているメリットが少ない

外部ストレージを無くすことではなく、固定ストレージレスによる拡張性がNutanixの真価である

過去のNOSでデータ不整合の不具合など起きているので一抹の不安は残る