Working with Multi-Attach EBS and Windows Server 2022

0

I aim to construct a cluster of EC2 instances with a shared volume - specifically, with a multi-attach EBS. My objective comprises accessing data from the volume shared across numerous servers and consequently processing and publishing the data.

Referring to AWS documentation (aligned with Windows servers), a multi-attach EBS can function as a shared volume for a maximum of 16 instances as indicated here: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-volumes-multi.html

Currently, I am confronted with several challenges preventing me from proceeding with the EBS implementation.

Here are the measures I took within the context of the scenario involving two identical Windows Server 2022 instances (c5d.xlarge Nitro conform) and a multi-attach EBS (io2) manually mounted via the AWS console:

  • I attached the volume by navigating through "EC2 > Volumes > selecting the volume > Actions > Attach Volume".
  • I created a partition from the attached EBS - this partition was created using both disk management and server manager (I brought the disk online, formatted it using either NTFS or ReFS, and selected a drive letter)
  • I formatted the mounted volumes on both instances using the two available formats: NTFS and ReFS. Here I was trying to see if the syncing of files was an issue for a specific format.
  • I attempted to utilize both identical and varying device names. I tried both the "xvdf" name as suggested in the documentation and "/dev/sda2", as "/dev/" is the root volume.

After attaching it to my servers, I had certain expectations regarding working with the EBS:

  • File synchronization between servers: I created a .txt file from server 1 in the EBS volume, expecting it to be visible on server 2 when the EBS volume is accessed. However, the result was that the file was not instantly visible on server 2. Detaching the EBS, reattaching it, and subsequently reinitializing it rendered the file visible on server 2.
  • AMI template creation: I intended this for future server deployment depending on the curent server load. My expectation was to have an EC2 AMI linked to the current EBS shared volume. The outcome, however, was an EC2 AMI accompanied by an EBS snapshot. Consequently, launching new EC2 instances from this template resulted in the creation of new EBS volumes.

While I am aware of FSx and have given it a try, I found its setup to be quite lengthy and complex. Furthermore, I was drawn to the new feature made available for Windows servers by EBS and was keen to explore it. My automated processes require the use of Windows-specific tools, including Powershell. However, Powershell scripts via AWS RunCommand seems to be unable to access the FSx volume when I tried to use it. It behaves as though the volume, or the assigned drive letter, doesn't even exist.

I sincerely hope to receive insights on whether I need to modify certain settings or have overlooked anything or have misinterpreted what multi-attach ebs is and can do with Windows Servers.

Thank you and best regards

Mario
asked 4 months ago583 views
1 Answer
0

The issue here is that a multi-attach volume needs to be paired with a filesystem type that supports multi-attach volumes. More specifically, the filesystem software needs to "understand" that it is not the exclusive writer to the volume and needs to deal with that.

Ref: https://repost.aws/knowledge-center/ebs-access-volumes-using-multi-attach

profile pictureAWS
EXPERT
answered 4 months ago
profile picture
EXPERT
reviewed 4 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions