Amazon FSx for Windows File Server คืออะไร? การแนะนำฟังก์ชันล่าสุดของ AWS ในปี 2022

นี่เป็นบทความแปล ที่มีเนื้อหามาจากบทความภาษาญี่ปุ่นของ Classmethod, Inc. ในหัวข้อ「AWS再入門ブログリレー2022 Amazon FSx for Windows File Server編」 หากผู้อ่านสนใจอ่านเนื้อหาต้นฉบับสามารถอ่านได้ที่ลิ้งค์ "บทความต้นฉบับ" ด้านล่าง เนื้อหาในบทความนี้การอธิบายบางอย่างจะถูกปรับให้เข้าใจง่ายขึ้นทำให้แตกต่างจากต้นฉบับในบางจุด
2022.07.19

สวัสดีครับทุกคน อาโอยากิ ครับ

รายการนี้จะเขียนเกี่ยวกับ AWS ปี 2022 ฉบับเบื้องต้น โดยฝ่าย Consulting ของบริษัทเราเอง นี่เป็นบทความที่จะมาเล่าเกี่ยวกับเนื้อหา AWS Service มาเล่าใหม่อีกครั้งว่ามีอะไรถูกอัพเดทอะไรบ้างแล้ว
แบบละเอียด/เจาะลึกตั้งแต่เบสิกพร้อมคำอธิบาย โดยเหล่าสมาชิกที่เคยเขียนบทความเหล่านี้มาแล้ว

เหมาะสำหรับผู้ที่ต้องการเริ่มเรียนเกี่ยวกับ AWS หรือผู้ที่ใช้งาน AWS อยู่แล้ว แต่ต้องการหาความรู้ใหม่ว่าปี 2022 มีการอัพเดทอะไรบ้าง หากคุณใช่บุคคลเหล่านี้
ทางผู้เขียนก็หวังว่าบทความนี้จะเป็นประโยชน์สำหรับคุณครับ

งั้นก็ไปเริ่มกันเลยครับ Theme ในวันนี้คือ "Amazon FSx for Windows File Server" ครับ

FSx for Windows File Server คือ?

"Amazon FSx for Windows File Server" คือ AWS Storage Service ชนิดนึง ที่ในบรรดา Storage Service ทั้งหลาย เจ้านี่ถูกแบ่งอยู่ในประเภท "File storage" ครับ

โดยถ้าจะให้สรุปจุดเด่นของเจ้านี้ในคำๆเดียวคือ "มีความเข้ากันได้ดีมากๆ กับ Windows" ตามชื่อของมันนั่นเองครับ

FSx for Windows File Server จะไม่ใช่ "Storage Service ที่มีความเข้ากันได้กับ Windows ได้ในระดับนึง" เช่นพวกที่ใช้ Samba
แต่จะเป็น "Storage Service ที่มีความเข้ากันได้กับ Windows ได้ในระดับ Native" โดยภายในเจ้าตัวนี้จะมี Windows Server ทำงานอยู่จริงๆครับ

ความเข้ากันได้ระดับ Windows Native

"การมีความเข้ากันได้ระดับ Windows Native" หมายถึงการมีองค์ประกอบแบบด้านล่างที่จะเขียนต่อไปนี้

  • มีการใช้ "NTFS" สำหรับ Flie System
  • มีการใช้ "SMB" สำหรับ File sharing protocol
  • มีการใช้ Active Directory เป็นพื้นฐานสำหรับ authentication และ authorization

File Server ที่ใช้ Protocol ที่รองรับ SMB เช่นพวก Samba นั้น
ต่อให้ File sharing protocol มีการเข้ากันได้กับ SMB ก็ตาม
Flie System จะมีการใช้ "ext" ของ Linux ซึ่งไม่รองรับ "Extended attributes" เฉพาะทางของ NTFS
ทำให้อาจไม่ได้รับความเข้ากันได้หรือรองรับอย่างสมบูรณ์

ผลลัพท์ทำให้ Windows Server หรือ Windows Client ที่มีอยู่ใช้ File server
อาจจะเกิดปัญหาเรื่องความเข้ากันได้ที่ไม่สมบูรณ์ทำให้ไม่สามารถเปิด Application แล้ว Application ไม่ทำงาน หรือการแสดงผลบางอย่างไม่ถูกต้องเกิดขึ้นได้

สามารถใช้ฟังก์ชันที่เกี่ยวข้องกับ File server ของ Windows

FSx for Windows File Server สามารถใช้ฟังก์ชันที่เกี่ยวข้องกับ File server ของ Windows ได้เนื่องจากมี Windows Server ทำงานอยู่จริงๆภายในตัวมันเอง ซึ่งก็ได้แก้ฟังก์ชันด้านล่างนี้เป็นต้น

  • Volume shadow copy service
  • Storage quota
  • Data deduplication, อื่นๆ

File Server ที่ใช้ Protocol ที่รองรับ SMB เช่นพวก Samba นั้น
อาจจะไม่สามารถใช้ฟังก์ชันพวกนี้ได้
หรือต่อให้ใช้ได้ ก็อาจจะมีวิธีการตั้งค่าหรือความรู้สึกในการใช้งานที่ต่างออกไป

หากท่านผู้อ่านอยากที่จะย้ายมาใช้ File storage service บน cloud แล้วรู้สึกสนใจฟังก์ชันเหล่านี้ที่ Windows server ให้บริการ หรือใช้ฟังก์ชันเหล่านี้ตั้งแต่ใน System เดิมแล้ว ทางผมก็แนะนำให้ลองใช้ FSx for Windows File Server กันดูครับ

ต่างกับ Storage service อื่นๆ ยังไง

Block storage / object storage / file storage

storage service ของ AWS สามารถแบ่งเป็น Category ใหญ่ๆได้ดังนี้ครับ

  • Block storage
  • Object storage
  • File storage

Service ที่ถูกแบ่งให้อยู่ใน Category ของ Block storage คือ "EBS (Elastic Block Store)" ครับ

EBS จะถูกสร้างขึ้นเมื่อสร้าง EC2 Instance โดยสามารถเริ่มใช้งานได้ด้วยการ Mount และ Format จากระบบปฏิบัติการที่ทำงานบน EC2
(โดยการ Mount และ Format จะถูกทำงานโดยอัตโมัติ ทำให้เราอาจจะใช้งานไปแล้วโดยที่ไม่รู้ตัว)
EC2 กับ EBS จะเชื่อมกันแบบ 1 ต่อ 1 ทำให้เราไม่สามารถใช้ EC2 หลายตัวเชื่อมกับ EBS ตัวเดียวกันได้
นอกจากนี้เรายังไม่สามารถเชื่อมต่อระหว่างกับ On-premises หรือ Internet server clients กับ EBS โดยตรงได้อีกด้วย

ตัวอย่างสถานการณ์ที่เหมาะจะใช้ Block storage:

  • จำเป็นต้องใช้ Storage ที่มีขนาดไม่น้อยสำหรับการประมวลผล EC2
  • จำเป็นต้องใช้ "Local Storage" ที่ได้รับการยอมรับบน OS ในสถานการณ์ของความเข้ากันได้ของ Application
  • ไม่จำเป็นต้องแชร์ Storage กับ EC2 ตัวอื่นๆ (กรณีจะแชร์กับ Storage อื่นให้ใช้ storage service อื่นๆ)

Service ที่ถูกแบ่งให้อยู่ใน Category ของ Object storage คือ "S3 (Simple Storage Service)" ครับ นอกจากนี้หากจะจัดเก็บไฟล์แบบถาวร(Archive) ก็มี Service ที่ชื่อว่า "S3 Glacier" ให้ใช้ครับ

แต่เดิม S3 เป็นบริการ Online storage service ที่ใช้ Internet เพื่อเชื่อมต่อเข้าใช้งาน
แต่ในปัจจุบันนอกจากการใช้ Internet เพื่อเชื่อมต่อเข้าใช้งานแล้ว ยังสามารถใช้งานผ่าน Service ต่างๆ AWS เช่น EC2 หรือการใช้งานจาก On-premises environment โดยเชื่อมกับ Direct Connect หรือ VPN

ตอนที่ทำการเชื่อมต่อกับ S3 จะใช้ HTTPS-based "REST API" หรือ ใช้ SDK หรือ CLI Command ที่มี REST API เป็นรากฐานครับ

