= Linux と Windows からのマルチプロトコルアクセス
:toc:
:icons:
:linkattrs:
:imagesdir: ../resources/images


== 概要

このセクションでは、Linux および Windows インスタンスから *Amazon FSx for NetApp ONTAP* ボリューム上のデータへのマルチプロトコルアクセスについて説明します。

LinuxインスタンスからNFSプロトコルを使用してボリュームをマウントします。次に、同じボリューム上に *_SMB share_* を作成し、Windowsインスタンスからマップします。WindowsクライアントとLinuxクライアントから同じデータにアクセスできるONTAPのマルチプロトコル機能を体験します。

NOTE: ボリュームに設定されているセキュリティ スタイルは、ユーザ認証の際に強制されるパーミッションを決定します。ボリュームのセキュリティスタイルは、SVM のルートボリュームのセキュリティスタイルから継承されます。SVM の作成時に、Unix、NTFS、または混合のセキュリティスタイルを選択できます。

ボリュームがUNIXセキュリティスタイルを使用していても、ONTAPのマルチプロトコルの性質上、ユーザー資格情報を適切に認証および認可することができれば、SMBクライアントはデータにアクセスすることができます。 セキュリティスタイルは、ONTAPがデータへのアクセスを制御するために使用するパーミッションの種類と、パーミッションを変更できるクライアントの種類を決定するだけです。

* セキュリティスタイルを *Unix* に設定すると、Unixスタイルのパーミッションが適用されます。これは、Unixホストからボリュームを管理する場合や、データボリュームが主にUnixベースのサーバーからアクセスされる場合に使用します。
* Windowsからボリュームを管理している場合や、データが主にWindowsアプリケーションで使用されている場合は、セキュリティスタイルを *NTFS* に設定してください。
* セキュリティスタイルが *mixed* に設定されている場合は、ファイルやディレクトリにUnixまたはNTFSのパーミッションを使用することができます。有効なパーミッションは、どちらのタイプのクライアントが最後にパーミッションを変更したかに基づいて決定されます。


== 所要時間

NOTE: このセクションを完了するのに約 5 分かかります。


== ステップ-バイ-ステップ ガイド (Linux Instanceでのボリュームのマウント)

=== Linuxインスタンスにボリュームをマウントする

IMPORTANT: 続ける前に全てのステップを読んでください。

//image::xxx.gif[align="left", width=600]

. *FSx for ONTAP Workshop Linux Instance* のSSH接続に戻ります。
+
TIP: セッションが応答しないなどタイムアウトした場合は、セッションウィンドウを閉じて、新しいセッションを作成してください。link:https://console.aws.amazon.com/ec2/[Amazon EC2] コンソールに戻ります。*FSx for ONTAP Workshop Linux Instance* という名前のインスタンスの横のラジオボタンをクリックします。*Connect* ボタンをクリックします。 AWS Systems Manager を使用した接続 - *Session Manager* タブを選択し、Connect ボタンをクリックして、ブラウザでセッションを開きます。(*推奨*). その他の手段、 ターミナルクライアントを使ったSSH接続 - *SSH client* タブを選択し、表示されたSSHコマンドの例をコピーし、Close をクリックします。** ターミナルアプリケーションを開き、コピーしたSSHコマンドを貼り付けます。 ** プロンプトに従ってインスタンスへSSH接続します。
+
. 以下のコマンドで、NFSボリュームがマウントされているかどうかを確認します。
+
[source,bash]
----
mount | grep  nfs

----
+

. 何かNFSボリュームがマウントされていますか？

NOTE: ここでは何もボリュームがマウントされていないはずです。

. 以下のスクリプトをテキストエディターにコピーし、必要ならマウントポイントを任意のものに入れ替えて下さい。
+
[source,bash]
----
MOUNTPOINT=/fsx
sudo mkdir ${MOUNTPOINT}
sudo mount -t nfs ${NFSENDPOINT}:/vol1 ${MOUNTPOINT}
----
+
. マウントポイントに *user:group* を設定するため以下のコマンドを実行します。 *Session Manager* からのSSH接続を使用している場合は、*ssm-user:ssm-user* のコマンドをコピーします。*Terminal* からのSSH接続を使用している場合は、*ec2-user:ec2-user* のコマンドをコピーします。
+
[source,bash]
----
sudo chown ec2-user:ec2-user ${MOUNTPOINT}

or 

sudo chown ssm-user:ssm-user ${MOUNTPOINT}

----
+
. *FSx for ONTAP Workshop Linux Instance* のSSH接続に戻ります。
+
TIP: SSH接続がタイムアウトした場合（セッションが応答しない場合など）、SSH接続ウィンドウを閉じて、新たに接続してください。
+
. 先ほどコピーしたスクリプトを貼り付けます。

. 以下のコマンドでファイルシステムが正常にマウントされたか確認します。
+
[source,bash]
----
mount | grep ${MOUNTPOINT}
----
+
. マウントに使用されたNFSのバージョンは何ですか？

. 異なるNFSバージョンでファイルシステムをマウントするには？

. 以下のコマンドを実行して、ファイルシステムを *NFS version 3* でマウントするか、デフォルトのマウントオプションをカスタマイズします。
+
[source,bash]
----
V3MOUNT=/fsxnfsv3
sudo mkdir ${V3MOUNT}
sudo mount -t nfs -o vers=3 ${NFSENDPOINT}:/vol1 ${V3MOUNT}
----
+
. ファイルシステムが正常にマウントされたことを確認するために、以下のコマンドを実行します。
+
[source,bash]
----
mount | grep ${V3MOUNT}
----
+
* NFSバージョン3でボリュームがマウントされていることが確認できます。
+
. 以下のコマンドでNFSv3マウントをアンマウントします。
+
[source,bash]
----
sudo umount ${V3MOUNT}
----
+
. 以下のスクリプトをコピーして実行すると、NFSマウントに新しいディレクトリとファイルが作成されます。
+
[source,bash]
----
DIRNAME=multiprotocol
mkdir ${MOUNTPOINT}/${DIRNAME}
echo "This file is used for multi-protocol access demo" >> ${MOUNTPOINT}/${DIRNAME}/multiprotocol-demo.txt
cat ${MOUNTPOINT}/${DIRNAME}/multiprotocol-demo.txt
----
+


== ステップ-バイ-ステップ ガイド (CIFS share の作成)

IMPORTANT: 続ける前に全てのステップを読んでください。

. *FSx for ONTAP Workshop Linux Instance* のSSH接続に戻り、プライマリファイルシステムのファイルシステム管理エンドポイントにSSH接続して、 *ONTAP CLI* セッションを開きます。
+
[source,bash]
----
ssh ${ADMINUSER}@${MGMTENDPOINT}
----
+
. CIFS/SMBプロトコルを使用した *multiprotocol* ディレクトリをWindowsクライアントと共有するための *CIFS share* を作成します。
+
[source,bash]
----
vserver cifs share create -vserver svm08 -share-name multiprotocol -path /vol1/multiprotocol
----
+
. 以下のコマンドを実行して、共有が正常に作成されたかどうかを確認します。
+
[source,bash]
----
vserver cifs share show -vserver svm08
----
+
. *multiprotocol* という名前で *_CIFS share_* としてエクスポートされた */vol1/multiprotocol* が表示されているはずです。

TIP: NTFSまたはMIXEDセキュリティスタイルでSVMを作成した場合、Windows EC2インスタンスからCIFS共有を作成することができます。（*fsmgmt.msc* を実行 -> Action から *Connect to another computer* を選択し、SVM の SMB DNS name を入力。 *shares* を右クリック-> *new share* で、手順に従って新しい共有を作成します。）


== ステップ-バイ-ステップ ガイド (Windows インスタンスへの共有のマップ)

=== Windows インスタンスへ共有をマップする


. *File Explorer*　を起動します。

. *This PC* を右クリックし、*Map network drive...* を選択します。

. 以下の情報を使用してファイル共有をマップします。:
+
[cols="3,10"]
|===
| *Drive*
a| Z:

| *Folder*
a| これは *multiprotocol* share のUNCパスです。link:https://console.aws.amazon.com/fsx/[Amazon FSx] コンソールに戻り、*primary* ファイルシステムのリンクをクリックし、*Storage virtual machines* タブを選択します。*SVM Name* をクリックし、 UNCパスの前半部分をコピーするため、*SMB DNS name* の隣のショートカット image:copy-to-clipboard.png[align="left",width=20] をクリックします。 *SMB DNS Name* に *\multiprotocol* を付け足し、multiprotocol share へのUNCパスを完成させます。 (例 \\svm08.fsxontap.com\multiprotocol)

| *Reconnect at sign-in*
a| チェックしたままにします。

| *Connect using different credentials*
a| チェックを外したままにします。
|===
+
. *Z:* ドライブの *File Explorer* ウィンドウに、LinuxインスタンスのNFSマウントポイントに作成された *multiprotocol-demo.txt* ファイルが表示されているはずです。

. ダブルクリックでファイル *multiprotocol-demo.txt* を開き、ファイルの内容が読めるかどうかを確認します。

== 次のセクション

下のボタンをクリックすると、次のセクションに進みます。

image::data-protection.png[link=../05-data-protection/, align="left",width=420]




