Naha server kedah dipareuman upami uji haseup pusat data kahuruan?

Kumaha perasaan anjeun upami hiji dinten usum panas anu saé pusat data sareng alat anjeun katingali sapertos kieu?

Naha server kedah dipareuman upami uji haseup pusat data kahuruan?

Halo sadayana! Nami abdi Dmitry Samsonov, abdi damel salaku administrator sistem ngarah di "Sakelas" Poto nunjukkeun salah sahiji tina opat pusat data dimana alat-alat anu nyayogikeun proyék kami dipasang. Di tukangeun témbok ieu aya sakitar 4 rébu alat: server, sistem panyimpen data, alat jaringan, jsb. - ampir ⅓ sadaya alat kami.
Paling server anu Linux. Aya ogé sababaraha belasan server dina Windows (MS SQL) - warisan urang, nu geus sacara sistematis abandoning salila sababaraha taun.
Janten, dina 5 Juni 2019 jam 14:35, insinyur di salah sahiji pusat data urang ngalaporkeun alarm seuneu.

Negasi

14:45. Insiden haseup leutik di pusat data langkung umum tibatan anu anjeun pikirkeun. Indikator di jero aula éta normal, jadi réaksi munggaran urang kawilang tenang: aranjeunna ngenalkeun larangan gawé kalawan produksi, nyaeta, dina sagala parobahan konfigurasi, rolling kaluar versi anyar, jeung sajabana, iwal karya nu patali jeung ngalereskeun hal.

murka

Dupi anjeun kantos nyobian pikeun manggihan ti patugas pemadam kebakaran persis dimana seuneu lumangsung dina hateupna, atawa meunang kana hateup ngaduruk sorangan pikeun assess kaayaan? Kumaha darajat kapercayaan kana inpormasi anu ditampi ku lima jalma?

14: 50. Inpormasi parantos nampi yén seuneu nuju ngadeukeutan sistem pendingin. Tapi bakal datang? Administrator sistem anu tugasna ngaleungitkeun lalu lintas éksternal ti payuneun pusat data ieu.

Ayeuna, payuneun sadaya jasa kami diduplikasi dina tilu pusat data, balancing dianggo dina tingkat DNS, anu ngamungkinkeun urang ngahapus alamat hiji pusat data tina DNS, ku kituna ngajagi pangguna tina masalah poténsial sareng aksés kana jasa. . Lamun masalah geus lumangsung dina puseur data, eta ninggalkeun rotasi otomatis. Anjeun tiasa maca deui di dieu: Balancing beban sareng kasabaran kasalahan dina Odnoklassniki.

Seuneu teu acan mangaruhan urang ku cara naon waé - boh pangguna atanapi alat-alatna henteu ruksak. Naha ieu kacilakaan? Bagian kahiji tina dokumen "Rencana Aksi Kacilakaan" ngahartikeun konsép "Kacilakaan", sareng bagianna ditungtungan sapertos kieu:
«Upami aya mamang naha aya kacilakaan atanapi henteu, maka éta kacilakaan!»

14:53. Koordinator darurat ditunjuk.

Koordinator mangrupikeun jalma anu ngatur komunikasi antara sadaya pamilon, ngevaluasi skala kacilakaan, ngagunakeun Rencana Aksi Darurat, narik tanaga anu diperyogikeun, ngawaskeun parantosan perbaikan, sareng anu paling penting, delegasi tugas naon waé. Kalayan kecap sanésna, ieu mangrupikeun jalma anu ngatur sadaya prosés tanggap darurat.

Lelang