มีการใช้ GUI tools จาก third party ที่ทำให้สามารถควบคุมแบบ Drag & Drop ได้ แต่นั่นเป็นการเรียก REST API จากภายใน ทำให้เป็นบริการจัดเก็บข้อมูลที่มีกลไกที่แตกต่างจาก "File Storage" ที่อธิบายไว้ในด้านล่างนี้

ตัวอย่างสถานการณ์ที่เหมาะจะใช้ Object storage:

  • ต้องการจัดเก็บข้อมูลที่ใช้โดย Application ในราคาประหยัด
  • การใช้งานจากแอปพลิเคชันใหม่ที่สร้างบน AWS (โดยเฉพาะ Architecture แบบ Serverless)
  • ตอนย้ายแอปพลิเคชันที่มีอยู่ไปยัง AWS สามารถเปลี่ยนเป้าหมายการประมวลผล file access จาก storage ที่มีอยู่ไปที่ S3 ได้

Service ที่ถูกแบ่งให้อยู่ใน Category ของ File Storage คือ "EFS (Elastic File System)" และ "FSx for Windows File Server" ครับ

File storage service ของ AWS นั้นจะให้บริการตาม protocol การแชร์ไฟล์ที่ใช้โดยระบบปฏิบัติการและผลิตภัณฑ์ที่มีอยู่ เช่น "NFS" ที่ใช้กับ Linux/Unix หรือ "SMB" ที่ใช้กับ Windows
File storage service จะมีการจัดเตรียมบริการสำหรับแต่ละโปรโตคอลพื้นฐาน และสามารถเลือกบริการที่เหมาะสมกับวัตถุประสงค์ได้

S3 เป็น Storage service ที่มีความยืดหยุ่น มีความสามารถในการปรับขนาดและความน่าเชื่อถือสูง แต่ในการย้าย File server จาก On-premises มาใช้ อาจจะจำเป็นต้องมีการแก้ไขแอปพลิเคชันเนื่องจากความแตกต่างใน protocol และลักษณะการจัดเก็บ (Latency, Throughput, ฯลฯ) รวมไปถึงแอปพลิเคชันอาจจะไม่สามารถทำงานได้อย่างมีประสิทธิภาพได้
แต่ แต่ละ service ใน File storage service นั้นจะมี protocol เดิม ตาม Base ของมันอยู่แล้ว
นอกจากนี้ ลักษณะการจัดเก็บยังได้รับการปรับแต่งให้เหมาะกับวัตถุประสงค์ในการใช้งาน ทำให้ง่ายต่อการโยกย้ายจาก On-premises มาใช้

File storage service นั้นมีกฎพื้นฐานที่จำเป็นต้องใช้ VPC ทำให้สามารถเชื่อมต่อจาก On-premises server หรือ clients โดยผ่าน Direct Connect หรือ VPN ได้
แต่ในการกลับกัน นั่นทำให้มันไม่เหมาะสำหรับการเชื่อมต่อจาก Internet

ตัวอย่างสถานการณ์ที่เหมาะจะใช้ File storage:

  • ต้องการแชร์ข้อมูลกับ EC2 หลายตัว
  • ต้องการแบ่งปันข้อมูลระหว่าง Container จำนวนมากที่ทำงานบน ECS และ EKS
  • ต้องการย้ายจากไฟล์เซิร์ฟเวอร์ที่สอดคล้องกับ NFS หรือ SMB ที่ใช้ใน On-premises
  • ไม่ต้องการแก้ไขการประมวลผล File Access ตอนย้ายแอปพลิเคชันที่มีอยู่ไปยัง AWS

การเลือก File storage service

Service ที่ถูกแบ่งเป็น "File storage" จะมีตามด้านล่างนี้ (มี EFS + FSx อีก 4 Series)

Service จุดเด่น
EFS (Elastic File System) ไฟล์เซิร์ฟเวอร์ที่เข้ากันได้กับโปรโตคอล NFS ที่ใช้โดย Linux / Unix
FSx for Windows File Server ไฟล์เซิร์ฟเวอร์เข้ากันได้กับ Windows แบบ Native
FSx for Lustre ไฟล์เซิร์ฟเวอร์ประสิทธิภาพสูงเหมาะสำหรับแอปพลิเคชัน เช่น HPC หรือ Machine Learning
FSx for NetApp ONTAP ไฟล์เซิร์ฟเวอร์ที่เข้ากันได้กับระบบ "ONTAP" ที่จัดทำโดย Enterprise network storage vendor มีชื่อว่า "NetApp"
FSx for OpenZFS ไฟล์เซิร์ฟเวอร์เข้ากันได้กับ High-performance file system ของ Linux ที่มีชื่อว่า "OpenZFS"

โดย Service เหล่านี้จะแบ่งออกได้ใหญ่ๆ ตามด้านล่างนี้

  • Service ที่เหมาะกับการใช้งานมาตรฐานทั่วไป
    • EFS
    • FSx for Windows File Server
  • Service ที่เหมาะกับการใช้งานเฉพาะทาง
    • FSx for Lustre
  • Service ที่ให้บริการ File storage ที่มีฟังก์ชันและประสิทธิภาพสูง
    • FSx for NetApp ONTAP
    • FSx for OpenZFS

"EFS" เป็น Service ที่ให้บริการ File server ที่มีความเข้ากันได้กับ "NFS protocol" ที่ถูกใช้ใน Linux/Unix
"FSx for Windows File Server" เป็น Service ที่ให้บริการ File server ที่มีความเข้ากันได้กับ "SMB protocol" ที่ถูกใช้ใน Windows
โดยพื้นฐานแล้วเราจะเลือก Service ตาม Server หรือ Client ว่าใช้ Linux/Unix หรือใช้ Windows
โดยหากมีการใช้ทั้ง Linux/Unix และ Windows ผสมกัน รวมทั้งเป็นสภาพแวดล้อมที่ต้องการแชร์ข้อมูลระหว่างทั้งสอง ให้เลือกเอาอย่างใดอย่างนึงเป็นหลักระหว่าง "EFS" และ "FSx for Windows File Server" โดยสามารถพิจารณาถึงฟังก์ชันของแต่ละ OS และ Third Party และดูว่า "ฝั่งไหนมี Server หรือ Client ใช้งานมากกว่า" "ฝั่งไหนจะเกิดปัญหาน้อยกว่า" ครับ

"FSx for Lustre" เป็น Service ที่ได้รับรากฐานมาจาก "Lustre" ที่เป็นระบบกระจายไฟล์ Large-scale cluster computing หรือ Supercomputer
AWS คาดหวังไว้ว่าให้ Service นี้ดำเนินการประมวลผลแบบกระจายโดยใช้ หลายๆ Cluster node เช่น HPC(High-Performance Computing) หรือ Machine Learning
ด้วยจุดประสงค์เหล่านี้ทำให้มันมี storage performance ที่สูงมาก(latency, throughput, IOPS, etc.)

"FSx for NetApp ONTAP" เป็น บริการนี้มีรากฐานจากระบบปฏิบัติการ "ONTAP" ที่ใช้ NAS เฉพาะ ที่ใช้ในผลิตภัณฑ์ของ "NetApp" ซึ่งมีส่วนแบ่งการตลาดสูงในตลาด NAS ระดับ enterprise
จุดเด่นของ FSx for NetApp ONTAP คือ สามารถรองรับได้ทั้ง NFS และ SMB protocol และยังรองรับการเชื่อมต่อจาก iSCSI
FSx for NetApp ONTAP สามารถใช้ ฟังก์ชั่นที่เกี่ยวข้องกับ File server ที่มีความสามารถสูงเหมือนกับผลิตภัณฑ์ของ "ONTAP" On-premises (เช่น "Deduplication" "Data compression" "Backup และ replication โดยใช้ snapshots" เป็นต้น)
ด้วยเครื่องมือการจัดการ NetApp จะสามารถจัดการฟังก์ชันเหล่านี้รวมถึงผลิตภัณฑ์ ONTAP On-premises ได้ด้วย

"FSx for OpenZFS" เป็น Service ที่มีรากฐานมาจาก Open-source version ของ File system "ZFS" สำหรับ Solaris
เป็นมาตรฐานที่ค่อนข้างใหม่ในบรรดาระบบไฟล์ที่เหมือน Unix และมีข้อดีหลายประการในแง่ของประสิทธิภาพและการทำงานเหนือระบบไฟล์ที่เหมือน Unix ที่มีอยู่

"FSx for NetApp ONTAP" และ "FSx for OpenZFS" อาจถูกนำมาเปรียบเทียบกับ "EFS" และ "FSx for Windows File Server" เนื่องจากสามารถใช้ protocol NFS และ SMB ได้
แต่จุดที่จะตัดสินว่าจะใช้ตัวไหนอยู่ที่หัวข้อต่อไปนี้

  • ต้องใช้ประสิทธิภาพสูงและคุณลักษณะของ "FSx for NetApp ONTAP" และ "FSx for OpenZFS" หรือไม่
  • คุณผู้ใช้มีความรู้เกี่ยวกับการตั้งค่า ONTAP และ OpenZFS และการจัดการการทำงานหรือไม่
  • ราคาค่าใช้จ่ายคุ้มกับที่จ่ายไปไหม

ถ้าเคลียเงื่อนไขทั้งหมดนี้ "FSx for NetApp ONTAP" และ "FSx for OpenZFS" ก็เป็นตัวเลือกที่น่าสนใจครับ
แต่ถ้าไม่ใช่ เลือกใช้ "EFS" หรือ "FSx for Windows File Server" ก็ใช้ได้ครับ

Client requirements

OS ที่ซัพพอร์ท การใช้งานของ FSx for Windos File Server มีดังนี้ครับ
(แม้จะเขียนไว้ว่า "Client" แต่ก็หมายถึง "Client accessing the file server" และรวมถึง Windows server OS ด้วย)

  • Windows
    • Windows server OS:ตั้งแต่ version Windows Server 2008 ขึ้นไป
    • Windows client OS:ตั้งแต่ version Windows 7 ขึ้นไป
  • Linux
    • Linux version ล่าสุด (ใช้ cifs-utils tool)

นอกจากนี้ยังซัพพอร์ท Client ประเภทอื่นอีก เช่น EC2 Instance(ที่เป็น OS ที่เขียนตามด้านบน) server หรือ client on-permise environment
และยังซัพพอร์ท Service ด้านล่างนี้ในฐานะ Client ด้วย

  • ECS
  • VMware Cloud on AWS
  • WorkSpaces
  • AppStream 2.0

เกี่ยวกับเวอร์ชัน "protocol SMB" ที่รองรับ

เวอร์ชันของ "SMB Protocol" ที่รองรับโดย FSx for Windos File Server คือ "2.0 หรือใหม่กว่า"
SMB 2.0 เป็นเวอร์ชันที่ใช้ใน "Windows Vista" และ "Windows Server 2008" และได้รับการอัพเกรดดังนี้

  • SMB 2.0: รองรับ Windows Vista, Windows Server 2008
  • SMB 2.1: รองรับ Windows 7, Windows Server 2008
  • SMB 3.0: รองรับ Windows 8, Windows Server 2008
  • SMB 3.0.2: รองรับ Windows 8.1, Windows Server 2012 R2
  • SMB 3.1.1: รองรับ Windows 10, Windows Server 2016 (อัพเดทมาเรื่อยๆ Windows 11, Windows Server 2019/2022 ก็รองรับอยู่)

ด้านบนที่เขียนคือ OS ที่ FSx for Windos File Server ซัพพอร์ตอยู่

เวอร์ชั่นที่เก่ากว่า "SMB 2.0" ยกตัวอย่างเช่น "SMB 1.0" หรือ "CIFS" นั้น FSx for Windos File Server จะไม่ซัพพอร์ทครับ
SMB 1.0/CIFS นั้นใช้การเข้ารหัสไฟล์ต่างๆแบบเก่า ทำให้ถูกนับเป็น "โปรโตคอลที่มีช่องโหว่" และถูกหลายๆที่เช่น Microsoft "ไม่แนะนำให้ใช้" ครับ

ประวัติเกี่ยวกับ SMB นั้น สามารถอ่านเพิ่มเติมได้ที่
Server Message Block - Wikipedia

การกำหนดค่าการติดตั้ง

ในตอนการติดตั้ง FSx for Windows File Server มีสิ่งที่ต้องคิดเกี่ยวกับ "โครงสร้าง" ดังต่อไปนี้

  • การเลือกประเภทของ Active Directory เพื่อใช้งาน
  • Multi-AZ / Single-AZ
  • การติดตั้ง "เซิร์ฟเวอร์ควบคุม"

การเลือกประเภทของ Active Directory เพื่อใช้งาน

เมื่อติดตั้งหรือใช้งาน FSx for Windows File Server จำเป็นต้องเลือก Active Directory (AD) เพื่อใช้งานด้วย
โดยมี 2 ประเภทให้เลือกได้แก่

  • (1) AWS Managed Microsoft Active Directory(AD)
  • (2) Self-managed Microsoft Active Directory(AD)

ทั้ง (1) และ (2) ก็ใช้ FSx for Windows File Server โดยเข้าร่วมกับโดเมน Active Directory เพื่อใช้งาน เป็นกลไกที่อนุญาตให้ Windows server และ Client ที่เข้าร่วมโดเมนเดียวกันเพื่อเข้าถึงโฟลเดอร์ที่ใช้ร่วมกันของ FSx for Windows File Server โดยได้รับการพิสูจน์ Authentication / Authorization (Access Permission) จากโดเมน

ในกรณี (1) เฉพาะ "Managed Microsoft AD" เท่านั้นที่ได้รับการสนับสนุนในบริการต่างๆ ที่รวมอยู่ใน Directory Service และไม่สามารถเชื่อมโยงกับ "Simple AD" หรือ "AD Connect" ได้

เป็นไปได้ที่จะเชื่อมโยงกับ Managed Microsoft AD ใน VPC เดียวกันกับ FSx เช่นเดียวกับ "Managed Microosft AD ใน VPC อื่น" และ "Managed Microsoft AD ใน Account อื่น"
และต้องผ่านเงื่อนไขในข้อต่อไปด้านล่างนี้

  • VPC ที่ต่างกัน: VPC เชื่อมต่อด้วยการ Pairing VPC หรือ Transit Gateway
  • Account อื่นๆ: "Directory sharing" ถูกตั้งค่าใน Managed Microsoft AD

ไม่ว่าจะเป็นในกรณี VPC เดียวกัน, VPC ต่างกัน, Account อื่นๆ ก็ต้องมีการสื่อสารบน Port ที่กำหนดระหว่าง FSx for Windows File Server กับ Managed Microsoft AD
รายละเอียดเพิ่มเติม สามารถตรวจสอบได้จาก AWS Document ด้านล่างนี้ครับ
Using Amazon FSx with AWS Directory Service for Microsoft Active Directory - Amazon FSx for Windows File Server

ในกรณี (2) หมายถึงในหัวข้อต่อไปนี้

  • Active Directory domain controller ที่ถูกติดตั้งไว้ใน on-premises environment
  • Active Directory domain controller ที่ถูกสร้างบน EC2 Windows instance

ไม่ว่าจะเป็นกรณีไหน ก็ต้องมีการสื่อสารบน Port ที่กำหนดระหว่าง FSx for Windows File Server กับ Active Directory domain controller
รายละเอียดเพิ่มเติม สามารถตรวจสอบได้จาก AWS Document ด้านล่างนี้ครับ
Prerequisites for using a self-managed Microsoft AD - Amazon FSx for Windows File Server

นอกจากนี้ ในกรณีของ (2) (Self-managed Microsoft Active Directory) จำเป็นต้องตั้งค่าต่างๆ บน domain controller เพื่อจัดการดูแล Active Directory domain โดย FSx for Windows Server
(รายละเอียดจะอยู่ในหัวข้อด้านล่าง)
โดยเฉพาะในกรณีของ "ฝ่ายแนะนำของ FSx for Windows Server" กับ "ฝ่ายจัดการของ Active Directory" นั้นต่างกัน
(เช่น แผนกแรกคือแผนกจัดการโครงสร้างพื้นฐานภายในแผนก และส่วนหลังคือแผนกระบบสารสนเทศทั่วทั้งบริษัท) อาจจะทำให้เกิดปัญหา
เราจึงขอแนะนำให้ตรวจสอบและปรับเปลี่ยนล่วงหน้า

Multi-AZ / Single-AZ

