Nutanix CE 2.0 よろず相談所


Userlevel 4
Badge +9

Nutanix CE よろず相談所が長くなってきた&Nutanix CE 2.0 がリリースされたいい機会なので、こちらに移行したいと思います。


81 replies

keroro9です。

無事、問題解決しましたので報告します。

やはり原因は、L3スイッチに適切な設定が入っていないことでした。

 

アライドテレシス X510系のL3スイッチでわざわざ1GインターフェースをLACPし、

かつ、CVM/AHVの稼働するVlanを指定する際に必要なconfigは下記のとおりです。

※タイプミスでchannel-groupが10になっていますがこのままにしています。

 

! 一台目
interface port1.0.13-1.0.16
 switchport
 switchport mode trunk
 switchport trunk allowed vlan add 2-200,1000-1009,1254
 channel-group 2 mode passive
 lacp timeout short
! 二台目
interface port1.0.17-1.0.20
 switchport
 switchport mode trunk
 switchport trunk allowed vlan add 2-200,1000-1009,1254
 channel-group 10 mode passive
 lacp timeout short
! 三台目
interface port1.0.21-1.0.24
 switchport
 switchport mode trunk
 switchport trunk allowed vlan add 2-200,1000-1009,1254
 channel-group 1 mode passive
 lacp timeout short
! PortChannel設定
interface po1-2,po10
 switchport
 switchport mode trunk
 switchport trunk allowed vlan add 2-200,1000-1009,1254
!

@smzksts 

keroro9です。半分自己解決しましたので、書き込みます。

調査していたところ、L3スイッチの設定が抜けているようようでした。

利用しているスイッチ(X510)のマニュアル中

https://www.allied-telesis.co.jp/support/list/switch/x510/rel/5.4.2a-0.1/001763a/docs/overview-23.html

「各種コマンドでLACPチャンネルグループを指定するときは、「poX」(XはLACPチャンネルグループ番号)という形式の名前を指定してください。」という記載があり、LACPを組んだ仮想IFでさらにTrunkの設定を入れなければならないようです。

 

仮で構築したPrism上で仮想マシンを作成し、vlan1001を当てたNICを接続したところ、全く疎通せず。これはスイッチが怪しいということでマニュアルを読んでいたところ...でした。Configが似ているCiscoのL2スイッチのconfigを適当にコピーしたのが敗因です。(そのconfigも間違っているかも)

 

LACPで束ねた仮想IFに対して入れるべき設定はおそらく下記のとおりと思われます。

!
interface po1-2,po10
 switchport
 switchport mode trunk
 switchport trunk allowed vlan all
 switchport trunk native vlan none
!

 

今日はだいぶ遅くなってしまったので、明日クラスタを壊す前提で試してみる予定です。

@smzksts

 

お世話になっております。またもやマニアックな質問を申し訳ありませんが、情報お持ちでしたらよろしくお願いいたします。

トラブル内容:
AHVとCVMが稼働するvlanを、初期状態のvlan1ではなく、vlan1000に変更したい。しかし、実際にvlanを指定したところCVM・AHVに疎通が取れなくなりました。

 

意図:
自宅のネットワークですが、これまではRTX1200配下の単一セグメント(192.168.50.0/23)のみで運用していました。

 

これに加え、L3スイッチを追加してNutanix用のネットワークを構築しようとしています。
正直、自宅ネットワークでここまでやるのは過剰かもしれませんが、L3スイッチの設計としては以下のように考えています

 

VLAN1:      ホームネットワーク(192.168.50.0/23)
VLAN1000:Nutanix検証環境:10.254.0.0/24

 

※VLAN1000配下の機器は日中電源をOFFにする想定。

    L3スイッチに様々な検証NWを集約する想定です。

※仕事ではないので、設計は場当たり的です。
この構成で、具体的な設定や注意点についてアドバイスいただけると助かります。

 

試した手順
①Nutanix Communityを3クラスタでデプロイ。

    Communityのインストーラはvlan idを指定できない。

    仮にL3スイッチのvlan1(10.254.0.1)をAHV・CVMのデフォルトGWとして設定。

    後ほどVlan1000へ移動する作戦。
    インターネットに抜けるため、本来のvlan1(192.168.50.0/23)をvlan 150に収容

    下記のconfig(抜粋)を投入。各クラスタ1本づつLANケーブルを接続。

 

>>config
interface port1.0.13-1.0.28
 switchport
 switchport mode trunk

interface vlan1
 ip address 10.254.0.1/24

interface vlan150
 ip address 192.168.51.2/23

<<

 

②LACP設定

   Network→vs0のuplink設定を変更しact-actにする。
   全クラスタローリングアップデートしたことを確認しスイッチにLACP設定を投入
   AHV/CVMの疎通を確認。

 

>>config
interface port1.0.13-1.0.16
 switchport
 switchport mode trunk
 channel-group 2 mode passive
 lacp timeout short
interface port1.0.17-1.0.20
 switchport
 switchport mode trunk
 channel-group 10 mode passive
 lacp timeout short
interface port1.0.21-1.0.24
 switchport
 switchport mode trunk
 channel-group 1 mode passive
 lacp timeout short
interface port1.0.25-1.0.28
 switchport
 switchport mode trunk

<<

 

③Vlan id 変更

    https://blog.ntnx.jp/entry/2020/11/20/014320 様を参考に

    cluster stopしてから
    AHV上でovs-vsctl set port br0 tag=1000
    CVM上でchange_cvm_vlan 1000を実行

 

④L3スイッチ 設定変更

   L3スイッチと疎通が取れなくなるため、vlan1のアドレスを消去

>>Config

interface vlan1
 no ip address
<<


vlan1000にアドレスを付与

>>Config

interface vlan1000
 ip address 10.254.0.1/24

«

 

結果:

④の時点で10.254.0.0/24がvlan1→1000に移動したと思っており、CVM・AHVと

疎通できる想定でしたが、残念ながらCVM/AHV→L3スイッチ(10.254.0.1)への

疎通が成立しません。

 

楽しく一日溶かしてしまいました(笑)どなたかナレッジお持ちでしたら、ヒントだけでもいただけますと幸甚です。おそらく、Communityはその辺いじらずにvlan1で運用せよ。がベストプラクティスな気はしております...

@hashy0917 

sda    8:0    0   1.8T  0 disk   DATA
sdb    8:16   0   477G  0 disk   AHV
sdc    8:32   0 465.8G  0 disk  CVM
AHVは一番小さくしなくてはいけないという問題じゃないですかね。
redditでgruftさんが書いているのを見ました。
あと関係ないと思いますがportの順番も見ているそうなのでDATAは一番下に持っていったほうが良いかもしれません。

お世話になっております。

 

現在、NutanixCE2.0のインストールを試みておりますが、以下のエラーが発生し、インストールが進みません。

 

```

ERROR SVM imaging failed with exception: Traceback (most recent call last):

  File "/root/phoenix/svm.py", line 673, in image

    self.deploy_files_on_cvm(platform_class)

  File "/root/phoenix/svm.py", line 309, in deploy_files_on_cvm

    shell.shell_cmd(['mount /dev/%s %s' % (self.boot_part, self.tmp)])

  File "/root/phoenix/shell.py", line 53, in shell_cmd

    raise StandardError(err_msg)

StandardError: Failed command: [mount /dev/None /mnt/tmp] with error: [mount: special device /dev/None does not exist]

out: []

 

INFO Imaging thread 'svm' failed with reason [None]

FATAL Imaging thread 'svm' failed with reason [None]

```

 

ストレージ構成は以下の通りとなっております。

 

```

[root@phoenix ~]# lsscsi

[4:0:0:0]    disk    ATA      HUA723020ALA640  A870  /dev/sda

[5:0:0:0]    disk    ATA      SPCC Solid State 9A0   /dev/sdb

[6:0:0:0]    disk    ATA      CT500MX500SSD1   023   /dev/sdc

[10:0:0:0]   cd/dvd  ATEN     Virtual CDROM    YS0J  /dev/sr0

[root@phoenix ~]# lsblk

NAME MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT

sdb    8:16   0   477G  0 disk

sr0   11:0    1   5.2G  0 rom  /mnt/iso

sdc    8:32   0 465.8G  0 disk

sda    8:0    0   1.8T  0 disk

```

 

