Від 24 TB до 160 TB жорстких дисків на сервер · Амстердам, Бухарест, Кишинів · без KYC. Оплата в криптовалюті: BTC, USDT, USDC, ETH, SOL, LTC
Мова: Українська
Оберіть hold

Гайд · Self-hosted об'єктне сховище

Як розмістити власне S3-сумісне об'єктне сховище на орендованому сервері?

Чотири S3-сервери для однієї машини, де має бути надлишковість, скільки місця ви залишаєте і скільки часу займає перше завантаження.

Оновлено: · 10 хв читання

Коротка відповідь

Як розмістити власне S3-сумісне об'єктне сховище на орендованому сервері?

Щоб розмістити власне S3-сумісне об'єктне сховище на орендованому сервері, запустіть Garage, SeaweedFS, Ceph RGW або MinIO, зібрані з вихідного коду, на одній машині з багатьма дисками, а потім вирішіть, де буде надлишковість: erasure coding в об'єктному сховищі чи ZFS RAIDZ2 під ним. Репозиторій MinIO заархівовано 25 квітня 2026 року. Basalthold Hold 100 має 100 TB за 377,05 USD, лише криптовалюта, без KYC.

Що дає об'єктному сховищу одна орендована машина?

МашинаStorage dedicated servers: a whole physical machine built around a bank of hard drives, rented to one customer, with root access to every drive
Диски при доставціОпераційна система розміщена на окремому SSD (на більших конфігураціях — на двох дзеркальних SSD); диски для даних надходять порожніми та неpartitionованими, тож ви можете створити ZFS, масив mdadm або набір незалежних дисків. Якщо ви хочете, щоб команда підготувала масив RAID 6 або RAID 10 перед доставкою, повідомте про це підтримці до передачі сервера
Hold 100Intel Xeon Silver 4210R (10 ядер / 20 потоків), 128 GB DDR4 ECC, 10 × 10 TB жорстких дисків (100 TB raw) плюс 2 × 480 GB SSD для системи, дзеркально, порт 1 Gbit/s зі 120 TB трафіку за 30 днів, 1 IPv4 та IPv6 /64
Hold 160AMD EPYC 7302P (16 ядер / 32 потоки), 128 GB DDR4 ECC, 10 × 16 TB жорстких дисків (160 TB raw) плюс 2 × 480 GB SSD для системи, дзеркально, порт 1 Gbit/s зі 200 TB трафіку за 30 днів, 1 IPv4 та IPv6 /64
СистемиDebian 13, Debian 12, Ubuntu 24.04 LTS, AlmaLinux 10, Rocky Linux 10, Proxmox VE 9 і Proxmox Backup Server 4
ШифруванняВи можете зашифрувати кожен диск для даних за допомогою LUKS або вбудованого шифрування ZFS; ключі залишаються у вас, і ніхто з команди їх ніколи не запитує
МережаКожен сервер має порт 1 Gbit/s із місячним лімітом трафіку (Hold 24 40 TB, Hold 40 60 TB, Hold 100 120 TB, Hold 160 200 TB), одну виділену IPv4-адресу й IPv6 /64; перевищення ліміту ніколи не спричиняє автоматичного рахунку
Ціна за 30 днівHold 24 $110.99, Hold 40 $201.09, Hold 100 $377.05, Hold 160 $561.39
ОплатаЛише криптовалюта: BTC, USDT, USDC, ETH, SOL, LTC. Без KYC: ні ID, ні селфі, ні документів, ні картки й ні номера телефону — на жодному етапі

Який S3-сервер мені запускати на одній машині?

Обирайте S3-сервер за функціями, які потрібні вашим клієнтам, а потім підбирайте машину. Наведені нижче версії — це останні стабільні релізи на власних сторінках проєктів, прочитані 2 листопада 2026 року.

Чотири S3-сервери на одній машині (прочитано 2026-11-02)

