Aestas, ut solet fieri, et in actione clientium et in mutationibus infrastructurae inceptorum interretialium decrementum videt, nobis narrat Capitaneus Obvius. Simpliciter quia etiam periti rerum informaticarum interdum ferias sumunt. Et CTO quoque. Etiam difficilius est iis qui in officio manent, sed non id est propositum: fortasse ideo aestas est tempus optimum ad tempus sumendum ad systema subsidiorum iam exstans recogitandum et consilium ad emendationem evolvendum. Experientia Yegor Andreev ex... de quo in conventu locutus est .
Cum situs subsidiarios construuntur, cum subsidia creantur, multae sunt insidiae in quas incidere potes. Et omnino in eas incidere non debes. Et in hoc toto, ut in tot aliis rebus, nostra ruina est perfectionismus et... ignavia. Omnia perfecte facere conamur, sed perfectio non est necessaria! Solum certa facere debes, sed ea recte facere, ea ad finem perducere, ut recte fungantur.
Restitutio operationum (seu "failover") non est res iucunda, iucunda "solum habenda"; sed ad unum ipsum efficere destinata est: tempus inoperabile minuere ut ministerium, vel societas, minus pecuniae perdat. Et in omnibus modis subsidii, hoc in contextu cogitandum suadeo: ubi est pecunia?

Prima insidiaCum systemata magna et certa construimus et redundantiam adhibemus, numerum defectuum minuimus. Haec opinio falsa gravis est. Cum redundantiam adhibemus, numerum defectuum probabiliter augemus. Et si omnia recte facimus, tum tempus omnino inoperabile minuemus. Plures defectus erunt, sed cum minoribus sumptibus evenient. Quid enim est redundantia? Complexitatem systematis auget. Quaevis complexitas mala est: plures rotas dentatas, plures rotas mechanicas, breviter, plura elementa habemus – et, proinde, maiorem casum defectus. Et revera frangentur. Et saepius frangentur. Exemplum simplex: dicamus nos habere situm interretialem cum PHP et MySQL. Et is cito opus est ut subsidium accipiatur.
Bene, alterum locum sumamus et systema idem construamus... Complexitas duplicatur — duas entitates habemus. Addimus etiam logicam specificam ad transferenda data ex uno loco in alterum — id est, replicationem datarum, copiam staticam, et cetera. Ergo, logica replicationis plerumque est valde complexa, et propterea complexitas systematis totius non bis, sed ter, quinquies, vel decies maior esse potest.
Secunda insidiaCum systemata vere magna et complexa construimus, quid assequi velimus imaginamur. Ecce: systema maxime fidum desideramus, quod sine ulla interruptione operatur, intra dimidium secundum (vel, melius adhuc, statim) commutatur, et somnia nostra in realitatem convertere incipimus. Sed est exceptio: quo brevius tempus commutationis desideratum, eo complexior logica systematis fit. Quo complexior haec logica fit, eo saepius systema deficiet. Et in condicionem valde molestam incidere possumus: quantum possumus conamur interruptiones minuere, sed re vera omnia nimis complicamus, et cum aliquid errat, interruptio longior fit. Hic est ubi saepe te ipsum cogitantem deprehendis: bene... melius fuisset non habere redundantiam. Melius fuisset si systema unum cum manifesta interruptione fuisset.
Quomodo hoc oppugnare possumus? Desinere debemus nobis ipsis mentiri, desinere nobis blandiri nos navem spatialem constructuros esse, sed potius realistica ratione intellegere quamdiu hoc proiectum stare possit. Et intra hoc maximum tempus, methodos eligemus quas utemur ad firmitatem systematis nostri augendam.