15:01. Urang ngawitan nganonaktipkeun server nu teu patali jeung produksi.
15:03. Kami leres mareuman sadaya jasa anu dicadangkeun.
Ieu ngawengku teu ngan fronts (anu ku titik ieu pamaké euweuh aksés) jeung jasa bantu maranéhanana (logika bisnis, caches, jsb), tapi ogé rupa database kalawan faktor réplikasi 2 atawa leuwih (Cassandra, neundeun data binér, neundeun tiis, NewSQL jsb.).
15: 06. Inpormasi parantos ditampi yén seuneu ngancam salah sahiji aula pusat data. Urang teu boga parabot di kamar ieu, tapi kanyataan yén seuneu bisa nyebarkeun ti hateup ka aula greatly robah gambar tina naon anu lumangsung.
(Ieu engké tétéla yén euweuh anceman fisik ka aula, saprak éta hermetically disegel tina hateupna. Anceman éta ngan pikeun sistem cooling aula ieu.)
15:07. Urang ngidinan palaksanaan paréntah dina server dina modeu gancangan tanpa cék tambahan (tanpa kalkulator favorit urang).
15:08. Suhu di aula aya dina wates normal.
15: 12. Paningkatan suhu di aula kacatet.
15:13. Langkung ti satengah server di pusat data dipareuman. Hayu urang neruskeun.
15:16. Kaputusan pikeun mareuman sadaya alat.
15:21. Urang ngawitan mareuman kakuatan ka server stateless tanpa neuleu shutting handap aplikasi tur sistem operasi.
15:23. Sakelompok jalma anu tanggung jawab pikeun MS SQL dialokasikeun (aya sababaraha di antarana, gumantungna jasa dina aranjeunna henteu saé, tapi prosedur pikeun malikkeun fungsionalitas langkung lami sareng langkung rumit tibatan, contona, Cassandra).

rarasaan kateken

15: 25. Inpormasi ditampi ngeunaan kakuatan anu dipareuman dina opat aula tina 16 (No. 6, 7, 8, 9). Parabot kami aya di aula 7 sareng 8. Henteu aya inpormasi ngeunaan dua aula urang (No. 1 sareng 3).
Biasana, nalika kahuruan, catu daya langsung dipareuman, tapi dina hal ieu, berkat kerja koordinasi patugas pemadam kebakaran sareng tanaga téknis pusat data, éta henteu dipareuman dimana-mana sareng henteu langsung, tapi upami diperyogikeun.
(Ieu engké kapanggih yén kakuatan teu dipareuman di aula 8 jeung 9.)
15:28. Kami mimiti nyebarkeun database MS SQL tina cadangan di pusat data anu sanés.
Sabaraha lami peryogi waktosna? Aya cukup kapasitas jaringan pikeun sakabéh jalur?
15: 37. Pareuman sababaraha bagian jaringan kacatet.
Manajemén sareng jaringan produksi sacara fisik terasing tina unggal anu sanés. Upami jaringan produksi sayogi, teras anjeun tiasa angkat ka server, ngeureunkeun aplikasi sareng mareuman OS. Upami teu aya, teras anjeun tiasa log in via IPMI, ngeureunkeun aplikasi sareng mareuman OS. Upami teu aya jaringan, maka anjeun moal tiasa ngalakukeun nanaon. "Hatur nuhun, Cap!", anjeun bakal pikir.
"Jeung sacara umum, aya loba kaributan," Anjeun bisa ogé mikir.
Hal éta server, sanajan tanpa seuneu, ngahasilkeun jumlah badag panas. Leuwih tepat, lamun aya cooling, aranjeunna ngahasilkeun panas, sarta lamun euweuh cooling, maranéhna nyieun inferno hellish, nu, di pangalusna, bakal ngalembereh bagian tina parabot jeung mareuman bagian sejen, sarta di awon ... ngabalukarkeun a seuneu di jero aula, nu ampir dijamin ngancurkeun sagalana.

Naha server kedah dipareuman upami uji haseup pusat data kahuruan?

15:39. Urang ngalereskeun masalah sareng database conf.

Basis data conf mangrupikeun backend pikeun jasa anu sami, anu dianggo ku sadaya aplikasi produksi pikeun ngarobih setélan gancang. Tanpa dasar ieu, urang teu bisa ngadalikeun operasi portal, tapi portal sorangan bisa jalan.