СерверОстанній випускЛіцензіяНадлишковість на одній машиніВерсіонування / object lock
Garagev2.5.0, 24 жовтня 2026AGPLv3, написаний на RustЖодної від Garage з replication_factor = 1: розмістіть під ним ZFS або mdadmНі / ні
SeaweedFS4.52, 2 листопада 2026Apache 2.0, написаний на GoРеплікація або erasure coding Reed-Solomon 10+4 на запечатаних томахТак / так
Ceph RGWCeph 21.2.0 "Umbrella", 28 жовтня 2026LGPL 2.1 або 3, написаний на C++Репліковані або erasure-coded пули; один OSD на дискТак / так
MinIO community editionRELEASE.2025-10-15T17-29-55Z, лише вихідний кодAGPLv3; репозиторій заархівовано у квітні 2026Кодування стиранням по всіх дискахТак / так

На сторінці сумісності Garage з S3 версіонування та object lock вказані як відсутні. Ceph описує object lock у своїх операціях з бакетами RGW.

  • Garage — найлегший: його сайт просить 1 GB RAM. Без версіонування та object lock він більше пасує для цілей синхронізації та сховища застосунків, ніж для захищених бекапів.
  • SeaweedFS документує версіонування, object lock і кодування стиранням — усе під Apache 2.0. На сторінці проєкту сказано, що він створений для мільярдів файлів, а кодування стиранням працює на рівні тому.
  • Ceph RGW — вибір, якщо ви плануєте зростати до кількох машин. На одному хості він важкий: власна документація Ceph каже, що однохостові кластери загалом не придатні для продакшену.
  • MinIO досі працює, але його безкоштовна редакція більше не отримує оновлень; дивіть найкращу альтернативу MinIO.

Кодування стиранням чи ZFS: де має бути надлишковість?

Тримайте надлишковість лише в одному шарі. Кодування стиранням поверх RAIDZ2 платить за парність двічі й на одній машині дає мало.

Схема A: окремі диски, кодування стиранням в object store. MinIO, SeaweedFS і Ceph кожен розбивають об'єкти на шарди даних і парності по дисках. Диск, що вийшов з ладу, коштує лише шардів на ньому, і сховище відновлюється об'єкт за об'єктом.

Схема B: пул ZFS, без надлишковості в object store. Зберіть RAIDZ2, потім запустіть Garage з однією реплікою або SeaweedFS без реплікації. ZFS перевіряє контрольні суми кожного блоку, відновлює з парності й дає вам знімки та стиснення для всього пулу.

Наша думка: на одній орендованій машині схема B простіша в роботі й легша в порятунку. Одна zpool status показує стан кожного диска. Знімки ZFS також захищають від видаленого бакета. Схема A виграє, коли ви хочете відновлення на рівні об'єктів або плануєте додати машини пізніше.

Garage потребує схеми B. Його quick start каже, що однонодова розкладка не дає жодної надлишковості. З однією копією контрольні суми Garage можуть виявити поганий блок, але не відбудувати його.

Скільки корисної ємності дає кожна схема?

Корисний простір залежить від того, скільки дисків тримають парність. OpenZFS дає правило RAIDZ: N дисків з P парності тримають близько (N − P) × розмір диска. Типова парність MinIO — EC:4 для наборів від 8 дисків і EC:2 для 5 і менше. Код 10+4 у SeaweedFS зберігає близько 1,4 раза від обсягу даних.

Корисна ємність на конфігурацію, до накладних витрат файлової системи

HoldДискиРозкладка ZFS → корисноТипова парність MinIO → корисноSeaweedFS 10+4 → корисно
Hold 242 × 12 TB HDDДзеркало → 12 TB1 даних + 1 парності → 12 TB—
Hold 404 × 10 TB HDDRAIDZ2 → 20 TB (RAIDZ1 → 30 TB)EC:2 → 20 TB—
Hold 10010 × 10 TB HDDRAIDZ2 → 80 TBEC:4 → 60 TBблизько 71 TB
Hold 16010 × 16 TB HDDRAIDZ2 → 128 TBEC:4 → 96 TBблизько 114 TB

Розрахунки з кількості дисків, де 1 TB = 10^12 байтів, як продають диски. Парність MinIO можна знизити: EC:2 на 10 дисках зберігає 80%, так само як RAIDZ2. Конфігурації з двох дисків не мають місця для коду 10+4.