FSx for Windows File Server สามารถเลือก "Multi-AZ" "Single-AZ" ตามกับข้อกำหนดด้านความน่าเชื่อถือ / ความพร้อมใช้งานที่ต้องการได้
โดยโครงสร้างที่สามารถเลือกได้มีตามด้านล่างนี้

  • Single-AZ
    • Single-AZ 1
    • Single-AZ 2
  • Multi-AZ
    • Multi-AZ Single-AZ ทั้ง 1 และ 2 จะเป็นโครงสร้างการวาง Windows file server 1 ตัว ไว้ที่ 1 AZ ครับ
      ด้วยการวางไว้แค่ 1 เครื่อง หากเกิดปัญหาที่ AZ หรือ Resource ต่างๆที่จำเป็นในการใช้งาน File server(Computing, disk, network) แล้ว Component เกิดความเสียหาย จะทำให้ Service ไม่สามารถใช้งานได้

Multi-AZ จะเป็นโครงสร้างการวาง Windows file server 2 ตัว แบ่งไว้ที่แต่ละ AZ 2 AZ ครับ
file server 2 ตัว มีฟังก์ชัน "DFS replication" ของ Windows ทำให้สามารถทำงานพร้อมกันได้ กรณีที่เกิดปัญหาต่างๆ Service จะสามารถใช้ File server อีกตัวที่ไม่ได้รับผลกระทบทำงานต่อไปได้

Single-AZ มี 2 ชนิดคือ "Single-AZ 1" กับ "Single-AZ 2"
โดยในตอนแรก FSx for Windows File Server มีการให้บริการแค่ "Single-AZ 1" แล้วจากนั้นในภายหลังจึงมีการให้บริการ "Multi-AZ" แล้วก็เปิดการให้บริการ "Single-AZ 2' ไปพร้อมๆกัน
ในการเปิดให้บริการ "Multi-AZ" นั้น FSx for Windows File Server ได้มีการปรับโครงสร้างด้านใน แล้ว Single-AZ ที่มีการปรับโครงสร้างด้านในคือ "Single-AZ 2" นั่นเอง นั่นทำให้ ฟังก์ชันที่สามารถใช้งานได้ของ "Single-AZ 1" และ "Single-AZ 2" มีความแตกต่างกัน
โดยสามารถดูรายละเอียดได้ที่ลิ้งค์ด้านล่าง

โดยฟังก์ชันที่ "Single-AZ 1" ทำได้แต่ "Single-AZ 2" ทำไม่ได้นั้นมีแค่ "DFS replication" เท่านั้น (เนื่องจากการมาของ "Multi-AZ" ที่จะเป็นการสร้าง DFS replication ไปอยู่แล้วทำให้ไม่จำเป็นต้องเปิด DFS replication ให้ใช้)
ในการกลับกันฟังก์ชันที่ "Single-AZ 2" ทำได้แต่ "Single-AZ 1" ทำไม่ได้นั้นมี "HDD storage" กับ "CA shares"(จำเป็นเมื่อใช้เป็นที่เก็บข้อมูลสำหรับ SQL Server) ครับ

ทาง AWS ได้ Recommand ให้เราใช้ "Single-AZ 2" หากไม่มีเหตุผลอะไรก็แนะนำให้เลือก "Single-AZ 2" ครับ

การติดตั้ง "เซิร์ฟเวอร์ควบคุม"

หลังจากติดตั้ง FSx for Windows File Server เสร็จ แล้วจะเริ่มใช้งาน ทางเราแนะนำให้ติดตั้ง "เซิร์ฟเวอร์ควบคุม" ครับ

การติดตั้ง FSx for Windows File Server สามารถทำได้ผ่านทาง AWS Management Console แต่หลังจากติดตั้งเสร็จแล้วจะตั้งค่า FSx for File Server ในฐาน "Windows file server" ก็ยังมีหลายหัวข้อที่ไม่สามารถทำได้จาก Management Console
การตั้งค่าในฐานะ "Windows file server" จำเป็นต้องใช้ฟังก์ชันการควบคุม Windows สำหรับ FSx for Windows File Server ครับ

ตามที่เขียนไว้ด้านบน ข้างใน FSx for Windows File Server นั้นมี Windows Server ตัวจริงทำงานอยู่ข้างใน แต่เราไม่สามารถใช้การเชื่อมต่อโดยตรงแบบ "Remote Desktop Connection (RDP)" ได้เพราะว่าเป็น AWS managed services
และด้วยเหตุผลเดียวกันทำให้เราไม่สามารถใช้ Terminal session โดย SSM Session Manager (command console connection) ได้

ในการเข้าไปตั้งค่านั้น เราจำเป็นต้องเตรียม "Windows Machine สำหรับการควบคุม" ไว้ต่างหาก แล้วใช้ "Tool จัดการ System" ของ Windows หรือ "PoweShell" แล้ว Remote connection ไปยัง FSx for Windows File Server เพื่อทำการตั้งค่า

"Windows Machine สำหรับการควบคุม" จำเป็นต้องตรงตามเงื่อนไขด้านล่างต่อไปนี้

  • เข้าร่วมในโดเมน Active Directory เดียวกันกับ FSx for Windows File Server
  • คุณเข้าสู่ระบบในฐานะผู้ใช้โดเมน Active Directory ด้วยสิทธิ์ของผู้ดูแลระบบ FSx for Windows File Server

ถ้าตรงตามเงื่อนไข Windows servers และ clients ของ on-premises environments ก็สามารถใช้งานได้ แต่ว่าเราแนะนำให้สร้าง EC2 Windows Instance ไว้ใน VPC เดียวกันกับ FSx for Windows File Server ไว้ใช้เป็น "เซิร์ฟเวอร์ควบคุม FSx" เพื่อป้องกันปัญหาทาง Network (โดยเฉพาะปัญหาเกี่ยวกับ Direct Connect หรือ VPN) อย่างเช่น เมื่อ on-premies เกิดปัญหาไม่สามารถเข้าเชื่อมต่อ FSx for Windows File Server ได้ แต่เราก็สามารถใช้ EC2 ที่อยู่ใกล้ FSx for Windows File Server ในการเป็น "เซิร์ฟเวอร์ควบคุม" เพื่อตรวจสอบหรือปรับเปลี่ยนการตั้งค่าได้ (แล้วถ้าตอนไม่ใช้งานก็สามารถหยุด EC2 เพื่อลดค่าใช้จ่ายได้)

นอกจากนี้ "เซิร์ฟเวอร์ควบคุม" ยังสามารถใช้งานร่วมกับอย่างอื่นได้ด้วย
ยกตัวอย่างเช่น ในกรณีที่ใช้ Managed Microsoft AD จะมีหลายรูปแบบการติดตั้ง "AD management server" แยกต่างหาก แล้วสมมุติว่ามีการควบคุมสิทธิ์ของผู้ใช้ดูแลระบบในแต่ละฟังก์ชัน โดยฟังก์ชันเหล่านี้จะใส่ไว้ใน EC2 Instance เดียวกันก็ไม่มีปัญหาอะไรครับ
(แต่ไม่ควรที่จะใช้งาน Business เซิร์ฟเวอร์ และ เซิร์ฟเวอร์ควบคุม ร่วมกัน)

วิธีการสร้าง FSx for Windows File Server

สำหรับใครที่อยากเห็นโครงสร้างวิธีการสร้าง FSx for Windows File Server แบบง่าย ดูแล้วเห็นภาพสามารถดูได้ที่บทความด้านล่างครับ
สร้าง File server ด้วย FSx for Windows File Server และ Directory Service(Microsoft AD) | DevelopersIO

ในการจะสร้าง FSx for Windows File Server มี "ขั้นตอน" ดังต่อไปนี้ครับ

  • การเตรียมตัวก่อนลงมือ
    • เตรียมความพร้อมสำหรับ Active Directory(AD)
      • กรณีของ AWS Managed Microsoft Active Directory
      • กรณีของ Self-managed Microsoft Active Directory
    • เตรียมเซิร์ฟเวอร์ควบคุม
    • เตรียม Security Group
    • การใช้งาน "Active Directory Verification Tool" (ในกรณีของ Self-managed Microsoft Active Directory เท่านั้น)
  • การสร้าง Resource
    • การสร้าง File System ของ FSx for Windows File Server
  • การตั้งค่า Resource หลังจากสร้างเสร็จ
    • สร้าง Sharing Folder
    • สร้างสิทธิ์การเข้าถึง NTFS
  • การตั้งค่าฟังก์ชันเสริมต่างๆ
    • การขจัดข้อมูลซ้ำซ้อน
    • Volume shadow copy
    • อื่นๆ

