Еуропадағы MongoDB үшін бұлт сервері: реплика жиыны нұсқаулығы

Еуропадағы MongoDB үшін бұлт сервері: реплика жиыны нұсқаулығы

Еуропадағы MongoDB үшін бұлт сервері: реплика жиыны нұсқаулығы

MongoDB - ең кең орналастырылған құжаттық деректер базасы, оның үстінде мазмұнды басқару жүйелерінен нақты уақыттағы аналитикаға дейінгі бәрі жұмыс істейді. Еуропалық пайдаланушыларға қызмет көрсететін қосымшалар үшін MongoDB осы деректерді қайда және кімнің юрисдикциясында сақтайтыны оның қаншалықты жақсы жұмыс істейтінінен кем маңызды емес.

Бұл нұсқаулық MongoDB-нің жабдыққа қоятын талаптарын, WiredTiger сақтау қозғалтқышының негізгі баптау параметрлерін және дұрыс бапталған ЕО бұлт сервері қандай өткізу қабілетін беретінін баяндайды.

Деректердің ЕО ішінде сақталуы MongoDB үшін неге маңызды

GDPR ЕО тұрғындарының дербес деректерін өңдейтін кез келген жүйеге қолданылады. MongoDB базалары әдетте пайдаланушы профильдерін, мінез-құлық деректерін және транзакция жазбаларын сақтайды - бұның бәрі GDPR аймағына кіреді. ЕО компаниясындағы ЕО бұлт серверінде орналастыру деректеріңіз ЕО юрисдикциясынан шықпайтынын білдіреді, ал бұл стандартты шарттық ережелерсіз және беру әсерін күрделі бағалаусыз сақталу орны талабын орындайды.

Талапқа сәйкестіктен басқа, ЕО хостингі еуропалық пайдаланушылар үшін кешігуді төмендетеді. MongoDB-нің икемді құжат моделі байланысты деректерді құжат ішіне салуға түрткі болады, демек базаға жүгіну азаяды. Сервер қосымшамен бір өңірде болғанда әрқайсысы жылдамырақ. Прагадағы база берлиндік қосымшаға АҚШ дата-орталығындағы базадан бір сұранысқа 70-100 мс жылдам жауап береді.

MongoDB үшін серверге қойылатын ең аз талаптар

MongoDB-дегі WiredTiger қозғалтқышы ОЖ файл кешінен бөлек кешті пайдаланады. WiredTiger кеші де, ОЖ кеші де қолжетімді RAM-нан ұтады:

  • Шағын (әзірлеу мен стейджинг, секундына 1000 операциядан аз) - 4 vCPU, 8 ГБ RAM, 100 ГБ NVMe SSD
  • Орташа (продакшен, секундына 1000-20000 операция) - 8 vCPU, 32 ГБ RAM, 500 ГБ NVMe SSD
  • Ірі (өткізу қабілеті жоғары немесе деректер жиыны үлкен) - 16 және одан көп vCPU, 64-128 ГБ RAM, 1 ТБ және одан көп NVMe SSD

WiredTiger әдепкіде кешке (RAM минус 1 ГБ) шамасының 50%-ін алады. 32 ГБ серверде бұл шамамен 15,5 ГБ. Мәнді көтеруге болады, бірақ ОЖ-ға, жадтағы индекстерге және қосылымдарға кететін шығынға қор қалдырыңыз.

Ұсынылатын DCXV конфигурациясы

DCXV бұлт серверлері MongoDB-нің жазу операциялары мен қысу процестеріне керек кездейсоқ IOPS профилі бар NVMe қорын береді. MongoDB үшін ұсынылатын конфигурациялар:

  • 8 vCPU, 32 ГБ RAM, 500 ГБ NVMe - қосымшаның продакшен базасы, реплика жиынының негізгі түйіні
  • 16 vCPU, 64 ГБ RAM, 1 ТБ NVMe - ірі құжат қоймалары, жазуы қарқынды жүктемелер немесе аналитикалық сценарийлер
  • 3 дана 8 vCPU / 32 ГБ RAM - ЕО дата-орталығының аймақтары арасында жоғары қолжетімділікке үш түйіндік реплика жиыны

DCXV серверлерінің арасындағы жеке желі жиынның репликация трафигін дата-орталықтың желі матасының ішінде ұстайды, бұл реплика артта қалуын азайтады. Реплика жиынының топологиясын талқылап, қосалқы түйіндердің артта қалуын кемітетін желі конфигурациясын алу үшін sales@dcxv.com адресіне жазыңыз.

Жылдам орнатуға арналған командалар

# Ubuntu 22.04-ке MongoDB 7.0 орнату
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

sudo apt update && sudo apt install -y mongodb-org

# Қызметті іске қосу және қосулы қалдыру
sudo systemctl start mongod
sudo systemctl enable mongod

# Қосылып, база пайдаланушысын жасау
mongosh --quiet <<'EOF'
use admin
db.createUser({
  user: "myapp_user",
  pwd: "strongpassword",
  roles: [{ role: "readWrite", db: "myapp" }]
})
EOF
# 32 ГБ RAM серверіне mongod.conf-тың негізгі параметрлері
# /etc/mongod.conf файлын түзетіңіз

storage:
  dbPath: /var/lib/mongodb
  engine: wiredTiger
  wiredTiger:
    engineConfig:
      # RAM-ның шамамен 50%, ОЖ кеші мен қосылымдарға қор қалдырып
      cacheSizeGB: 20
    collectionConfig:
      blockCompressor: snappy    # snappy = жылдам; zstd = қысуы жақсы

