ETERNUS NR1000 F2750 初期セットアップ

# ETERNUS NR1000 F2750 初期セットアップ

## 前提条件、前提情報

- モデルは「ETERNUS NR1000 F2750」(NRB2750A5)
- HAペア構成
- DiskShelf無し
- 利用用途は、VMware vSphere ESXi向けデータストア領域(NFSマウント)

## 目的

- ESXからデータストア見れた。わーい。

## 開梱と初期ケーブルの結線

- 同梱されているSASケーブル2本は、Node-1:0aとNode-2:0a、Node-1:0bとNode-2:0bを結線。某OnTAP公式ではNode-1とNode-2で、a-b,b-aで結線しているけど、この点はSupportに確認してください。
- 同梱されているDACケーブル2本も、Node-1:e0aとNode-2:e0a、Node-1:e0bとNode-2:e0bを結線。
- 両Nodeのe0Mを適当なHUBに結線する。

## 両Nodeの電源投入
まず、最初はシリアルコンソールで接続する。
ターミナルソフトで、ボーレートを`115200`で設定し、Node-1側に接続する。
Node-1側とは、背面に向かって左側になる。S/Nのナンバーでなんとなくわかるはず。概ね連番なので、若い方だと思われ。

## コンソールログイン
`admin`となっている。
パスワードは、F社サイトからドキュメントを開くと記載がされているので、ここでは割愛。

## 最初に打ってみたいコマンド

- version
- cluster show
- network interface show
- system services firewall policy show
- security login show

上記は、設定変更をするものではなく、あくまで設定の確認を行うもの。
`version`では、OnTAPのバージョンが確認出来る。
`cluster show`では、クラスタの状態が判る。ほぼ初期設定のままで、クラスタ関連は定義されている為、いずれも`true`が返る。
`network interface show`では、設定されているIPが判る。Node間接続したそれぞれのe0aとe0bで`169.254`が定義され、疎通が取れていることが見れる。
また、e0Mに定義されたIPがわかる。初期IPのままでもいいんじゃないかと思う。たまに。
`system services firewall policy show`は、ファイアウォールの設定状況が見れる。
`security login show`では、各ユーザに与えられている権限が見れる。あと、接続方法の許可されているものとか。
sshやwebアクセスもそうだが、SPへの接続が出来るIDも見れる。
SPっていうのは、Service Processor(SP; サービスプロセッサ ) のこと。あれこれ出来る優れもの。割愛。

## 私は初期IPなんぞ嫌いだから、変更

`network interface modify`で設定変更する。
シリアルコンソール接続している場合なら、Node-1の方でまとめてやってしまえる。
注意したいのは、clusterがNode-1を向いているというところ。

```
network interface modify -vserver cluster1 -lif cluster_mgmt -address 10.1.1.73 -netmask 255.255.255.0 -home-node cluster1-01 -home-port e0M -status-admin up -failover-policy broadcast-domain-wide -firewall-policy mgmt -auto-revert true -dns-zone none -failover-group Default
network interface modify -vserver cluster1 -lif cluster1-01_mgmt1 -address 10.1.1.74 -netmask 255.255.255.0 -home-node cluster1-01 -home-port e0M -status-admin up -failover-policy local-only -firewall-policy mgmt -auto-revert true -dns-zone none -failover-group Default
network interface modify -vserver cluster1 -lif cluster1-02_mgmt1 -address 10.1.1.75 -netmask 255.255.255.0 -home-node cluster1-02 -home-port e0M -status-admin up -failover-policy local-only -firewall-policy mgmt -auto-revert true -dns-zone none -failover-group Default
```

## 一旦停止して起動してみて
IP設定を行ったので、clusterを一度停止し、起動してみる。
変更したIPになっていれば、あとはweb画面から設定すればよい。

停止する場合は、以下のようにする。
なお、HA構成が有効化されているので、HA構成を止め、停止するように指示されるが、その点は任意。
加えて以下の方法は、データ通信が途絶えるので、あくまでメンテナンス時やデータ通信が無い場合のみ実施するように。

```
system halt -node cluster1-02 -inhibit-takeover true
system halt -node cluster1-01 -skip-lif-migration-before-shutdown true -inhibit-takeover true
```

上記は、Node-1側でコンソール接続しており、最初にNode-2側を停止。その後にNode-1側を停止する。

あと、Node-1で停止コマンドを入力すると、強制的にログアウトされる。
その後、以下のようなメッセージが表示される。
`LOADER-A`が表示されれば、無時停止。