การเตรียมตัวก่อนลงมือ

เตรียมความพร้อมสำหรับ Active Directory(AD)

ขั้นแรก ให้เตรียม Active Directory ที่เชื่อมโยง FSx for Windows File Server

หากเลือก AWS Managed Microsoft Active Directory เป็น AD เพื่อเชื่อมโยง ไม่จำเป็นต้องดำเนินการใดๆ
ตามที่เขียนไว้ในหัวข้อที่แล้วๆ เราจำเป็น "ต้องมีการสื่อสารบน Port ที่กำหนดระหว่าง FSx for Windows File Server กับ Managed Microsoft AD" แล้วจำเป็นต้องเตรียม เตรียม Security Group ที่ตั้งค่าที่เหมาะสมตามขั้นตอนด้านล่างนี้

หากเลือก Self-managed Microsoft Active Directory ต้องทำสิ่งต่อไปนี้ก่อน

  • สร้าง "OU" เพื่อจัดเก็บ FSx for Windows File Server และตั้งค่า "Authorization Delegation"
  • สร้าง Domain user ที่มีชื่อว่า "Service account" เพื่อทำให้ FSx for Windows File Server ทำงานได้
  • สร้าง Administrator group และ Administrator user เพื่อควบคุม FSx for Windows File Server

โดยสามารถดูรายละเอียดเพิ่มเติมได้ที่ลิ้งค์ด้านล่างนี้

นอกจากนั้น ต้องมี Security Group ที่มีการสื่อสารบน Port ที่กำหนดระหว่าง FSx for Windows File Server กับ AD เหมือนกับที่เลือก Managed Microsoft AD

เตรียมเซิร์ฟเวอร์ควบคุม

ตามที่เขียนไว้ในหัวข้อที่แล้วๆ การตั้งค่า FSx for Windos File Server เราแนะนำให้ติดตั้ง "เซิร์ฟเวอร์ควบคุม"

สร้าง EC2 Windows Instance ไว้ใน VPC เดียวกันกับ FSx for Windows File Server ไว้ใช้เป็น "เซิร์ฟเวอร์ควบคุม FSx" โดยให้เข้าร่วมโดเมน Active Directory เดียวกันกับ FSx for Windows File Server

หลังจากติดตั้ง FSx for Windows File Server ให้เข้าสู่ระบบ User "ผู้ควบคุม FSx" ที่ "เซิร์ฟเวอร์ควบคุม" เพื่อทำการตั้งค่าต่างๆ ได้

เตรียม Security Group

ในขั้นตอนนี้เราจะสร้าง Security Group สำหรับ FSx for Windows File Server ครับ
ข้อกำหนดในการสื่อสารที่ต้องตั้งค่ามีตามด้านล่างนี้

  • การตั้งค่าการอนุญาต Port ที่ตรงตามข้อกำหนดการสื่อสารระหว่าง FSx for Windows File Server และ AD (Inbound, Outbound)
  • การตั้งค่าการอนุญาต Port สำหรับ Client เพื่อเข้าถึง FSx for Windows File Server (Inbound)
  • การตั้งค่าการอนุญาต Port สำหรับ Server เพื่อเข้าถึง FSx for Windows File Server (Inbound)

นอกจากนี้ เราจะตั้งค่า AD ให้เข้ากับ Security Group ในกรณีที่ใช้ Managed Microsoft AD หรือ มีการสร้าง Self-managed Microsoft AD ไว้บน EC2 Instance ด้วย

การใช้งาน "Active Directory Verification Tool" (ในกรณีของ Self-managed Microsoft Active Directory เท่านั้น)

ในกรณีที่ใช้ Self-managed Microsoft AD ต้องระวังในจุด "การตั้งค่าการอนุญาต Port ที่ตรงตามข้อกำหนดการสื่อสารระหว่าง FSx for Windows File Server และ AD" และ "OU และผู้ใช้โดเมนที่สร้างก่อนหน้านี้ใน AD ตรงตามข้อกำหนดหรือไม่" เนื่องจากมีโอกาสสูงที่จะสามารถส่งผลต่อ FSx for Windows File Server

เราสามารถใช้ Amazon FSx Active Directory Validation tool ที่ AWS ทำมาสำหรับ FSx for Windows File Server เพื่อตรวจสอบได้ว่าข้อหัวข้อด้านบนที่กล่าวไว้มีความถูกต้องแล้วหรือยัง
ไม่มีการบังคับว่าจำเป็นต้องใช้ Verification Tool แต่เพื่อป้องกันการเกิดปัญหากับ FSx for Windows File Server เราแนะนำให้ใช้

ขั้นตอนการใช้ "Amazon FSx Active Directory Validation tool" สามารถดูเพิ่มเติมได้ที่ลิ้งค์ด้านล่าง

การสร้าง Resource

การสร้าง File System ของ FSx for Windows File Server

หลังจาการเตรียมการก่อนสร้างเสร็จไปแล้ว เราก็จะมาเริ่มสร้าง FSx for Windows File Server กันครับ

"File System" เป็น AWS Resource หนึ่งเดียวที่เกี่ยวกับ FSx for Windows File Server
จะเรียกว่า "File System" ≒ "File server" ก็ว่าได้

การจะสร้าง "File server" สามารถทำได้ตามวิธีด้านล่าง

  • Management console
  • AWS CLI
  • IaC ต่างๆ (เช่น CloudFormation, Terraform)

ตอนที่สร้าง File System เราจำเป็นต้องระบุ Parameter ต่อไปนี้

  • File system details
    • Deployment type (Single-AZ, Multi-AZ)
    • Storage type (SSD, HDD)
    • Storage capacity
    • Throughput capacity
  • Network & security
    • Virtual Private Cloud (VPC) ที่จะวาง
    • Subnet ที่จะวาง (Single-AZ 1 ที่, Multi-AZ 2 ที่)
    • Security Groups
  • Windows authentication
    • การเลือกประเภทของ Active Directory เพื่อใช้งาน ("AWS Managed Microsoft Active Directory", "Self-managed Microsoft Active Directory")
    • ใส่ข้อมูลต่างๆเพื่อให้เชื่อมต่อ AD ให้ได้
      • ในกรณีของ Managed Microsoft AD: Directory ID
      • ในกรณีของ Self-managed Microsoft AD: Domain name, DNS server IP address, service account, administrator user credentials, อื่นๆ

แล้วในหัวข้อการตั้งค่าอื่นๆ ยังสามารถตั้งค่าเกี่ยวกับฟังก์ชันเหล่านี้ได้ด้วย

  • Encryption(ชนิดของ KMS Key)
  • Audit log
  • DNS aliases
  • Backup

ฟังก์ชันอื่นๆนอกจากที่เขียนไว้ (เช่น Data deduplication) สามารถตั้งค่าได้หลังจากสร้าง File system แล้ว

การตั้งค่า Resource หลังจากสร้างเสร็จ

หลังจากสร้าง "File system" เสร็จ เราจะสร้าง "Sharing Folder" กับ "สิทธิ์การเข้าถึง" อย่างน้อย เพื่อเข้าใช้งาน File server

สร้าง Sharing Folder

หลายจากสร้าง file system จะมี sharing folder ทีมีชื่อว่า "share" เป็น default โผล่ขึ้นมา
เราสามารถที่จะใช้ทั้งๆอย่างงี้เลยก็ได้ หรือถ้าอยาก "ใช้ sharing folder ด้วยชื่ออื่น" หรือ "ใช้ sharing folder มากกว่า 1 ตัว" ก็จะเป็นต้องสร้างโฟลเดอร์ใหม่ครับ

เราสามารถสร้าง sharing folder ได้โดยใช้ fsmgmt.msc ที่เป็น Tool ควบคุมจัดการ Windows system บน "เซิร์ฟเวอร์ควบคุม"

โดยสามารถดูวิธีการสร้างแบบละเอียดได้ที่ลิ้งค์ด้านล่างนี้ครับ
File shares - Amazon FSx for Windows File Server

สร้างสิทธิ์การเข้าถึง NTFS

สิทธิ์การเข้าถึง NTFS หมายถึง สิทธิการเข้าถึง(access) กับ file หรือ Sub folder ใน sharing folder
ซึ่งในการใช้งาน File server เราควรจะต้องตั้งค่ามัน

โดยการตั้งค่านั้นไม่มีความแตกต่างกับของ Windows ทั่วไป หรือก็คือ การคลิกขวาที่ไฟล์หรือโฟล์เดอร์ แล้วทำการเลือก "Property" แล้วเลือก "Security" แล้วสามารถเลือกการตั้งค่าได้นั่นเอง

(หน้าต่าง Security ของ Windows ทั่วไปที่น่าจะเคยเห็นกัน)

สิ่งนี้สามารถทำได้ผ่านทาง "เซิร์ฟเวอร์ควบคุม" หรือจะให้ User ที่มีสิทธิ์เข้าผ่านทาง Explorer บน client ก็ทำได้เหมือนกัน

การตั้งค่าฟังก์ชันเสริมต่างๆ

ในหัวนี้เราจะมาอธิบายเกี่ยวกับฟังก์ชันเสริมต่างๆของ FSx for Windows File Server

DNS aliases


(ภาพรายละเอียดตอนสร้าง)

เมื่อเราทำการติดตั้ง FSx for Windows File Server เราจะได้ Default host name ว่า "amznfsxXXXXXXXX" (XXXXXXXX คือ Random)
DNS name จะเป็น "amznfsxXXXXXXXX.example.com" Address เมื่อทำการเชื่อมต่อจาก Client จะแสดงขึ้นประมาณว่า "\amznfsxXXXXXXXX.example.com\share\foo.txt"

ซึ่งอาจจะมีบางกรณีที่เราอยากจะเปลี่ยน DNS name เป็นอย่างอื่น
FSx for Windows File Server จึงสร้างฟังก์ชันที่เรียกว่า "DNS aliases" ขึ้นมา
โดยเราจะสามารถใช้ตั้งค่า aliases(นามแฝง)ได้กับ primary host name ให้กลายเป็นชื่อ host name ที่เข้าใจง่ายขึ้นได้ เช่น "fileserver01.example.com"

ฟังก์ชัน DNS aliases จะเป็นการใช้ "CNAME Record" ของ DNS ทำให้สามารถ Name resolution ด้วยชื่ออื่นได้
แต่ว่านอกจากการตั้งค่า DNS CNAME แล้ว จำเป็นต้องตั้งค่า Service Principal Name (SPN) เพื่อการรับรอง Kerberos ของ Active Directory ด้วย โปรดระวัง

โดยเราสามารถอ่านรายละเอียดเพิ่มเพิ่มได้ที่ Document ด้านล่าง

Audit log


(ภาพรายละเอียดตอนสร้าง)

Audit log ของ FSx for Windows File Server นั้นหมายถึง ฟังก์ชันการจดบันทุกประวัติการ Access ที่มีต่อ File server ครับ
Audit log ของ FSx for Windows File Server เป็น log ที่มีความเทียบเท่า "Security Log" ของ Windows event log ครับ

Audit log จะมีรายละเอียดของข้อมูล "ใคร(User ID)" "มาจากที่ไหน(address ที่ access เข้ามา)" "ไปยังที่ไหน(ไปที่ไฟล์หรือโฟล์เดอร์ไหน)" "เป็นการกระทำแบบไหน(สร้าง, เปลี่ยนแปลง, ลบ)"

เราสามารถส่ง Audit log ไปยัง AWS Resource ด้านล่างนี้ได้ครับ

  • CloudWatch Logs
  • Kinesis Data Firehose

การส่ง Audit log ไปยังที่อื่น(output) จะไม่ได้มีการเปิดการใช้งานใน Default ทำให้ต้อง "เปิดการใช้งาน" ในตอนติดตั้ง FSx for Windows File Server (หลังจากติดตั้งแล้วสามารถปรับการตั้งค่าให้ "ปิดการใช้งาน" หรือ "เปิดการใช้งาน" ได้)
นอกจากนี้ การเริ่มบันทึก Audit log จำเป็นต้องตั้งค่าไฟล์หรือโฟล์เดอร์ที่อยู่ใน Windows ให้อยู่ภายใต้การตรวจสอบ

โดยสามารถอ่านรายละเอียดเพิ่มเติมได้ที่บทความด้านล่างนี้

*เพิ่มเติมคือ การที่จะตรวจสอบการ Access มาที่ตัวของ FSx for Windows File Server เอง (AWS API level Access) จะสามารถตรวจได้ที่ "CloudTrail" ไม่ใช่ที่ "Audit log" (เหมือนกับ AWS Resource อื่น)

Backup


(ภาพรายละเอียดตอนสร้าง)
วิธีการ Backup ของ FSx for Windows File Server สามารถทำได้ 2 วิธีตามด้านล่างนี้

  • ฟังก์ชัน Backup พื้นฐานของ FSx for Windows File Server
  • การ Backup โดยใช้ AWS Backup Service

"ฟังก์ชัน Backup พื้นฐาน" เป็นวิธีที่ง่ายที่สุดสำหรับการ Backup
โดยรอบของการ Backup จะถูกกำหนดให้ทำทุกวัน วันละ 1 ครั้ง
นอกจากนี้เรายังสามารถตั้งค่า parameter "เวลาที่จะ Backup window(daily automatic backup window)" "ตั้งค่าจำนวนรุ่น Backup ที่จะจัดเก็บได้ตั้งแต่ 1-90 วัน(Automatic backup retention period)"


(ภาพรายละเอียดการ Backup หลังสร้างโดยใช้ "ฟังก์ชัน Backup พื้นฐาน")

อย่างที่เขียนไว้ด้านบน "AWS Backup" สามารถใช้ Backup FSx for Windows File Server ได้ด้วย
และการใช้ "AWS Backup" จะสามารถทำให้ตั้งค่าการ Backup หลายหัวข้อที่แบบปกติทำไม่ได้ตามด้านล่างนี้ครับ

  • การตั้งค่า Backup สามารถตั้งค่าแบบอื่นได้นอก "ทำทุกวัน" ได้
  • ตั้งค่าจำนวนรุ่น Backup ที่จะจัดเก็บได้มากกว่า 90 วัน
  • Copy ข้อมูลที่ Backup ได้ ไว้ที่ Region อื่น (Cross-region backup copy)

รายละเอียดเพิ่มเติมของการ Backup ของ FSx for Windows File Server สามารถดูได้ที่ Document ด้านล่างครับ

Data deduplication

Data deduplication (การขจัดข้อมูลซ้ำซ้อน) คือฟังก์ชันที่จะลดการใช้พื้นที่เก็บข้อมูลที่ถูกเก็บไว้ Storage ถ้าเกิดมันตรวจพบว่า "ซ้ำกัน" ครับ
ด้วยการเปิดใช้งานฟังก์ชัน Data deduplication จะสามารถเพิ่มปริมาณข้อมูลที่สามารถจัดเก็บตามตรรกะสำหรับ "Storage capacity" (ขนาดจริง) ที่ตั้งไว้ใน FSx for Windows File Server
ค่าใช้จ่ายของ FSx for Windows File Server จะขึ้นอยู่กับ "Storage capacity" (และ throughput capacity) ทำให้เราสามารถลดค่าใช้จ่ายได้โดยการเปิดการใช้งาน "Data deduplication" ได้ครับ (จะลดพื้นที่เก็บลงนั่นเองครับ)

เพิ่มเติมคือ การตัดสินว้าข้อมูลนั้นซ้ำซ้อนสำหรับการ Data deduplication แล้วหรือไม่นั้นไม่ได้เช็คที่แต่ละไฟล์ แต่จะเป็นการเช็คช่วงคงที่ของไฟล์ถูกแบบแบ่งออก ที่เรียกเป็นหน่วยพิจารณาว่า "chunks" นั่นทำให้ต่อให้ไฟล์ไม่เหมือนกันถูกอย่างก็จะอยู่ในขอบเขตของ Data deduplication ครับ

รายละเอียดเพิ่มเติมของ "Data deduplication" สามารถดูได้ที่บทความด้านล่างครับ

Storage quota

