Що встановлено на вашому сервері MongoDB?
- MongoDB Community 8.0 з офіційного репозиторію MongoDB
- Автентифікація ввімкнена, користувач yonetici з роллю root у базі даних admin
- Віддалені підключення на порту 27017 (bindIp 0.0.0.0)
- Оболонка mongosh та інструменти баз даних, як-от mongodump і mongorestore
- Налаштування в /etc/mongod.conf, дані в /var/lib/mongodb, журнал у /var/log/mongodb/mongod.log
- Брандмауер, де відкриті лише порти 22 і 27017, а для SSH додано fail2ban
Який розмір потрібен для MongoDB?
У виробничих нотатках MongoDB обсягу RAM не вказано, але кеш пояснено: WiredTiger використовує більше з половини (RAM мінус 1 ГБ) або 256 МБ. Тобто 256 МБ за 1 ГБ, 512 МБ за 2 ГБ і 1,5 ГБ за 4 ГБ. Ті самі нотатки просять по два ядра на mongod, тому ця інсталяція починається з 2 ядер. Для орієнтиру 1 ГБ — для випробувань, а виробничу роботу починайте з 2 ГБ RAM. Кеш сам слідує за вашою RAM, а дані та IP-адреса лишаються тими самими, коли ви збільшуєте розмір у панелі.
| Використання | Розмір | Ціна | Обрати |
|---|---|---|---|
| Стартовий | 1 GB RAM · 2 vCore · 25 GB NVMe | $3.08/міс. | |
| Середній | 2 GB RAM · 2 vCore · 40 GB NVMe | $4.51/міс. | |
| Потужний | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/міс. |
Кому підійде?
- Проєкти на Node.js, Python, Go чи Java, що працюють із документною базою даних
- Ті, хто запускає застосунок деінде й хоче мати базу даних на окремому сервері
- Ті, хто переносить наявні дані MongoDB на власний сервер за допомогою mongodump
- Розробники, яким потрібна віддалена MongoDB для розробки й тестування
Що буде після замовлення?
- Задайте розмір і завершіть оплату.
- Ваш сервер запускається, а MongoDB встановлюється сама. У наших тестах на справжніх серверах це зайняло близько 3 хвилин.
- На вкладці «Огляд» вашої панелі скопіюйте рядки «Адреса підключення», «Логін» і «Пароль».
- Складіть рядок підключення: mongodb://yonetici:PASSWORD@IP:27017/?authSource=admin
- Створіть для застосунку окремого користувача, а yonetici з роллю root лишіть для адміністрування.
З кожним сервером
- Щоденне резервне копіювання входить у ціну
- Необмежений трафік
- Повний доступ root
- Пізніше можна збільшувати чи зменшувати RAM і CPU, а також збільшувати диск
- Розташування: Istanbul · IST-1.
Корисно знати
- Замовляючи, ви приймаєте умови Server Side Public License (SSPL) від MongoDB.
- Порт 27017 відкритий в інтернет. Щоб обмежити його, виконайте ufw delete allow 27017/tcp, потім ufw allow from YOUR_IP to any port 27017.
- Підключення відбуваються без TLS: пароль захищений, але дані не зашифровані. Для чутливих даних використовуйте тунель SSH або задайте власний сертифікат через net.tls.
- Це окремий mongod. Транзакції та потоки змін працюють лише на наборах реплік, тож за потреби ввімкніть реплікацію в mongod.conf самі.
- MongoDB надходить зі свого репозиторію й лишається на гілці 8.0. Оновлення ви встановлюєте через apt.
MongoDB: запитання й відповіді
Як підключитися до сервера MongoDB?
Рядок підключення — mongodb://yonetici:PASSWORD@IP:27017/?authSource=admin. З ним підключаються mongosh, MongoDB Compass і драйвери. Пароль інсталяції містить лише літери й цифри, тому кодувати його для URL не потрібно.
Скільки RAM потрібно MongoDB?
Офіційного мінімуму RAM для MongoDB немає. Для орієнтиру 1 ГБ достатньо для випробувань, а 2 ГБ і більше — добрий початок для виробничої роботи. Кеш WiredTiger становить 256 МБ за 1 ГБ і 1,5 ГБ за 4 ГБ, і ваші часто вживані дані та індекси мають у нього вміщуватися.
Чи працюють на цьому сервері транзакції та потоки змін?
MongoDB пропонує їх лише на наборах реплік і шардованих кластерах, а ця інсталяція — окремий mongod. Якщо вони вам потрібні, налаштуйте реплікацію та файл ключа в mongod.conf, а потім виконайте rs.initiate(), щоб запустити набір реплік з одного учасника.
Чи шифрується підключення до MongoDB?
Після встановлення підключення до MongoDB не мають TLS: пароль захищений, але дані передаються незашифрованими. Для чутливих даних відкрийте тунель SSH командою ssh -L 27017:127.0.0.1:27017 root@IP, використавши пароль SSH, показаний у рядку «Ім'я користувача» на вкладці «Огляд». Потім підключайтеся до 127.0.0.1.
Як зробити резервну копію MongoDB?
Резервна копія сервера створюється щоночі, зберігаються останні 7 днів, і це входить у ціну. mongodump також встановлено: зробіть дамп командою mongodump --uri і відновіть його через mongorestore.
Як перенести наявні дані MongoDB?
Зробіть дамп на старому сервері командою mongodump, скопіюйте файли на новий сервер через SFTP і завантажте їх командою mongorestore --uri. Якщо ви переходите зі старішої версії, прочитайте примітки MongoDB щодо оновлення.