Як застосувати AWS EFS для спільного використання файлової системи між EC2?

Якщо ви працюєте в багатосерверному прикладному середовищі, де вам потрібно спільно використовувати файлову систему між декількома серверами, вам потрібно налаштувати NFS (мережева файлова система).

NFS дозволяє спільно використовувати файлову систему на кількох серверах, але реалізація вимагає певних навичок адміністрування.

У традиційному середовищі інфраструктури вам, можливо, доведеться залучити кілька команд, і для створення NFS знадобиться час. Але якщо ви використовуєте AWS, ви можете зробити це за кілька хвилин за допомогою їх служби EFS (Elastic File System).

AWS EFS дозволяє створювати масштабоване сховище файлів для використання в EC2. Вам не потрібно турбуватися про прогнозування потужності, оскільки воно може збільшуватися або зменшуватися за вимогою.

Коротку ілюстрацію було взято зі сторінки AWS, щоб дати вам уявлення про те, як це працює.

Деякі з переваг EFS:

  • Повністю керується AWS.
  • Низька вартість, платіть за те, що використовуєте.
  • Висока доступність і довговічність
  • Автоматичне збільшення або зменшення масштабу.
  • Масштабована продуктивність
  Як перевірити акумулятор AirPods на iPhone, Apple Watch і Mac

У мене запущено два екземпляри EC2 Ubuntu, і в цьому посібнику я створю один EFS, а потім змонтую його на обох серверах EC2.

Давайте почнемо.

  • Увійдіть до консолі AWS
  • Перейдіть до Служби та виберіть EFS у сховищі (пряме посилання)
  • Натисніть «Створити файлову систему».

  • AWS автоматично призначить IP-адресу в зоні доступності. Ви можете зробити це на наступному екрані, якщо вам потрібно це змінити.

  • Додайте тег, якщо потрібно, і виберіть режим продуктивності між Загальним призначенням або Максимальним вводом/виводом

  • Перегляньте конфігурацію, і якщо все в порядку, натисніть «Створити файлову систему».

Це може зайняти кілька секунд, після чого ви отримаєте повідомлення про успіх.

Успіх!

Ви створили файлову систему. Ви можете змонтувати свою файлову систему з примірника EC2 із встановленим клієнтом NFSv4.1. Ви також можете підключити файлову систему з локального сервера через підключення AWS Direct Connect.

Ви зможете побачити новостворену еластичну файлову систему в списку.

  Як поповнити свій Google Apps за допомогою редактора скриптів

Це означає, що ви створили EFS і готові до монтування на примірниках EC2.

Монтаж EFS на EC2

Перед монтуванням вам потрібно встановити клієнт NFS. Якщо розгорнути список і натиснути «Інструкції з монтування Amazon EC2», ви отримаєте детальну інформацію.

Але подивимося, як воно піде.

  • Увійдіть в обидва екземпляри EC2 і встановіть клієнт NFS. У мене є Ubuntu, тому я буду використовувати наступне.
apt-get install nfs-common
  • Давайте створимо папку, куди ви хочете змонтувати EFS.

Наприклад: /apps

cd / 
mkdir apps

Змонтуйте файлову систему за допомогою команди, наведеної в інструкції.

Наприклад:

mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 fs-4fd14a06.efs.us-east-1.amazonaws.com:/ apps

Примітка. Якщо у вас виникли проблеми під час монтування, зверніться до цього посібник з усунення несправностейі не забудьте перевірити групи безпеки, щоб переконатися в наступному.

  • Порт NFS (2049) дозволений у вхідних правилах екземпляра EC2
  • Групи безпеки EC2 дозволені в групах безпеки EFS

Це займе кілька секунд, і ви помітите, що /apps змонтовано, якщо виконати команду df -h

[email protected]:/# df -h | grep apps 
fs-4fd14a06.efs.us-east-1.amazonaws.com:/  8.0E     0  8.0E   0% /apps 
[email protected]:/#

Тепер вам потрібно увійти на інший сервер, де ви хочете мати доступні /apps, і повторити створення папки та монтування EFS.

  Як експортувати контакти з робочого аркуша Excel в Outlook

Щоб перевірити, я змонтував свій EFS на іншому сервері та бачу, що /apps доступні на обох серверах.

[email protected]:/apps# df -h | grep apps 
fs-4fd14a06.efs.us-east-1.amazonaws.com:/  8.0E     0  8.0E   0% 
/apps [email protected]:/apps#

Це легко, чи не так?

Я спробував створити кілька файлів, і загалом продуктивність виглядає добре. AWS EFS виглядає багатообіцяюче, і якщо вам потрібен спільний доступ до файлової системи між примірниками EC2, спробуйте, і я впевнений, що вам це сподобається.

Вам цікаво дізнатися більше про AWS? Подивіться це Курс Udemy.

Вам сподобалось читати статтю? Як щодо того, щоб поділитися зі світом?