ฟังก์ชัน "Storage quota" คือ ฟังก์ชันสำหรับกำหนดขีดจำกัดสูงสุดของความจุข้อมูลที่สามารถบันทึกไว้ในไฟล์เซิร์ฟเวอร์ได้ สำหรับผู้ใช้แต่ละราย
quota(โควต้า) มี 2 Mode ให้เลือกคือ "การตรวจสอบการใช้ข้อมูลเท่านั้น" หรือ "ห้ามในการจัดเก็บข้อมูลเกินขีดจำกัดสูงสุดของโควต้า(" (ดูเฉยๆ กับ ห้ามเกิน)
หากเลือก "ห้ามในการจัดเก็บข้อมูลเกินขีดจำกัดสูงสุดของโควต้า" แล้ว User จะทำการบันทึกข้อมูลที่เกิดขีดจำกัดที่ใหญ่ไว้ จะมีข้อความขึ้นมาว่า "พื้นที่ดิสก์ไม่เพียงพอ" แล้วยกเลิกการบันทึกข้อมูลครับ

รายละเอียดเพิ่มเติมของ Storage quota สามารถตรวจสอบได้ที่ AWS Document ด้านล่างนี้ครับ

Volume Shadow Copy (VSS)

Volume Shadow Copy (VSS) ของ Windows นั้นหมายถึง ฟังก์ชันการสร้าง snapshot ของ Disk volume มักจะถูกใช้ในการ Backup ความเร็วสูงของ Data
ใน FSx for Windows File Server เมื่อเราทำการเปิดการใช้งาน "Volume Shadow Copy" แล้วเมื่อเราทำการเปลี่ยน หรือ ลบ ไฟล์ที่อยู่บน File server "ข้อมูลการเปลี่ยน หรือ ลบ" จะถูกเก็บเป็น Snapshot โดยอัตโนมัติ และถูกเก็บรักษาในช่วงเวลานึง
นอกจากนั้น Client ที่ใช้งาน File server สามารถที่จะ "กู้ข้อมูลเดิมของเวอร์ชั่นที่แล้ว" ได้ ทำให้สามารถนำข้อมูลที่ลบ หรือ เปรับเปลี่ยนกลับมาให้เป็นเหมือนเดิมได้

ในกรณีที่ End-user เผลอปรับ หรือ ลบ ข้อมูลของ File server ไป แล้วเรากู้ข้อมูลที่ได้จากการ Backup (ฟังก์ชัน Backup พื้นฐาน, AWS BAckup service) ผู้ควบคุมอาจจะต้องเสียเวลาทั้งในการหาเวอร์ชั่นไฟล์ที่ถูกต้องเพื่อกู้คืนข้อมูลให้กับ End-user
แต่หากเราใช้ฟังก์ชัน "กู้ข้อมูลเดิมของเวอร์ชั่นที่แล้ว" End-user ก็สามารถที่จะกู้ข้อมูลเองได้เลย ไม่ต้องรอให้ผู้ควบคุมมาจัดการ ทำให้สามารถปรับปรุงประสบการณ์ของ End-user ได้

รายละเอียดเพิ่มเติมของ Volume Shadow Copy (VSS) สามารถตรวจสอบได้ที่ Document ด้านล่างนี้ครับ

Access-based enumeration (ABE)

Access-based Enumeration: ABE คือ "ฟังก์ชันการแสดงรายการและแสดงเฉพาะโฟลเดอร์ที่คุณสามารถเข้าถึงได้ ไม่ใช่ทุกโฟลเดอร์ใน sharing folder" ตอนที่ User เข้าไปดู Sharing folder ใน Explorer ครับ
การใช้ Access-based enumeration จะได้ผลลัพท์ตามด้านล่างนี้ครับ

  • การไม่แสดง Folder ที่ไม่มีสิทธิเข้าไปดู จะช่วยทำให้ User ไม่ต้องสนใจกับสิ่งที่ทำไม่ได้
  • แสดงแค่โฟล์เดอร์ที่มีสิทธิ ทำให้ดูง่ายขึ้น เมื่อมี Folder จำนวนมากแสดงอยู่

รายละเอียดเพิ่มเติมของ Access-based enumeration (ABE) สามารถตรวจสอบได้ที่ Document ด้านล่างนี้ครับ

Encryption(ชนิดของ KMS Key)


การ Encryption(เข้ารหัส) ของ FSx for Windows File Server จะถูกเปิดใช้งานอยู่ตลอด (ไม่มีปุ่มให้ปิดการใช้งาน)

โดยการ Encryption ตอนบันทึกข้อมูลนั้นไม่ใช่ฟังก์ชันของ Windows แต่เป็นการใช้งานฟังก์ชันของ KMS(Key Management Service)
การ Encryption หรือ decode ที่เกิดจาก KMS จะเกิดนขึ้นอยู่เบื้องหลัง Application ทำให้เราจำเป็นต้องใส่ใจในเรื่อง User หรือ Application ก็ใช้งานได้

ในการติดตั้ง FSx for Windows File Server เราสามารถที่จะเลือกชนิดของ "KMS Key" ได้

  • AMS management KMS key (aws / fsx)
  • Customer management KMS key

โดย Default จะเลือก "AMS management KMS key (aws / fsx)" ให้ครับ
หากจะเลือกใช้ "Customer management KMS key" โปรดตรวจสอบวิธีใช้งาน "Customer management KMS key" ตัวตนเองครับ

รายละเอียดเพิ่มเติมของ Encryption สามารถตรวจสอบได้ที่ Document ด้านล่างนี้ครับ

การ Encryption ของข้อมูลตอนส่ง (ฟังก์ชัน Encryption ของ SMB Protocol)

การ Encryption ของข้อมูลตอนส่ง จะถูก Encryption โดยฟังก์ชันของ SMB Protocol
SMB Encryption ถูกเพิ่มมามาตอน "SMB 3.0" ถ้า SME version ของ Client ใน FSx for Windows File Server เป็น "SMB 3.0 ขึ้นไป" ข้อมูลขณะส่งจะถูก Encryption โดยอัตโนมัติ แต่ถ้าเป็น SME เวอร์ชั่นก่อนหน้านั้น ข้อมูลขณะส่งจะไม่ถูก Encryption

เราสามารถตั้งค่าใน FSx for Windows File Server ให้ "บังคับ Encryption ข้อมูลขณะส่ง"
และถ้าเกิดมีการตั้งค่า "บังคับ Encryption ข้อมูลขณะส่ง" Client ที่ เป็น SME เวอร์ชั่นก่อนหน้า 3.0 จะไม่ได้รับอนุญาตให้ Access
ส่วน Client ตั้งแต่ "SMB 3.0 ขึ้นไป" จะ Access ได้ตามปกติ

รายละเอียดเพิ่มเติมของ "บังคับ Encryption ข้อมูลขณะส่ง" สามารถตรวจสอบได้ที่ Document ด้านล่างนี้ครับ

DFS Namespaces

ฟังก์ชัน "DFS Namespaces" คือฟังก์ชัน Distributed file system(ระบบไฟล์แบบกระจาย) ที่ให้บริการด้วย Windows ทำให้ดูเหมือนเป็นเซิร์ฟเวอร์ไฟล์เดียวโดยรวมกันจากการจับกลุ่มของ file server หลายๆตัว

การจะใช้งาน DFS Namespaces จำเป็นต้องติดตั้ง "DFS namespace server" ก่อน ถึงจะใช้งานได้
เราสามารถทำให้เป็น "DFS namespace server" ได้โดยการติดตั้ง role "DFS Namespace" ในรูปแบบ "เพิ่ม role และฟังก์ชัน" สำหรับ EC2 Windows instance หรือ Windows Server ในสภาพแวดล้อม On-premises

การเพิ่ม "DFS namespace server" ไปที่ Multiple Windows file servers ใน DFS namespace server ที่เข้าร่วมกับ Active Directory domain เดียวกัน (FSx for Windows File Server หรือ On-premises Windows Server) จะทำให้ File server อยู่ภายใต้การควบคุมของ "DFS namespace server"

รายละเอียดเพิ่มเติมของ "DFS Namespaces" สามารถตรวจสอบได้ที่ Document ด้านล่างนี้ครับ

การซิงโครไนซ์ข้อมูลด้วย "AWS DataSync"