```
cluster1::> system halt -node cluster1-01 -skip-lif-migration-before-shutdown true -inhibit-takeover true

Warning: Rebooting or halting node "cluster1-01" in an HA-enabled cluster with
         takeover inhibited may result in a data serving failure and client
         disruption. To ensure continuity of service, do the following before
         rebooting or halting the node: Disable cluster HA using the command:
         "cluster ha modify -configured false".
         To transfer epsilon to the partner node, use the following commands
         (privilege:advanced):
                cluster modify -epsilon false -node <local-node>
                cluster modify -epsilon true -node <partner-node>
Do you want to continue? {y|n}: y


login: Terminated
.
Uptime: 54m21s
System halting...
BIOS Version: 11.5
Portions Copyright (C) 2014-2018 NetApp, Inc. All Rights Reserved.

Initializing System Memory ...
Loading Device Drivers ...
Configuring Devices ...

CPU = 1 Processor(s) Detected.
  Intel(R) Xeon(R) CPU D-1557 @ 1.50GHz (CPU 0)
  CPUID: 0x00050664. Cores per Processor = 12
32768 MB System RAM Installed.
SATA (AHCI) Device: SV9MST6D120GLM41NP

Boot Loader version 6.0.6
Copyright (C) 2000-2003 Broadcom Corporation.
Portions Copyright (C) 2002-2018 NetApp, Inc. All Rights Reserved.

LOADER-A>
```

なお、HAの有効化無効化は以下のとおり。

```
#無効化
cluster ha modify -configured false
#有効化
cluster ha modify -configured true
```

HAを無効化すると、片方のNodeにイプシロンが割り当てられる。
このイプシロンとは？というのは、公式HPを見てもらえると助かる。
https://library.netapp.com/ecmdocs/ECMP1719718/html/GUID-EFE1DEF4-8B87-4C4A-8E4E-C6C79F760710.html
つまり、奇数Nodeの場合は、マスターノードが選定しやすいが、偶数Nodeの場合は選定が困難である為、それを補填する仕組みがイプシロンとでも覚えておくとよいかも。

HAを無効化にするケースとしては、片方のNodeだけ停止したい、再起動したい場合、以下の手順を踏む。

1. HAの無効化する。
2. HAを無効化した場合、イプシロンがいずれかのNodeに割り当てられる。
3. 停止したい再起動したいNodeにイプシロンがあれば、他のNodeに移行する。なければ、次へ。
4. 停止したい再起動したいNodeをテイクオーバー無しで停止、再起動する。
5. HAを有効化する。
6. イプシロンがいずれも、全Nodeで`false`になる。

手順は、公式HPを参照。
https://library.netapp.com/ecmdocs/ECMP1659142/html/GUID-DFAB972D-1F50-412B-A1DB-C7FC5A80163D.html

この辺りのコマンドを覚えておくとよい。

```
set -privilege advanced
cluster modify -node Node1 -epsilon false
```

## ちなみに、コンソール表示で毎回スペースキーを押したくない

```
rows 0
```

`ter len 0`的なもの。

## さて、Web画面で設定しよう
割愛。

## CLIで設定しよう。

- aggr(アグリケート)の作成

```
# 作業前確認
aggr show
aggr create -aggregate aggr1_data_cluster1_01 -diskcount 9 -node cluster1-01 -disktype SAS -raidtype raid_dp -chksumstyle block -maxraidsize 9
aggr create -aggregate aggr1_data_cluster1_02 -diskcount 9 -node cluster1-02 -disktype SAS -raidtype raid_dp -chksumstyle block -maxraidsize 9
# 作業後確認
aggr show
```

- SVMの作成、そしてNFSの有効化

```
# 作業前確認
vserver show
vserver create -vserver svm1_cluster1_aggr1dc1_01 -rootvolume svm_root -language C.UTF-8 -aggregate aggr1_data_cluster1_01
vserver create -vserver svm1_cluster1_aggr1dc1_02 -rootvolume svm_root -language C.UTF-8 -aggregate aggr1_data_cluster1_02
# 作業後確認
vserver show
# SVMで有効化されているプロトコルの確認
vserver show-protocols
# NFSとCIFSを追加
vserver add-protocols -vserver svm1_cluster1_aggr1dc1_01 -protocols nfs, cifs
# NFSを削除
vserver remove-protocols -vserver svm1_cluster1_aggr1dc1_01 -protocols nfs
```

- 作成したSVMにアグリケートの割り当て、そして作成できるボリュームの最大数を指定

