Додати Swap до CentOS

Додати Swap до CentOS/Fedora/RedHat
Перевіряємо наявність SWAP-а в CentOS/Fedora/RedHat
Перш ніж я почну, потрібно подивитися на зберігання сервера, щоб побачити, чи є підкачка. Щоб переглянути цю інформацію, можна виконати одне з нижчезазначених утиліт.
Через утиліту swapon:
Якщо нічого не повертається командою, то на сервері немає файлу для підкачування. У мене він є, я йому виділив 2Гб. Але припустимо, що мені цього мало і я хотів би збільшити його до 3-4Гб.
Інший спосіб перевірки - це використовувати утиліту free, яка показує нам загальне використання пам'яті в системі. Ми можемо бачити нашу поточну пам'ять та використання підкачки (у мегабайтах), ввівши:
Ще один спосіб - це з утилітою htop/top:
Зручний для перевірки спосіб вибирайте самі.
Перевіряємо дискового простору та вільного місця у CentOS/Fedora/RedHat
SWAP використовує фал створений на вашому HDD, то необхідно знати скільки є вільного місця для даної операції. Я зазвичай використовую утиліту - df:
Як я бачу з висновку, місце є, і я зможу виділити 3Гб легко.
Створення файлу підкачки (SWAP) у CentOS/Fedora/RedHat
Я наведу 2 способи як можна створити цей файл для підкачування. Я зберігатиму свій файл підкачки в папці яку я створю:
Ви можете використати будь-яке інше місце.
—- СПОСІБ 1 — Це використання утиліти fallocate.
Найшвидший і найпростіший спосіб для створення файлу підкачки - використання fallocate. Ця команда створює файл із миттєвим розміром. Я виокремлю файл підкачки з 3 Гб, набравши:
Щоб перевірити, що сталося, виконайте:
Як ви можете бачити, файл підкачки був створений зправильним розміром.
—- СПОСІБ 2 — Це використання утиліти dd.
Визначте розмір нового файлу підкачки в мегабайтах (парметр "count") і помножити на 1024, щоб визначити кількість блоків. Наприклад, створюємо файл підкачки з 1Гб:
Також можна вказати створюваний блок не в мегабайтах, а в гігабайтах:
Я використав утиліту «time» для того, щоб показати, наскільки довго це займає часу.
Включаємо/підключаємо Swap в CentOS/Fedora/RedHat
Дивимося, що вийшло:
Тепер, коли наш файл підкачки є більш безпечним, можемо створити простір підкачки:
Наш файл підкачки тепер готовий до використання, але потрібно його включити:
Щоб переконатися, що все виконано правильно, можемо перевірити це:
Цей висновок підтверджує, що в системі є новий файл підкачування. Ось ще один висновок:
За допомогою утиліти free, видно, що у мене своп вже не 2Гб (як було раніше), а вже 5Гб. Swap був успішно встановлений і ОС почне використовувати його за необхідності.
Щоб вимкнути його з ОС, використовуйте:
Він працюватиме до перезавантаження ОС.
Автоматичне монтування Swap у CentOS/Fedora/RedHat
Файл підкачки включений в даний момент, але коли перезавантажиться сервер, то файл підкачки не буде використовуватися більше, тому потрібно прописати його у файлі FSTAB, який є таблицею, яка управляє файловими системами і розділами:
У даному файлі необхідно додати рядок, який повідомить операційній системі автоматично використовувати файл підкачки, який ви створили:
Взаємодія SWAP з ОС. Перевірка та налаштування.
Є кілька варіантів, які ви можете налаштувати для кращої продуктивності вашої системи прироботи зі свопом.
Параметр swappiness визначає, як часто ваша система обмінюється даними з оперативної пам'яті підкачування. Цей параметр має діапазон від 0-100 і є відсотком.
При значеннях, близьких до нуля, ядро не обмінюється даними на диск, якщо це абсолютно необхідно. Пам'ятайте, що взаємодія з файлом підкачки є «дорогими» в тому плані, що такі операції займають набагато більше часу, ніж взаємодія з оперативною пам'яттю, і тим самим можуть призвести до значного зниження продуктивності.
Значення, які знаходяться ближче до 100%, ядро намагатиметься помістити більше даних у своп та звільнити RAM.
Щоб перевірити поточне значення swappiness, виконайте:
Оскільки я використовую віртуальну машину для тестів - установка swappiness в 60 - дає хороше значення, але для VPS бажано наблизити цей параметр в 0. І щоб змінити swappiness використовуйте команду SYSCTL.
Наприклад, щоб встановити swappiness в 10, виконаємо:
Цей параметр не збережеться до наступного перезавантаження і щоб він застосовувався при кожному запуску ОС автоматично, потрібно змінити (додавши рядок в) файл /etc/sysctl.conf:
У самому низу файлу прописуємо:
Зберігаємо та закриваємо файл.
Інший пов'язаний з цим значенням параметр, який ви можете захотіти змінити - vfs_cache_pressure, який налаштовує, як багато система буде вибирати кеш іноді і dentry в порівнянні з іншими даними.В основному, це доступ до даних про файлову систему і щоб подивитися поточне значення, виконайте:
Параметр встановлений на 100 і тим самим система видаляє інформацію інодам з кешу дуже швидко. Але якщо захочете зменшити, виконайте:
Це буде працювати тільки до завершення вашої сесії і ви можетезмінити його у файлі (як і раніше):
У самому низу проявляється рядок, який визначає ваше нове значення:
Як бачимо, все працює, і немає нічого складного.
Ось і все, тема «Додати Swap до CentOS/Fedora/RedHat» завершена.