Tempus est quibusdam "fabularum ex clunibus"... ex vita, scilicet.
Exemplum primum
Finge tibi situm interretialem Officinae Laminatoriae Tuborum Numero 1 in Urbe N. Insignibus litteris scriptum est: OFFICINA LATINATORIA TUBORUM Numero 1. Paulo infra est dictum: "Tubi nostri sunt rotundissimi tubi in N." Et infra est numerus telephonicus et nomen Praesidis Exsecutivi. Intellegimus nos subsidium indigere—incredibiliter magni momenti est! Incipimus intellegere ex quo constat. HTML staticum est duae imagines, Praesidem Exsecutivum, re vera, ad mensam in sauna cum socio suo, de novo quodam negotio disputantem ostendentes. De tempore quietis cogitare incipimus. Nobis in mentem venit: ibi quinque minuta manere debet, non diutius. Tum quaestio oritur: quot venditiones revera ex hoc nostro situ interretiali generatae sunt? Quot? Quid significat "zero"? Hoc ipsum significat: quia Praeses Exsecutivus omnes quattuor negotia anno proximo ad eandem mensam, cum eisdem hominibus cum quibus in sauna sedent, fecit. Et intellegimus etiam si situs interretialis per unum diem non functionat, nihil terribile futurum esse.
Ex datis datis, diem habemus ad hanc fabulam instituendam et incipiendam. De ratione copiarum reservarum cogitare incipimus. Et rationem copiarum reservarum aptissimam huic exemplo eligimus: copias reservarum non utimur. Quilibet administrator hoc totum intra semihoram, intervallis inclusis, parare potest. Servatorem interretialem constituere, fasciculos imponere — id est. Fungitur. Nihil vigilantia eget, nihil attentionem specialem requirit. Ergo, conclusio ex exemplo primo satis manifesta est: officia quae copias reservarum non requirunt, copias reservare non debent.

Exemplum secundum
Blog societatis: operarii specialiter instructi ibi nuntios scribunt, ut puta nos in tali exhibitione participavimus, novum productum emisimus, et cetera. Dicamus PHP ordinarium esse cum... WordPress, parvam basim datorum, et paulum datorum staticorum. Scilicet, cogitatio eam sine causa omnino relinquendi in mentem redit — "non plus quam quinque minuta!" — et cetera. Sed ulterius cogitemus. Quid hoc blog facit? Homines huc ex Yandex, Google, et investigationibus organicis veniunt. Optime. Num venditiones omnino ad id pertinent? Perspicacia: non sane. Frequentia venditionum ad situm principalem it, qui in alia machina est. De consilio subsidiario pro blog cogitare incipimus. Optime, intra duas horas paratus esse debet, et bona idea esset ad hoc paratum esse. Solutio rationabilis esset machinam ex alio centro datorum conducere et ambitum in eo instituere, id est, servum interretialem, PHP, WordPress, MySQL, et ibi relinquere, silens. Quo momento omnia fracta esse animadvertimus, duo nobis agenda sunt: MySQL dump quinquaginta metra distantem evolvere, quod minutum unum requirit, et imagines e copia reservata evolvere. Neque ea summa magna est. Itaque, tota res intra semihoram parata est et currit. Nulla replicatio, aut, dii mihi ignoscant, automatice revertitur. Summa summarum: quod celeriter e copia reservata evolvere possumus, non opus est copia reservata.

Exemplum tertium, paulo implicatius
Taberna interretialis. PHP cum machina aperta, paulum modificata, MySQL cum solida basi datorum. Satis multae notitiae staticae (taberna interretialis imagines pulchras HD et cetera habet), Redis pro sessione, et Elasticsearch pro investigatione. De tempore inactivo cogitare incipimus. Et hic, scilicet, manifestum est tabernam interretialem non posse ibi per unum diem sine dolore sedere. Postremo, quo diutius iners est, eo plus pecuniae perdimus. Necesse est eam accelerare. Sed quantum? Credo si ibi per horam sedemus, nemo insaniturus. Ita, aliquid perdemus, sed si nimis facimus, peius tantum fiet. Rationem temporis inactivi horariam acceptabilem definimus.
Quomodo haec omnia servari possunt? Machina quoquo modo necessaria est: hora satis brevis est. MySQL: hoc replicationem requirit, replicationem vivam, quia 100 GB intra horam verisimiliter non exonerabuntur. Statisticae, imagines: iterum, 500 GB intra horam exonerari fortasse non poterunt. Ergo, melius est imagines statim copiare. Redis: hoc magis interest. Sessiones in Redis servantur—non possumus id simpliciter sepelire. Quia id non valde bonum esset: omnes usores exirentur, currus evacuarentur, et cetera. Homines cogerentur nomen usoris et tesserae iterum inserere, et multi homines discedere possent nec emptionem complerent. Iterum, conversio decresceret. Ex altera parte, Redis, qui omnino renovatus est cum usoribus nuperrime ingressis, verisimiliter etiam non necessarius est. Bona compromissio est Redis sumere et ex copia restituere, vel hesterna vel, si unam habes singulis horis, abhinc hora. Feliciter, ex copia restituere est tantum unum fasciculum copiare. Atque fabula maxime curiosa est Elasticsearch. Num quis umquam replicationem MySQL constituit? Num quis umquam replicationem Elasticsearch constituit? Et num recte postea functa est? Quod volo dicere est: entitatem quandam in systemate nostro videmus. Utile videtur, sed complexum est.
Res complexa est eo sensu quod collegae nostri machinatores nullam cum ea experientiam habent. Aut experientias negativas habent. Aut intellegimus adhuc technologiam satis novam cum subtilitatibus et adhuc imperfectam esse. Cogitamus... Mehercule, elastica quoque ingens est, et restitutio ex exemplari secundario etiam diu durat, quid faciemus? Intellegimus hoc in casu elasticam ad investigationem adhiberi. Sed quomodo taberna nostra interretialis vendit? Ad mercatores imus et quaerimus unde homines veniant. Respondent: "90% hominum ex Yandex Market directe ad schedam producti veniunt." Et aut emunt aut non. Ergo, 10% utentium investigatione indigent. Et replicationem elasticam conservare, praesertim inter diversa centra datorum in diversis zonis — revera multae subtilitates ibi sunt. Quid est solutio? Elasticam in situ redundante instituimus et nihil cum eo facimus. Si res diutius procedit, fortasse aliquando eam instituemus et operantem faciemus, sed id non certum est. Fere, conclusio plus minusve eadem manet: nos, iterum, officia non reservamus quae pecuniam non afficiunt. Ut systema simplex maneat.