sdaにはData、sdbにはHypervisor、sdcにはCVMをインストールする想定となっております。

 

また、インストーラーの起動時に自動的にインストール先が指定されており、

自動的に指定された場合は、sdaにはData、sdbにはCVM、sdcにはHypervisorという

構成となり、この構成の場合はエラーが発生せず、インストールが完了します。

 

情報をお持ちの方がいれば、ご教示いただけると幸いです。

@keroro9 

お忙しい中、コメントありがとうございます。色々試したのですが、br0とbr1のブリッジ間でのAHVとCVM通信に支障がきたして、結局このパターンはNGでした。

その後、RHEL VMのKVM(ブリッジではNAT利用で問題回避)を利用して、NestedなNutanix CEの導入までは問題なくいったのですが、頻繁にCVMがダウンしたりでPrism Elementへの接続が不安定で、検証とはいえ実用に耐えない状況で、こちらの方式も諦めました。

現在、手元にESXi8.0のDVD ISOがあったので、評価版でNetstedなNutanix CEを試すところです。ただ、VMC環境のVSANを利用したデータストアは、VMCの物理ESXi上でroot権限で設定変更しないとVMFSフォーマットできないので、別のRHEL VMをNFSサーバとしてデータストア提供して試しています。また、仮想ESXiにvNICを2枚搭載させ、2枚目はRHEL VMをNATルータとして、Nutanix CEのAHVとCVMが外部ネットワークと疎通できるように回避させる予定です。

この手の環境で、Nutanix CEを利用されるケースはニッチかと思いますが、この方式で問題解決したら、また情報共有させていただこうと思います。
​​​​
​​​​
​​

@kfujita0731 お世話になります。急に本業がバタついており返信が遅くなりました。拝見した環境だとなかなか難しそうな気がします。(頑張ればうまくいきそうなんですが)私も社内の仮想環境の端っこで似たような構成を試そうとしたことは有るのですが結局実施せずでナレッジがなく申し訳ありません。

 

個人的には、1ノードクラスタでもいいので16コア以上、メモリは128G位の実機環境があればそれなりに評価もできるかなぁ。という感じです。上の投稿で3ノードで構築したのは、仮想マシン10台以下位なら商用並みの快適さで使えないかという意図もあります。

 

お求めの回答でなく申し訳ありません...。

VMC環境の空きESXiホスト上に、NutanixCE(AHV/CVM)を1台デプロイしたのですが、
ポートグループのセキュリティポリシー(無差別モード/偽装転送)を許可設定に変更ができないため、
Prismへの疎通が不可なのですが、何かナレッジ等はお持ちでしょうか?

デプロイした仮想マシンのvNICをもう1個追加し、AHVが利用するOpen vSwitch Bridge(br0)のアップリンクのvNICと別で、新たにCVMのvnet0が利用するOpen vSwitch Bridge(br1??)を作成し、そちらのアップリンクのvNICとして割り当てれば、何とか上記制約でも利用できるのでは?と考えているのですが・・

Broadcom問題を契機に、初めてNutanixを触ってみる段階で、
ここまでカスタマイズしてNutanixを試用するのもなんですが、
もし既知ナレッジとして、何かベストな方法があればご教示いただけますと幸いです。

AHV側のIPの9440ポート宛てをiptablesのnatテーブルとip_forward有効にて、
CVM側にInternal側の192.168.5.2:9440へフォワードする方法も試してみたのですが、うまくいかず・・

Userlevel 4
Badge +9

 @keroro9 さん

Nutanixに関してはスイッチレスの直結構成はNGとなっています。 

基本の構成としてはCVMの管理系通信もストレージ通信も同じ物理系等を使う(今は分割しようと思えばできますがデータローカリティの恩恵で通信帯域が輻輳しづらいのでそもそもあまりやらない)、また、Nutanixははじめから無停止でのスケールアウトを強く意識して設計されたプロダクトなので、そのあたりが犠牲になる直結は考慮していない、というあたりが背景かなと思います。

ちなみに、データローカリティがあるおかげで、Readに関しては1GbEでも結構速度が出ます。一方、Writeに関しては必ずノードまたぎの通信が発生するので10GbEにするとその恩恵が得られます。

@smzksts  お世話になっております。keroro9です。お返事いただきありがとうございます。公式ドキュメントにある通り、VSwitchが有効ではない状況だったのですね。初心者には直せない&直す意味がなさそうというところでいったん撤退し再インストールしました。とりあえず1GのLACPで様子見かなあと思っております。(それ以前に、CPUがチープな3ノード目のCVMの負荷が高く全体的にストレージのスループットが伸びてない気がするのでそこから手を付けようかなというところです)

 

ちなみに世間のAzure Stack HCIではバックエンド通信のスイッチレス構成も取れますが、Nutanixではいかがでしょうか。一時期安売りしていたArubaスイッチがタッチの差で完売してしまい、しばらく10Gスイッチを入手できる見込みがなくなってしまい。うまくvSwitchの構成を組んでしまえばスイッチレスももしかして、と思った次第でした。

 

ネットワーク構成はさておき、早速Flowを体験したりと楽しんでおります。得られたノウハウは今後の提案に生かしていきたいと思っております。よろしくお願いいたします。

Userlevel 4
Badge +9

@keroro9 さん

Bondの設定変更にたどり着けたとのこと、ご報告ありがとうございます!

後出しになってしまいますが、最初にUplink Configurationが表示されていなかった状態は、Virtual Switchが有効な状態になっていなかったのかと思います。

https://portal.nutanix.com/page/documents/details?targetId=AHV-Admin-Guide-v6_5:ahv-cluster-nw-hosts-bond-match-config-ahv-t.html

のドキュメントに

If there are inconsistent bond configurations across hosts before the migration of the bridges, then after the migration of bridges, the virtual switches might not be properly deployed. To resolve such issues, you must manually configure the bonds to make them consistent.

⇒ブリッジのマイグレーション前にホスト間でボンドの構成に一貫性がない場合、ブリッジのマイグレーション後に仮想スイッチが正しく配置されない可能性があります。このような問題を解決するには、ボンドを手動で構成して一貫性を持たせる必要があります。

という記載がありまして、場面としては微妙に違いますが、これと同じ状況だったのかなと。(ブリッジのマイグレーション=Virtual Switch機能の有効化)

keroro9です。さらに追記です。各サーバの増設したNICをすべて外し、デフォルトの1Gbps*4のみの環境にそろえて再デプロイしました。その後Settings→Network Configuration→Virtual SwitchからBond typeの変更にたどり着き、Uplink Configurationにたどり着くことができました。

 

詳細はわからないのですが先ほどはVirtual Switch自体が空欄になってしまっていたような気もしており、いったん「NICは全部そろえとけ」ということだけ覚えておこうかなあと思っている次第です。

keroro9です。追記です。

とりあえずNICのチーミングはあきらめ仮想マシンを作成→電源ONしてみましたが

Operation failed: NoHostResources: No host has enough available resources for VM 84b54348-d9e7-4ca2-b451-845c6118de65. のメッセージでVMの起動ができませんでした。リソースは潤沢にあるはずなので何かがおかしいようです。

 

インストール直後(クラスタ生成前)のCVMで触ったのは、bond0-upからNICを外し、別のNICをつける工程

 

ovs-vsctl add-bond iface br0-up eth2 # eth2の追加

ovs-vsctl del-bond iface br0-up eth0 #eth0の削除

ovs-vsctl del-bond iface br0-up eth1 #eth1の削除

 

だけです。

 

しかし、Settings→NetworkConfigurationからInternal Interfacesを見てみるとeth0,1を利用しようとしている?ように見受けられます。不用意にbond0-upの設定をいじってしまい微妙にシステムが不安定になっているような気がしております。各サーバで増設してあるNICをいったん取り外して再セットアップしてみようかなあと考えているところです。

smzksts 様

お世話になっております。通知を見逃しておりお返事が遅々としてできず。

私も風呂に入りながら似たようなことを考えており、まあロマンだなあロマン。と割り切ってしまいました(笑)。以前sandy-ep世代で試したときはPrismの画面遷移が遅くひいひい言っていましたが、さすが第4世代のXeonですのでまともに動きます。

 

もしご存じでしたら、下記教えていただけませんでしょうか。

NICの調整について、

https://infraapp.blogspot.com/2020/12/ahv.html