```
vserver add-aggregates -vserver svm1_cluster1_aggr1dc1_01 -aggregates aggr1_data_cluster1_01
vserver add-aggregates -vserver svm1_cluster1_aggr1dc1_02 -aggregates aggr1_data_cluster1_02
vserver modify -vserver svm1_cluster1_aggr1dc1_01 -max-volumes 10
vserver modify -vserver svm1_cluster1_aggr1dc1_02 -max-volumes 10
```

- svadmin ユーザのロック解除

```
security login password -username vsadmin -vserver svm1_cluster1_aggr1dc1_01
security login unlock -username vsadmin -vserver svm1_cluster1_aggr1dc1_01
security login password -username vsadmin -vserver svm1_cluster1_aggr1dc1_02
security login unlock -username vsadmin -vserver svm1_cluster1_aggr1dc1_02
```

- SVMにネットワーク設定(LIFを割り当て)

```
network interface create -vserver svm1_cluster1_aggr1dc1_01 -lif svm1c1aggr1dc101_lif01 -role data -data-protocol nfs -home-node cluster1-01 -home-port e0c -address 10.1.1.76 -netmask 255.255.255.0 -status-admin up -auto-revert true
network interface create -vserver svm1_cluster1_aggr1dc1_02 -lif svm1c1aggr1dc102_lif01 -role data -data-protocol nfs -home-node cluster1-02 -home-port e0c -address 10.1.1.77 -netmask 255.255.255.0 -status-admin up -auto-revert true
```

- NFSサービスの有効化(SVMにおけるNFSサービスの有効化)

```
vserver nfs create -vserver svm1_cluster1_aggr1dc1_01 -v3 enabled
vserver nfs create -vserver svm1_cluster1_aggr1dc1_02 -v3 enabled
```

- SVMにおけるNFSサービスのdefaultエクスポートポリシーを変更

```
# このPolicyの設定は、どのクライアントでもNFSアクセスが可能なPolicyなのであしからず。
vserver export-policy rule create -vserver svm1_cluster1_aggr1dc1_01 -policyname default -clientmatch 0.0.0.0/0 -rorule any -rwrule any -allow-suid true -allow-dev true -ruleindex 1 -protocol nfs
vserver export-policy rule create -vserver svm1_cluster1_aggr1dc1_02 -policyname default -clientmatch 0.0.0.0/0 -rorule any -rwrule any -allow-suid true -allow-dev true -ruleindex 1 -protocol nfs
```

- クライアントがエクスポートポリシーを参照出来るようにする

```
# NFS v3のみ
vserver nfs modify -vserver svm1_cluster1_aggr1dc1_01 -showmount enabled
vserver nfs modify -vserver svm1_cluster1_aggr1dc1_02 -showmount enabled
```

- 実際、ESX側がマウントして利用するボリュームを作成

```
volume create -vserver svm1_cluster1_aggr1dc1_01 -volume esxdatastore1 -language C.UTF-8 -aggregate aggr1_data_cluster1_01 -size 10TB -state online -type RW -junction-path /esxdatastore1
volume create -vserver svm1_cluster1_aggr1dc1_02 -volume esxdatastore2 -language C.UTF-8 -aggregate aggr1_data_cluster1_02 -size 10TB -state online -type RW -junction-path /esxdatastore2
```

- Windows10端末からNFSボリュームがマウント出来るかどうか、検証

```
# NFSv3で以下のコマンドを実行しておかないとマウントできないので注意
vserver nfs modify -vserver svm1_cluster1_aggr1dc1_01 -v3-ms-dos-client enabled
vserver nfs modify -vserver svm1_cluster1_aggr1dc1_02 -v3-ms-dos-client enabled
```

Windows10からのNFSマウントする方法は、以下のとおり。
ちなみに、事前に「NFS Client」を有効化しておくこと。

```
mount 10.1.1.76:/esxdatastore1 X:\
```


```
C:\WINDOWS\system32>mount 10.1.1.76:/esxdatastore1 F:\
F: は 10.1.1.76:/esxdatastore1 に正常に接続しました

コマンドは正常に終了しました。

C:\WINDOWS\system32>mount

Local    Remote                                 Properties
-------------------------------------------------------------------------------
F:       \\10.1.1.76\esxdatastore1              UID=-2, GID=-2
                                                rsize=65536, wsize=65536
                                                mount=soft, timeout=0.8
                                                retry=1, locking=yes
                                                fileaccess=755, lang=SHIFT-JIS
                                                casesensitive=no
                                                sec=sys

C:\WINDOWS\system32>
```

## VMware vSphere ESXiからのマウント
出来た。
データストアの新規追加ウィザードに沿って、マウントする。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/403714/39e0bd27-1d1f-6ee3-f8d6-4c8a23ecd8fa.png)

見れました。
わーい。