ในระหว่าง file system หลายๆตัว ของ FSx for Windows File Server หรือรหะว่าง "FSx for Windows File Server File System" กับ "On-premises Windows file server" เราสามารถใช้ "AWS DataSync" Service เพื่อทำการซิงโครไนซ์ข้อมูลได้

ก่อนหน้านี้ ผมได้อธิบายไว้ว่า วิธีการซิงโครไนซ์ข้อมูล หรือ ย้ายข้อมูลของ FSx for Windows File Server สามารถทำได้โดยฟังก์ชัน "DFS replication" ของ Windows
แต่ก็ตามที่ได้เขียนไว้ก่อนหน้านี้ในส่วน "Multi-AZ / Single-AZ" ไว้ว่าถ้าเป็น "Single-AZ 2" หรือ "Multi-AZ" จะไม่สามารถใช้ "DFS replication" ได้ แต่จะใช้ "DFS replication" ในการซิงโครไนซ์ข้อมูล หรือ ย้ายข้อมูลของ FSx for Windows File Server แทน

รายละเอียดเพิ่มเติมของ "AWS DataSync" สามารถตรวจสอบได้ที่ Document ด้านล่างนี้ครับ

วิธีการควบคุม / จัดการ

ในหัวข้อสุดท้ายนี้เราจะมาอธิบายเกี่ยวกับการควบคุม / จัดการ FSx for Windows File Server กันครับ

โดยวิธีการควบคุม / จัดการ FSx for Windows File Server สามารถแบ่งออกใหญ่ๆ ได้เป็น 4 วิธีครับ

  • (1) การใช้ AWS Management console
  • (2) การใช้ Windows Management Tool "Shared Folder (fsmgmt.msc)"
  • (3) การควบคุม Explorer โดยใช้ Sharing folder ที่อยู่บน FSx for Windows File Server
  • (4) การใช้ PowerShell cmdlet ("Amazon FSx CLI")

เราจะแบ่งวิธีการใช้ 4 วิธีเหล่านี้ในการควบคุมตามเป้าหมาย / จุดประสงค์ โดยจะอธิบายตามด้นาล่างนี้

(1) การใช้ AWS Management console

ใช้ AWS Management console เปิด Property ของ "File System" ของ FSx for Windows File Server ที่เราต้องการควบคุม แล้วในหน้าต่าง GUI เพื่อทำการตั้งค่าต่างๆได้

เราสามารถทำการตั้งค่าได้ตามที่เขียนอยู่ด้านล่างนี้

  • ปรับเปลี่ยนการตั้งค่า storage capacity
  • ปรับเปลี่ยนการตั้งค่า throughput capacity
  • ปรับเปลี่ยนการตั้งค่า DNS alias (*และจำเป็นต้องตั้งค่าบน Active Directory Domain Controller ด้วย)
  • ปรับเปลี่ยนการตั้งค่า Audit log (*และจำเป็นต้องตั้งค่าการระบุโฟลเดอร์ / ไฟล์ที่อยู่เป้าการตรวจสอบใน Explorer ด้วย)
  • Backup (ฟังก์ชัน Backup พื้นฐาน) หรือการปรับเปลี่ยนการตั้งค่า Maintenance window

(2) การใช้ Windows Management Tool "Shared Folder (fsmgmt.msc)"

เราสามารถใช้ Windows Management Tool "Shared Folder (fsmgmt.msc) ที่อยู่บน "เซิร์ฟเวอร์ควบคุม" แล้ว Remote เชื่อมต่อไปยัง FSx for Windows File Server เพื่อทำการตั้งค่าต่างๆได้

เราสามารถทำการตั้งค่าได้ตามที่เขียนอยู่ด้านล่างนี้

  • สร้าง / ลบ Sharing folder
  • กำหนดสิทธิ์ของ sharing Access
  • ควบคุม Session หรือ "ไฟล์ที่เปิดอยู่"

(3) การควบคุม Explorer โดยใช้ Sharing folder ที่อยู่บน FSx for Windows File Server

เราสามารถควบคุม Explorer โดยใช้ Sharing folder ที่อยู่บน FSx for Windows File Server เปิด Property ของ โฟลเดอร์หรือไฟล์เพื่อทำการตั้งค่าต่างๆได้

เราสามารถทำการตั้งค่าได้ตามที่เขียนอยู่ด้านล่างนี้

  • สร้าง / ลบ Sub folder ที่อยู่บน Sharing folder
  • กำหนดสิทธิ์ NTFS Access
  • การตั้งค่า File access audit items

(4) การใช้ PowerShell cmdlet ("Amazon FSx CLI")

เราสามารถเปิด PowerShell Console ที่อยู่บน "เซิร์ฟเวอร์ควบคุม" แล้ว Remote เชื่อมต่อไปยัง FSx for Windows File Server เพื่อทำการตั้งค่าต่างๆได้

เราสามารถทำการตั้งค่าได้ตามที่เขียนอยู่ด้านล่างนี้

  • การตั้งค่า "Data deduplication"
  • การตั้งค่า "Storage quota"
  • การตั้งค่า "Volume Shadow Copy"
  • การตั้งค่า "Access-based enumeration"
  • การตั้งค่า การบังคับ Encryption ของข้อมูลตอนส่ง

ยังมีการใช้ GUI เพื่อตั้งค่าในบางหัวข้อ เช่น "สร้างหรือลบ Sharing folder" ก็สามารถจัดการได้ผ่าน Powershell ได้เช่นกัน

AWS ได้เตรียม PowerShell cmdlet เฉพาะ ในการจัดการควบคุม FSx for Windows File Server โดยเราจะเรียกสิ่งนี้ว่า "Amazon FSx CLI" ครับ

วิธีการใช้ "Amazon FSx CLI" นั้นแบ่งออกเป็น 2 วิธีใหญ่ๆได้แก่

  • Enter-PSSession: วิธี "Remote PoweShell Session" โดยการใช้ cmdlets
  • Invoke-Command: วิธี "Remote PoweShell ดำเนินการแต่ละ Command" โดยการใช้ cmdlets

ในงานการควบคุมและจัดการส่วนใหญ่จะใช้วิธี "Remote PoweShell Session" ในการจัดการได้
แต่ทว่ามีงานการควบคุมและจัดการบางส่วนจำเป็นต้องทำใน "Remote PoweShell ดำเนินการแต่ละ Command"

รายละเอียดเพิ่มเติมของ "Enter-PSSession และ Invoke-Command" สามารถตรวจสอบได้ที่บทความด้านล่างนี้ครับ

Getting started with the Amazon FSx CLI for remote management on PowerShell - Amazon FSx for Windows File Server

New-PSSession (Microsoft.PowerShell.Core) - PowerShell | Microsoft Docs

Invoke-Command (Microsoft.PowerShell.Core) - PowerShell | Microsoft Docs

ทิ้งท้าย

เป็นยังไงกันบ้างครับกับ Amazon FSx for Windows File Server
ส่วนตัวผมแล้วรู้สึกว่าเป็นอีกหนึ่งบทความที่ยาวมากๆ บทความหนึ่งแต่นั่นก็ทำให้เราสามารถครอบคลุมเนื้อหาได้เกือบหมดทุกอย่าง ตั้งแต่ขั้นตอนในการสร้างตั้งแต่การเตรียมจนไปถึงหลังสร้างเสร็จอย่างละเอียดที่อธิบายว่าในแต่ละหัวข้อมีการทำอะไร ใช้งานอย่างไร
สำหรับใครที่สนใจ "File Storage" ที่มีความเข้ากันได้กับ Windows ก็สามารถไปลองใช้งานกันได้ครับ กับ Amazon FSx for Windows File Server

นอกจากนี้หากใครอย่างลองทำตามหรืออยากลองดูว่าเรามีการสร้าง และ ทำอย่างไร เรามีบทความที่ได้ลองทำเกี่ยวกับ Amazon FSx for Windows File Server อยู่ด้านล่างในหัวข้อบทความที่เกี่ยวข้อง หากท่านผู้อ่านรู้สึกสนใจสามารถลองเข้าไปอ่านดูกันได้ครับ

แล้วพบกันใหม่ในบทความต่อไป สวัสดีครับ / ต้า

บทความต้นฉบับ

บทความที่เกี่ยวข้อง

ดูรายละเอียดเพิ่มเติมได้ที่นี่ สอบถามเพิ่มเติมเกี่ยวกับ AWS คลิกที่นี่