を参考にしています。というのも、先日某所で投げ売りしていたArubaの10Gスイッチの在庫が引き当らず、1Gスイッチでの代用が必要になったためです。

 

そこで、1G*4でLACPを組みたく方法を探しております。

セットアップ時、複数のNICがあるとお目当てのNICにAHV,CVMのNICが当たってくれないため、まず

ovs-vsctl add-bond iface br0-up eth2 # eth2の追加

ovs-vsctl del-bond iface br0-up eth0 #eth0の削除

 

といったコマンドで適当に調整して1NIC構成でクラスタを作成しております。

その後、PrismのNetwork設定画面からUplinkの設定をLACP Active-Activeにしたいのですが

添付画像の右上にあるはずのUplink configrationボタンが見当たりません。

(もしかして、bond0-upに1NICしか追加していないからでしょうか)

 

3台のサーバ、微妙にNIC構成が異なっており、10G-NICが乗っていたりいなかったりするため、3台とも微妙にNICのナンバリングが異なっています。(引っこ抜けばいいのですが)

 

CLIでの設定でも構いませんので、bond0-upをLACPで構成する方法があれば、ご教示いただけますと幸いです。

 

 

 

Userlevel 4
Badge +9

@keroro9 さん

3ノード構成の場合、ゲストVMの起動時や稼働中に、負荷状況や空きリソースを見てAHVのADS(VMwareでいうDRS的な機能)が配置先を自動で決定するので、管理系のモノも、大きいノードで稼働した状態になるかもしれません。とはいえあまり細かいことを気にせずに済むのがAHVの良さなので、ホストアフィニティ等で稼働場所を縛ってしまうよりも自動制御にお任せしてしまえばいいかな、と思っています(※本番環境だと上で動かすソフトのライセンス絡みでホストアフィニティで縛ったりもしますが)。

CE環境をお楽しみ頂く上でのオススメとして、CEはブートデバイスの故障やソフトウェアアップグレードに失敗してしまった場合の回復が難しいところがあるので、データを失いたくないゲストVMがある場合にはHYCUなどのバックアップソリューションでクラスタ外に逃がしておくとを宜しいかと思います。
(※ちなみに、なぜHYCU名指しかというと、HYCUはNutanix CE環境でのライセンス無しでの利用が公式に認められている(ユーザーガイドに明記)からです。神。)

smzksts 様

keroro9です。早々のお返事ありがとうございます。

 

>高スペックが2台あるので楽しめそうですね…!

はい、久々にニヤついております(笑)
iLOからログインし状況を確認していたところ、3台ともCPUも絶妙に異なっており、同環境にそろえるにはさらなる投資が必要...ちょっと無理かな~と思っていたところでしたので、情報ありがとうございます。とりあえず行けそうとわかりましたので、追加の散財はやめておきます。

 

(正確には14C28T*2、12C24T*2、6C6T*1の3台でした。14コアCPUはE5-2690 v4なのですが爆熱でファンがうるさいです。)

 

VMに関しては高スペックノードに作ればよく、各ノード96GB程度は確保できるかなあと思っているところです。足りなければ192GB程度まで増設を検討してます。

 

メモリ・CPUは適当な一方、クラスタ破壊テストをやりたいという観点でデータのみRF2を維持したく、データだけ偏りがないように同条件のディスクで考えておりました。つまり、#3はRF2を維持するだけのためのノードという感じになります。ついでになにか管理系のVMをデプロイするか。くらいのノリです。(この辺の認識間違っておりましたらご指摘くださいませ。)

 

ちょうど先ほどの書き込みを行ったあたりで待っていたサーバが到着しました。

ボーナス月ですし楽しんでいこうかと思います。

Userlevel 4
Badge +9

@keroro9 さん

デモ用環境とのことなので、HAリソースを確実に…とかを考える必要がなければ3台のスペックを均一に揃えなくても大丈夫です。

高スペックが2台あるので楽しめそうですね…!

お世話になっております。keroro9です。

仕事のほうで、Nutanixを触る機会が今後増えそうということでNutanix熱が再燃してきました。

ヤフオクに張り付き、下記の構成で考えております。※あくまでデモ用途です。