RAIDZ2 на десяти дисках переживає дві відмови, і MinIO з EC:2 також. Типовий EC:4 переживає чотири, ціною ще 20 пунктів сирого простору. Великі диски довго відбудовуються, тож прочитайте скільки триває відбудова RAIDZ2 з великими дисками, перш ніж вибирати одну парність.

Скільки триває перше завантаження?

На 1 Gbit/s найкращий випадок — 125 MB за секунду. Заповнення Hold 100 після RAIDZ2 (80 TB) триває щонайменше 7,4 дня. Заповнення Hold 160 (128 TB) триває щонайменше 11,9 дня.

Це розрахунки за швидкістю лінії, не вимірювання: реальні передачі йдуть повільніше. Місячний ліміт кожної конфігурації більший за одне повне заповнення: Кожен сервер має порт 1 Gbit/s із місячним лімітом трафіку (Hold 24 40 TB, Hold 40 60 TB, Hold 100 120 TB, Hold 160 200 TB), одну виділену IPv4-адресу й IPv6 /64; перевищення ліміту ніколи не спричиняє автоматичного рахунку. Плануйте велику міграцію паралельними потоками, наприклад за допомогою rclone copy --transfers 16.

Як налаштувати Garage на пулі ZFS?

Це схема B на Hold 100: десять дисків з даними в RAIDZ2, метадані на дзеркальних системних SSD. Посібник Garage з розгортання кладе метадані на SSD, а дані — на жорсткі диски. Замініть назви пристроїв і секрети своїми.

Пул ZFS, конфіг Garage і перший бакет
# 1. RAIDZ2 pool on the ten blank data drives (use /dev/disk/by-id names)
zpool create -o ashift=12 tank raidz2 /dev/disk/by-id/ata-HDD1 /dev/disk/by-id/ata-HDD2 ... /dev/disk/by-id/ata-HDD10
zfs create -o compression=lz4 -o atime=off tank/garage

# 2. /etc/garage.toml (metadata on the system SSD, data on the pool)
metadata_dir = "/var/lib/garage/meta"
data_dir = "/tank/garage"
db_engine = "sqlite"
replication_factor = 1
rpc_bind_addr = "[::]:3901"
rpc_public_addr = "127.0.0.1:3901"
rpc_secret = "<openssl rand -hex 32>"

[s3_api]
s3_region = "garage"
api_bind_addr = "[::]:3900"

[admin]
api_bind_addr = "127.0.0.1:3903"
admin_token = "<openssl rand -base64 32>"

# 3. Layout, bucket and key
garage status
garage layout assign -z dc1 -c 70T NODE_ID   # NODE_ID from garage status; leave headroom
garage layout apply --version 1
garage bucket create backups
garage key create backup-key
garage bucket allow --read --write --owner backups --key backup-key

Garage відповідає на S3-запити на порту 3900 через звичайний HTTP, тож поставте попереду TLS-проксі, наприклад Caddy або nginx. Закрийте 3901 і 3903 від інтернету. У Garage немає object lock, тож цю роботу виконують знімки ZFS. Метод описано в як зробити бекапи незмінними на власному сервері.

Чи орендований сервер дешевший за хмарне object storage?

За терабайт конфігурації на десять дисків коштують менше за Backblaze B2 чи Wasabi, а сервер не виставляє рахунок за egress чи API-виклики. Hold 100 коштує $3.77/TB за сирий TB і Hold 160 $3.50/TB. Станом на 2 November 2026 Backblaze B2 вказує $6.95 за TB на місяць, а Wasabi — $7.99.

Але сирий простір — не корисний. RAIDZ2 на десяти дисках зберігає 80%, тож кожен корисний TB коштує на чверть більше за кожен сирий TB. Обидві конфігурації на десять дисків навіть тоді лишаються дешевшими за B2. На конфігурації з двох дисків дзеркало вдвічі зменшує простір, і хмара виграє. Хмара також тримає ваші дані більш ніж в одному місці, чого один сервер не робить. Повний розрахунок, з egress, — у чи орендований storage-сервер дешевший за Backblaze B2 чи Wasabi. Кожна конфігурація є на сторінці цінBasalthold.