15:41. Sénsor suhu dina alat jaringan inti ngarékam bacaan anu caket kana maksimal anu diidinan. Ieu mangrupikeun kotak anu ngeusian sadayana rak sareng ngajamin operasi sadaya jaringan di jero pusat data.

Naha server kedah dipareuman upami uji haseup pusat data kahuruan?

15:42. Tracker masalah sareng wiki henteu sayogi, gentos ka sayaga.
Ieu sanés produksi, tapi upami aya kacilakaan, kasadiaan dasar pangaweruh tiasa kritis.
15:50. Salah sahiji sistem ngawaskeun parantos pareum.
Aya sababaraha di antarana, sarta aranjeunna jawab aspék béda tina jasa. Sababaraha di antarana dikonpigurasi pikeun beroperasi sacara mandiri dina unggal pusat data (nyaéta, aranjeunna ngan ukur ngawas pusat data sorangan), anu sanésna diwangun ku komponén anu disebarkeun anu transparan salamet tina leungitna pusat data.
Dina hal ieu eureun gawé indikator logika bisnis sistem deteksi anomali, nu beroperasi dina modeu master-sayaga. Dialihkeun ka sayaga.

Nyoko

15:51. Sadaya server iwal MS SQL dipareuman via IPMI tanpa pareum leres.
Anjeun siap pikeun manajemén server masif via IPMI lamun perlu?

Momen pisan nalika nyalametkeun alat di pusat data réngsé dina tahap ieu. Sadayana anu tiasa dilakukeun parantos dilakukeun. Sababaraha kolega tiasa istirahat.
16: 13. Inpormasi nampi yén pipa freon tina AC ngabeledug dina hateupna - ieu bakal ngalambatkeun peluncuran pusat data saatos seuneu ngaleungitkeun.
16:19. Numutkeun data anu ditampi ti staf téknis pusat data, paningkatan suhu di aula parantos lirén.
17:10. The conf database geus disimpen deui. Ayeuna urang tiasa ngarobih setélan aplikasi.
Naha ieu penting pisan lamun sagalana geus lepat-toleran sarta jalan sanajan tanpa hiji puseur data?
Anu mimiti, henteu sadayana lepat-toleran. Aya rupa-rupa layanan sekundér anu teu acan salamet gagalna puseur data cukup ogé, sarta aya database dina modeu master-sayaga. Kamampuhan pikeun ngatur setélan ngamungkinkeun anjeun pikeun ngalakukeun sagala anu dipikabutuh pikeun ngaminimalkeun dampak akibat tina kacilakaan pikeun pangguna bahkan dina kaayaan anu sesah.
Kadua, janten écés yén operasi pusat data moal dibalikeun deui dina jam-jaman anu bakal datang, ku kituna kedah nyandak ukuran pikeun mastikeun yén henteu aya réplika jangka panjang henteu nyababkeun masalah tambahan sapertos disk pinuh dina. puseur data sésana.
17:29. waktos pizza! Urang employ jalma, teu robot.

Naha server kedah dipareuman upami uji haseup pusat data kahuruan?

rehabilitasi

18:02. Dina aula No.. 8 (urang), 9, 10 jeung 11 hawa geus stabilized. Salah sahiji anu tetep offline (No. 7) imah parabot urang, sarta hawa aya terus naek.
18:31. Aranjeunna masihan lebet-payun pikeun ngamimitian up parabot di aula No.. 1 jeung 3 - aula ieu teu kapangaruhan ku seuneu.

Ayeuna, server diluncurkeun di aula No 1, 3, 8, dimimitian ku anu paling kritis. Operasi bener sadaya jasa ngajalankeun dipariksa. Masih aya masalah sareng aula No.. 7.

18:44. Staf teknis puseur data manggihan yén di kamar No. Numutkeun data urang, 7 server tetep online di dinya. Saatos dipariksa kadua, urang manggihan 26 server.
20:18. Teknisi puseur data niup hawa ngaliwatan kamar unair-conditioned ngaliwatan saluran mobile ngalir ngaliwatan lorong.
23:08. Admin munggaran dikirim ka imah. Aya anu kedah bobo wengi supados neraskeun padamelan isukan. Salajengna, urang bakal ngaleupaskeun sababaraha langkung admin sareng pamekar.
02:56. Kami ngaluncurkeun sadayana anu tiasa diluncurkeun. Kami seueur mariksa sadaya jasa nganggo tés otomatis.

Naha server kedah dipareuman upami uji haseup pusat data kahuruan?

03:02. AC di tukang, aula 7 geus disimpen deui.
03:36. Urang mawa fronts di puseur data kana rotasi di DNS. Ti moment ieu lalulintas pamaké mimiti anjog.
Kami ngirimkeun kalolobaan tim administrasi ka bumi. Tapi urang ninggalkeun sababaraha urang balik.

FAQ leutik:
P: Naon anu lumangsung ti 18:31 ka 02:56?
A: Saatos "Rencana Aksi Bencana", kami ngaluncurkeun sadaya jasa, dimimitian ku anu paling penting. Dina hal ieu, koordinator dina obrolan ngaluarkeun ladenan ka administrator bébas, anu mariksa naha OS jeung aplikasi geus dimimitian, naha aya kasalahan, sarta naha indikator anu normal. Saatos peluncuran réngsé, anjeunna ngalaporkeun ka obrolan yén anjeunna bébas sareng nampi jasa énggal ti koordinator.
Prosésna langkung laun ku hardware anu gagal. Sanaos ngeureunkeun OS sareng mareuman server leres-leres, sababaraha server henteu uih deui kusabab kagagalan ngadadak disk, mémori, sareng sasis. Nalika kakuatan leungit, laju gagalna ningkat.
Q: Naha anjeun henteu tiasa ngajalankeun sadayana sakaligus, teras ngalereskeun naon anu muncul dina ngawaskeun?
A: Sadayana kedah dilakukeun sacara bertahap, sabab aya katergantungan antara jasa. Sareng sadayana kedah dipariksa langsung, tanpa ngantosan ngawaskeun - sabab éta langkung saé pikeun nungkulan masalah langsung, tanpa ngantosan aranjeunna langkung parah.

7:40. Panungtungan admin (koordinator) indit ka ranjang. Gawé poé kahiji geus réngsé.
8:09. Pamekar anu munggaran, insinyur pusat data sareng pangurus (kalebet koordinator énggal) mimiti damel restorasi.
09:37. Urang mimiti ngangkat aula No.. 7 (anu panungtungan).
Dina waktos anu sami, urang teras-terasan mulangkeun naon anu henteu dibenerkeun di kamar sanés: ngagentos disk / mémori / server, ngalereskeun sadayana anu "kaduruk" dina ngawaskeun, ngalihkeun peran deui dina skéma master-sayaga sareng hal-hal alit sanésna, anu aya. mangkaning rada loba.
17:08. Urang ngidinan sagala gawé biasa kalawan produksi.
21:45. Pagawéan poé kadua geus réngsé.
09:45. Dinten ayeun Jumaah. Masih aya sababaraha masalah leutik dina ngawaskeun. Minggu payun, sadayana hoyong santai. Urang teruskeun massively ngalereskeun sagalana urang tiasa. Tugas admin biasa anu tiasa ditunda ditunda. Koordinator énggal.
15:40. Ujug-ujug satengah tina tumpukan parabot jaringan inti di puseur data LAIN restarted. Fronts dicandak kaluar rotasi pikeun ngaleutikan resiko. Henteu aya pangaruh pikeun pangguna. Ieu engké tétéla yén éta téh chassis faulty. Koordinator damel pikeun ngalereskeun dua kacilakaan sakaligus.
17:17. Operasi jaringan di puseur data sejen geus disimpen, sagalana geus dipariksa. Puseur data nempatkeun kana rotasi.
18:29. Pagawean dinten katilu sareng, sacara umum, restorasi saatos kacilakaan parantos réngsé.