◇構成

 DL360 gen9*3ノード

 #1 128GB mem、12C24T*2=24C48T CPU

 #2 128GB mem、12C24T*2=24C48T CPU

 #3 64GB mem 6C6T CPU

 各ノード、ディスクは同条件で実装予定。

 Intel DC 400GB*2+15k SAS 600G*2 =4disk/nodeで考えてます。

 

◇ご質問

#1,2はおそらくほぼ同条件で構成できそうです。しかし、

#3ノードのみ調達の問題でスペック・メモリ量が少なくなります。

RF2で構築することを考えています。1ノードDownを考えるとメモリだけでも同容量でそろえたほうがよいでしょうか。#3にはPrismCentral専用かなあ。。。と考えております。

 

アドバイスいただけますと幸甚です。

 

@smzksts   さん

お世話になっております。ご確認いただき、ありがとうございます。

新しいノード(ノードD)がMatadata Ringに参加できていないとのことについて、
コマンド「ncli host ls」でノードDのHost StatusがNEWであることが確認できました。

また、ノードDをMatadata Ringに参加させるコマンド「ncli host enable-metadata-store id=20261765」を実行したら、
Error: Host ad1ddd3c-7f73-49c0-9159-83d1da82c841 is not in a ready state to enable metadata store」が
表示されて、参加できません。

上記のような状況だと、ご教授いただいた方法のようにクラスタを組み直すしかないとの認識でよろしいでしょうか?

Userlevel 4
Badge +9

@xiaoyan さん

正直まだ「これだ」という答えにはたどり着けていないのですが、状態としては↓と同じような状況でしょうか(新しいノードがMetadata Ringに参加できていない)。
https://next.nutanix.com/discussion-forum-14/nutanix-ce-expand-cluster-stuck-42646

ディスクの利用率が高くない状況であれば、いったんノードCのHWを直してから1ノードクラスタとしてセットアップして、そちらにAsync DRでゲストVMを逃がしてから、A,B,Dでクラスタを組み直す、といったやり方がいちばんクリーンかもしれません。

@smzksts さん
お世話になっております。

>参考までにncliコマンドのエラーメッセージの全文を(元の英文そのまま)を貼り付けていただくことは可能でしょうか?(スクショでも構いません)
下記画像をご確認ください。エラーメッセージ本文にある「20261765」はノードDのidです。

お手数をおかけしますが、よろしくお願いいたします。

Userlevel 4
Badge +9

@xiaoyan forceでも外れないとなると難しい問題な気がしています…。
参考までにncliコマンドのエラーメッセージの全文を(元の英文そのまま)を貼り付けていただくことは可能でしょうか?(スクショでも構いません)

有力情報を必ずしもご提供できるとは限らないのですが、社内で検索を掛けてみようと思っています。
(なにも有力情報が無かった場合は何卒ご容赦ください…)

@smzksts さん

お世話になっております。ご返事いただき、ありがとうございます。

KB-2379 にあるような ncli host rm-start コマンドをお使いでしょうか?

はい、ncli host rm-start コマンドでforceオプションを付けても同じエラーが出たため、削除できません。

Userlevel 4
Badge +9

@xiaoyan さん

> CLI経由でノードCを強制的に削除しようとしましたが、同じエラーが表示されて、うまくいきませんでした。

については KB-2379 にあるような ncli host rm-start コマンドをお使いでしょうか?

あるいは、コマンドリファレンスにあるようなforceオプションも付けても実行されない状況でしょうか。もしまだでしたらお試し頂くことで解消される可能性はあるかと思います。(とはいえリスクのあるオプションではあるため、悪影響の出る可能性も踏まえ自己責任でという点は何卒ご了承ください…)

https://portal.nutanix.com/page/documents/details?targetId=Command-Ref-AOS-v6_6:acl-ncli-host-auto-r.html

Userlevel 4
Badge +9

 @knhrk さん

私自身が経験したことのあるエラーではないため回答できていなかったのですが、たとえばLCMでNKE(Karbon)のバージョンを上げてからデプロイしていただくと解消する可能性はあるかと思います。
あるいは、40文字以下となっていますが、NKE(Karbon)クラスタ名をさらに短くしてみる、というのはひとつの手かと思います(社内で情報を見ていたところ17文字以下にすれば通るかもしれないという話を見かけました)。

Reply