PetroNet System НӨӨЦЛӨЛТ Баримт бичиг

S3 ENDPOINT · backups.petronet.mn

Хамгийн ихдээ нэг өдөр

Өгөгдлийн сан уствал энэ платформын алдах бүхэн нь сүүлийн 03:15-аас хойшхи ажил. Байгууллага, гишүүнчлэл, эрх, баримт, гарын үсэг, audit мөр — үлдсэн бүх зүйл шифрлэгдсэн, устгагдах боломжгүй хуулбар дээр байна.

61 хүснэгтхамгаалагдана 24 цагхамгийн их алдагдал 46 KBөдрийн зардал 0устгах эрх
01 · ЯАГААД

Бүтэлгүйтэх хүртэл нь хэвийн харагддаг ганц систем

Сервер унавал мэднэ. Диск дүүрвэл мэднэ. Нөөцлөлт ажиллахаа болбол юу ч болохгүй — сэргээх өдөр хүртэл.

Ард нь юу байна

Дахин бичих боломжгүй 61 хүснэгт

Гурван schema: workspace 32, registry 22, operator 7. Байгууллага, хүн, гишүүнчлэл, эрх, суулгасан апп, баримт, гарын үсэг, audit мөр.

Кодыг git-ээс сэргээнэ, серверийг дахин үүсгэнэ. Эдгээрийг хаанаас ч авахгүй.

Тэгш бус наймаа

Өдөрт 46 KB — эсвэл бүх зүйл

Нэг өдрийн нөөцлөлт нь 46 килобайт ба хэдхэн секунд. Байхгүй байхын үнэ нь платформын бүх түүх.

Мэдээллийн технологид ийм тэгш бус харьцаа ховор. Тиймээс энд асуулт «хийх үү» биш, «яагаад өчигдөр хийгээгүй байсан бэ» байсан.

Чимээгүй бүтэлгүйтэл

Хэмжигдээгүй нөөц бол нөөц биш

cron бүтэлгүйтэхдээ хашгирдаггүй. Тиймээс ажиллагаа бүр Prometheus руу дөрвөн хэмжүүр бичдэг: хамгийн сүүлд хэзээ ажилласан, хэзээ амжилттай болсон, хэмжээ нь хэд, өөр байршилд хүрсэн эсэх.

«Нөөцлөлт байхгүй» гэдэг нь одоо сэрэмжлүүлэг дуугардаг байдал.

2026-08-30 ХҮРТЭЛ

Энэ платформ дээр нөөцлөлт огт байгаагүй

Онолын жишээ биш. Энэ хостыг шалгахад cron бичлэг байгаагүй, скрипт байгаагүй, /var/backups хоосон, platform_backups хүснэгтэд нэг ч мөр байгаагүй. Ямар нэг зүйл эвдэрсэн бол буцаах зүйл байхгүй байсан — тэр өдрийг хүртэл хэн ч мэдэхгүй байх байсан.

  • cron — байхгүй
  • скрипт — байхгүй
  • /var/backups — хоосон
  • platform_backups — 0 мөр
02 · ОБЪЕКТ

Нэг файлын анатоми

Өргөтгөл бүр юу болсныг хэлдэг тул нэр өөрөө түүх өгүүлнэ.

nexus-20260830-062805.sql.gz.age

  • .sql

    Өдөр бүр 03:15-д авсан бүтэн pg_dump.

  • .gz

    Шахагдсан. Энэ суулгацынх ойролцоогоор 46 KB.

  • .age

    Хостыг орхихоосоо өмнө шифрлэгдсэн. Тайлах түлхүүр энд байхгүй.

03 · БАТАЛГАА

Объект бүрийн үнэн

Гурван шинж чанар, ач холбогдлын дарааллаар.

Шифрлэлт

Хостыг орхихоосоо өмнө шифрлэгдэнэ

Эх сервер дээр зөвхөн age-ийн нийтийн түлхүүр байдаг. Эвдэрсэн платформ өөрийн урьд илгээсэн зүйлээ уншиж чадахгүй, энэ санг барьсан хэн ч уншиж чадахгүй. Хувийн түлхүүр операторт байна.

Хамгийн чухал нь

Эх сервер түүхээ устгаж чадахгүй

Bucket нь хувилбартай, суулгац бүрийн түлхүүр нь бичих, унших, жагсаах эрхтэй — устгах эрхгүй. Гараас нь атгасан хост нэмж чадна, арилгаж чадахгүй.

DeleteObject → Access Denied

Гадаргуу

Зөвхөн энэ API гадагш харна

Энэ домэйн нь S3-той нийцэх endpoint. Санг удирдах консол нь loopback дээр үлддэг: тэр нь хоёр дахь нэвтрэх гадаргуу бөгөөд ард нь бүх суулгацын өгөгдөл байна.

04 · ӨДӨР ТУТАМ

03:15 цагт юу болдог вэ

Хост бүр дээр нэг cron мөр. Дараалал нь чухал — алхам бүр өмнөхийнхөө үр дүнг нэрэндээ авч үлддэг.

  1. pg_dump

    Бүтэн dump. 10 KB-аас жижиг гаралтыг скрипт өөрөө татгалзана — алдаагүй дуусаад юу ч бичээгүй pg_dump бол амжилттай харагдах бүтэлгүйтэл.

  2. Шахалт, дараа нь шифрлэлт

    Энэ дарааллаар: шифрлэгдсэн өгөгдөл шахагддаггүй.

  3. Хоёр газар бичигдэнэ

    Хостын диск дээр нэг хуулбар, энэ санд нэг. Дискэн дээрх нь хурдан сэргээхэд, эндэх нь тэр дискийг алдсан үед.

  4. Үр дүн нь хэмжигдэнэ

    Prometheus руу дөрвөн хэмжүүр. Бүтэлгүйтсэн ажиллагаа өмнөх амжилтын мөчийг хадгална — эс бөгөөс нэг бүтэлгүйтэл нь «хэзээ ч амжилттай болоогүй»-тэй ялгагдахаа болино.

05 · СЭРГЭЭЛТ

Өгөгдлөө буцааж авах

Сэргээж үзээгүй нөөцлөлт бол нөөцлөлт биш, зөвхөн итгэл найдвар. Дараах алхмуудыг хаях зориулалттай сан дээр ажиллуулж баталгаажуулсан.

# 1 — сангаас татах
mc cp store/nexus-backups-nexus/nexus-….sql.gz.age .

# 2 — хувийн түлхүүрээр тайлах
age -d -i backups-age-key.txt nexus-….sql.gz.age > dump.sql.gz

# 3 — хаях зориулалттай санд сэргээж шалгах
createdb restore_check
gunzip -c dump.sql.gz | psql -d restore_check
psql -d restore_check -c 'SELECT count(*) FROM registry.tenants'

Хувийн түлхүүрээ алдвал бүх нөөц ашиггүй болно. Тэр файлыг нөөц байгаа машин дээр биш, нууц үгийн менежерт эсвэл офлайн хадгална. Хостод үлдээвэл шифрлэлт нь утгагүй болно.

06 · ИЛЭН ДАЛАНГҮЙ

Юунаас хамгаалахгүй вэ

Nexus-ийн өөрийн хуулбарын хувьд энэ сан нь тэр платформтой нэг машин дээр байна. Хүснэгт устгасан, буруу migration, volume дахин үүсгэснээс хамгаална — хостоо бүхэлд нь алдахаас хамгаалахгүй.

Өөр хост дээрх суулгацуудын хувьд энэ нь жинхэнэ өөр байршил юм. Сүүлийн цоорхойг хаах алхам нь энэ санг өөр газар руу толилуулах.