Exemplum quartum, etiam magis implicatum
Integrator: venditio florum, reservatio taxiraedorum, venditio mercium — fere, quidlibet. Programma grave est quod perpetuo currit, multis utentibus destinatum. Plenum et iucundum acervum habet, cum datis datorum et solutionibus iucundis, et magnum onus laboris tolerat, sed, quod potissimum est, molestum est id plus quam quinque minuta quiescere. Non solum quia homines id non emerent, sed quia homines videbunt id fractum esse, irascentur, et fortasse omnino non redibunt.
Bene. Quinque minuta. Quid de hoc facturi sumus? Hoc in casu, locum verum subsidiarium, plene fundatum, cum plena replicatione, aedificabimus, et fortasse etiam relocationem ad hunc locum quantum fieri potest automatizabimus. Et praeterea, unam rem magni momenti meminisse debemus: protocollum relocationis revera scribere. Protocollum, etiam si omnia automatizavisti, valde simplex esse potest. Aliquid simile "hoc scriptum Ansible curre," "hanc capsam in via 53 nota," et cetera — sed debet esse accurata index actionum.
Et omnia clara videntur. Mutatio replicationis est negotium leve, vel se ipsa mutabit. Rescribere nomen dominii in DNS eadem fabula est. Problema est, cum proiectum huiusmodi corruit, pavor incipit, et etiam peritissimi administratores huic obnoxii esse possunt. Sine instructionibus claris ut "aperi terminale, huc vade, inscriptio servi nostri adhuc haec est," spatium recuperationis quinque minutorum difficile est servare. Praeterea, cum hac ratione utimur, facile est quaslibet mutationes in infrastructura, exempli gratia, detegere et rationem proinde accommodare.
Bene, si systema subsidiorum valde complexum est et aliquando errorem facimus, tum situm subsidiorum nostrum corrumpere possumus, et insuper, data in cucurbitam in utroque situ mutabuntur - quod vere triste esset.

Exemplum quintum, plenum et vehemens
Servitium internationale cum centum milionibus utentium toto orbe terrarum. Omnis zona temporis possibilis, onus magnum ad maximas optiones, et nulla omnino inoperatio. Momentum unum et miserum erit. Quid agendum? Iterum, ad summum, recurrere. Omnia quae in exemplo priori commemoravi iam fecimus, et plus etiam. Mundus perfectus est, et infrastructura nostra est IaaC secundum omnes normas DevOps. Hoc est, omnia in Git sunt, et tantum globulum premere debes.
Quid deest? Unum — exercitatio. Sine ea vivere non possumus. Omnia perfecta esse videntur, omnia sub imperio habemus. Prememus bullam, et omnia fiunt. Etiam si hoc verum est — et intelligimus non semper ita esse — systema nostrum cum aliis systematibus interagitur. Exempli gratia, DNS ex Route 53, repositorium S3, integratio cum quibusdam API. Non omnia in hoc experimento theoretico praevidere possumus. Et donec revera clavem trahemus, nesciemus utrum res functionem suam habebit necne.

Hoc fortasse totum est. Noli esse ignavus neque nimis laborare. Et sit tibi tempus operationis!
Source: www.habr.com