afterword

04.04.2013 dina dinten kasalahan 404, "Batur sakelas" salamet tina kacilakaan pangbadagna - salila tilu poé portal éta sagemblengna atawa sawaréh sadia. Sapanjang waktos ieu, langkung ti 100 urang ti kota anu béda-béda, ti perusahaan anu béda-béda (seueur hatur nuhun deui!), Jarak jauh sareng langsung di pusat data, sacara manual sareng otomatis, ngalereskeun rébuan server.
Kami geus digambar conclusions. Pikeun nyegah hal ieu kajantenan deui, kami parantos ngalaksanakeun sareng terus ngalaksanakeun padamelan anu ageung dugi ka ayeuna.

Naon bédana utama antara kacilakaan ayeuna sareng 404?

  • Kami gaduh "Rencana Aksi Kacilakaan". Sakali saparapat, urang ngalaksanakeun latihan - urang peran-maén kaayaan darurat, nu grup pangurus (sadayana dina gilirannana) kudu ngaleungitkeun ngagunakeun "Rencana Aksi Darurat". Pangurus sistem ngarah giliran maén peran koordinator.
  • Quarterly, dina modeu test, urang ngasingkeun puseur data (sadayana dina gilirannana) ngaliwatan LAN jeung jaringan WAN, anu ngamungkinkeun urang pikeun gancang ngaidentipikasi bottlenecks.
  • Pangsaeutikna disk rusak, sabab kami geus tightened standar: jam operasi pangsaeutikna, ambang stricter pikeun SMART,
  • Kami parantos ngantunkeun BerkeleyDB, pangkalan data anu lami sareng teu stabil anu peryogi seueur waktos pikeun pulih saatos ngamimitian deui server.
  • Urang ngurangan jumlah server kalawan MS SQL sarta ngurangan gumantungna kana sésana.
  • Urang boga sorangan awan - hiji-awan, dimana urang geus aktip migrasi sadaya jasa salila dua taun ayeuna. Awan pisan nyederhanakeun sadayana siklus damel sareng aplikasi, sareng upami aya kacilakaan éta nyayogikeun alat unik sapertos:
    • eureun bener sadaya aplikasi dina hiji klik;
    • gampang migrasi aplikasi ti server gagal;
    • rengking otomatis (dina urutan prioritas jasa) peluncuran sakabéh puseur data.

Kacilakaan anu dijelaskeun dina tulisan ieu mangrupikeun anu panggedéna saprak dinten ka-404. Tangtosna, henteu sadayana lancar. Salaku conto, nalika henteu aya pusat data anu ruksak ku seuneu di pusat data anu sanés, disk dina salah sahiji server gagal, nyaéta, ngan ukur salah sahiji tina tilu réplika dina klaster Cassandra anu tiasa diaksés, naha éta 4,2% tina mobile. pamaké aplikasi teu bisa asup. Dina waktos anu sami, pangguna anu parantos nyambung terus jalan. Dina total, salaku hasil tina kacilakaan éta, leuwih ti 30 masalah anu dicirikeun - ti bug banal mun shortcomings dina arsitektur jasa.

Tapi bédana anu paling penting antara kacilakaan ayeuna sareng 404th nyaéta nalika urang ngaleungitkeun akibat tina seuneu, pangguna masih sms sareng nelepon pidéo. Persis, dimaénkeun kaulinan, listened kana musik, masihan silih hadiah, diawaskeun video, serial TV jeung saluran TV di OK, sarta ogé streamed di OKÉ Hirup.

Kumaha kacilakaan anjeun?

sumber: www.habr.com

Tambahkeun komentar