Self-hosted S3: швидкі відповіді

Чи можу я запустити сумісне з S3 сховище на одному орендованому сервері?

Так. Garage, SeaweedFS і MinIO усі працюють на одній машині, а Ceph RGW може зі своїми налаштуваннями для одного хоста. Захистіть дані RAIDZ2 під ними або кодуванням стиранням по дисках, але ніколи нічим. Один сервер — це все ще одне місце, тож тримайте другу копію деінде.

Скільки RAM потрібно self-hosted S3-серверу?

Garage просить 1 GB. Ceph — ненажерливий: його документація рекомендує щонайменше 6 GiB на кожен OSD жорсткого диска, тож десять дисків хочуть близько 60 GiB. ZFS також використовує RAM як кеш; дивіть скільки RAM потрібно ZFS. Hold 100 і Hold 160 несуть 128 GB DDR4 ECC.

Який self-hosted S3-сервер підтримує object lock для бекапів?

SeaweedFS, Ceph RGW і MinIO підтримують object lock; Garage — ні. Object lock не дає видалити версію об'єкта до дати її збереження. З Garage захищайте бекапи через ZFS-снапшоти або інструмент бекапів з режимом append-only.

Чи можу я зашифрувати диски під своїм object store?

Так. Ви можете зашифрувати кожен диск для даних за допомогою LUKS або вбудованого шифрування ZFS; ключі залишаються у вас, і ніхто з команди їх ніколи не запитує. Для віддаленого перезавантаження тоді потрібен спосіб ввести ключ; віддалене розблокування LUKS показує один із них.

Чи MinIO досі безкоштовний для self-host?

Код спільноти залишається під AGPLv3, але репозиторій заархівовано у квітні 2026 року і він більше не оновлюється. Тепер MinIO скеровує користувачів спільноти на AIStor Free — однонодове видання за безкоштовною ліцензією, що обмежує розповсюдження та перепродаж.

Джерела (18)
  1. Релізи Garage (v2.5.0) — Deuxfleurs (read 2026-11-02)
  2. Домашня сторінка Garage (вимоги до обладнання) — Deuxfleurs (read 2026-11-02)
  3. Garage quick start — Deuxfleurs (read 2026-11-02)
  4. Garage: статус сумісності з S3 — Deuxfleurs (read 2026-11-02)
  5. Garage: розгортання на кластері — Deuxfleurs (read 2026-11-02)
  6. Реліз SeaweedFS 4.52 — SeaweedFS (read 2026-11-02)
  7. SeaweedFS: erasure coding для теплого зберігання — SeaweedFS (read 2026-11-02)
  8. SeaweedFS: Amazon S3 API — SeaweedFS (read 2026-11-02)
  9. Випущено v21.2.0 Umbrella — Ceph (read 2026-11-02)
  10. Розгортання нового кластера Ceph (типові налаштування для одного хоста) — Ceph documentation (read 2026-11-02)
  11. Розрахунок CPU та пам'яті — Ceph documentation (read 2026-11-02)
  12. Операції з bucket у RGW (object lock) — Ceph documentation (read 2026-11-02)
  13. Репозиторій MinIO (заархівовано) — MinIO (read 2026-11-02)
  14. Швидкий посібник MinIO з erasure code — MinIO (read 2026-11-02)
  15. Клас зберігання MinIO (типовий parity) — MinIO (read 2026-11-02)
  16. Посібник MinIO з object lock та незмінності — MinIO (read 2026-11-02)
  17. Репозиторій SeaweedFS (опис, ліцензія) — SeaweedFS (read 2026-11-02)
  18. RAIDZ — OpenZFS documentation (read 2026-11-02)

Орендуйте диски під власний S3

Hold 100: 10 × 10 TB HDD за 377,05 USD. Hold 160: 10 × 16 TB HDD за 561,39 USD. Порожні диски даних і root через SSH. Оплата в крипті, без KYC.

24 TB від $110.99/30 днів · без KYC

Оберіть hold