net:
  port: 27017
  bindIp: 127.0.0.1,10.0.0.5   # localhost және осы сервердің жеке адресі

security:
  authorization: enabled

# Өзгерістерді қолдану
sudo systemctl restart mongod
# DCXV жеке желісінде 3 түйіндік реплика жиынын баптау
# Алдымен үш серверде де орындаңыз - mongod.conf жаңартыңыз:
# replication:
#   replSetName: "rs0"

# Содан кейін негізгі түйіннен реплика жиынын бастаңыз
mongosh --quiet <<'EOF'
rs.initiate({
  _id: "rs0",
  members: [
    { _id: 0, host: "10.0.0.5:27017", priority: 2 },
    { _id: 1, host: "10.0.0.6:27017", priority: 1 },
    { _id: 2, host: "10.0.0.7:27017", priority: 1 }
  ]
})
EOF

# Реплика жиынының күйін тексеру
mongosh --quiet --eval "rs.status()"
# Жинақтарды баптағаннан кейін пайдалы индекстер жасау
mongosh myapp --quiet <<'EOF'
// Жиі сұраныс сызбаларына индекстер - өз деректер сызбаңызға ыңғайлаңыз
db.users.createIndex({ email: 1 }, { unique: true })
db.events.createIndex({ userId: 1, createdAt: -1 })
db.products.createIndex({ category: 1, price: 1 })

// Индекс пайдаланылуын explain арқылы тексеру
db.users.find({ email: "test@example.com" }).explain("executionStats")
EOF

Күтілетін өнімділік көрсеткіштері

MongoDB 7.0 және WiredTiger кеші 20 ГБ болып бапталған 8 vCPU / 32 ГБ RAM / NVMe данасында:

  • Оқу өткізу қабілеті (индекс бойынша сұраныстар, кеште) - секундына 50 000-80 000 операция
  • Жазу өткізу қабілеті (жалғыз кірістірулер) - секундына 15 000-25 000 операция
  • Пакеттік кірістірудің өткізу қабілеті (ordered:false, 1000-дық партиялар) - секундына 100 000-200 000 құжат
  • Агрегация құбыры (кештегі деректер жиыны) - секундына 10 000-30 000 құжат

Реплика жиынындағы majority жазу растау деңгейі түйіндер арасындағы айналым уақытына сай кешігу қосады. Бір дата-орталық ішіндегі жеке желіде бұл әдетте жазуға 0,2-0,5 мс қосымша кешігу - продакшен жүктемелерінің көпшілігі үшін қолайлы.

Бұл осы кластағы жабдыққа күтілетін шамалар, өз зертханамыздағы өлшемдер емес. Оларды есептеудің бастау нүктесі деп санап, өз жүктемеңізді өлшеңіз: нақты цифрлар провайдерден гөрі сіздің деректеріңізге, сұраныстарыңызға және баптауыңызға әлдеқайда күштірек байланысты.

Түйін

DCXV-нің ЕО бұлт серверіндегі MongoDB GDPR бойынша деректерді сақтауды, еуропалық пайдаланушыларға төмен кешігуді және құжат моделінің масштабтағы икемділігін береді. Баптаудағы ең әсерлі екі шешім - WiredTiger кешінің өлшемі және сенімділік пен жоғары қолжетімділікті бірден беретін үш түйіндік реплика жиыны. MongoDB инфрақұрылымын Tier III деңгейіндегі ЕО дата-орталығында жинау үшін DCXV-ге жазыңыз.

Жаңа бұлттық серверге SSH арқылы қалай қосылу керек
sshtutorialcloud

Жаңа бұлттық серверге SSH арқылы қалай қосылу керек

Сервер дайын, ал панельде IP, логин және құпиясөз бар. Міне, SSH арқылы алғашқы қосылу, ең жиі кездесетін төрт қате және алғашқы он минут.

Windows серверіне қашықтағы жұмыс үстелі арқылы қалай қосылу керек
rdpwindowstutorialcloud

Windows серверіне қашықтағы жұмыс үстелі арқылы қалай қосылу керек

Сізде мекенжай, пайдаланушы аты және құпиясөз бар. Оларды өз экраныңыздағы Windows жұмыс үстеліне қалай айналдыруға болады - ПК, Mac немесе телефоннан, қадам-қадаммен.

Еуропадағы Stable Diffusion үшін бұлт сервері: GPU баптау
cloudaigpu

Еуропадағы Stable Diffusion үшін бұлт сервері: GPU баптау

Stable Diffusion-ге қандай GPU жабдығы қажет, ең танымал екі интерфейсті қалай көтеру керек және ЕО ішінде сурет жасаудың қандай жылдамдығын күтуге болады.

Еуропада LLM хостингіне арналған бұлт сервері: AI және GDPR нұсқаулығы
cloudaigpu

Еуропада LLM хостингіне арналған бұлт сервері: AI және GDPR нұсқаулығы

LLM-ді продакшенде хостингілеуге қандай жабдық қажет, модель өлшемі мен кванттау деңгейін қалай таңдау керек және ЕО бұлтында қандай қызмет көрсету фреймворктары жақсы жұмыс істейді.

Claude Code, Codex және Grok CLI-ды өз бұлттық серверіңізде іске қосыңыз
cloudaivps

Claude Code, Codex және Grok CLI-ды өз бұлттық серверіңізде іске қосыңыз

Debian немесе Ubuntu бұлттық серверін Claude Code, Codex және Grok CLI сияқты жасанды зерде агенттеріне арналған құм жәшігіне айналдырыңыз. Кез келген жерден, тіпті телефоннан код жазыңыз.