Quomodo pod potiores in Kubernetes tempus downtime effecit apud Grafana Labs

Nota. transl.: Intentio technica singularia exhibemus de causis recentis downtime in nubilo servitii a creatoribus Grafanae conservatis. Hoc classicum est exemplum quomodo novum ac perquam utile notam ad meliorem qualitatem infrastructure constituendam... nocere possit, si non provideas multas eius applicationis in rerum productionis extenuationes. Magnum est, cum res huiuscemodi apparent, quae te non solum ex erroribus tuis discere permittunt. Singula sunt in translatione huius textus a vice praesidis facti e Grafana Labs.

Quomodo pod potiores in Kubernetes tempus downtime effecit apud Grafana Labs

Die Veneris, die 19 mensis Iulii, Prometheus Hosted in Grafana Cloud ministerium operandi obstitit circiter XXX minuta. Me paenitet ad eu ipsum affectus omnibus clientibus. Nostrum officium est instrumenta vigilantia quibus opus est providere, et intellegimus ea non habere parata posse vitam tuam difficiliorem reddere. Gravissime assumenda incidunt architecto. Haec nota explicat quid acciderit, quomodo respondimus, et quod agimus ut id non fiat iterum.

erectus

Grafana Cloud Hosted Promethei officium fundatur cortex - CNCF consilium ad faciendum scalam horizontaliter, promptum, multi-tenentem Promethei servitium. Architectura Cortex constat ex instrumentis singularibus, quarum unaquaeque suum munus exercet: replicatio, repositio, quaestionis, etc. Cortex sub actuoso evolutionis est et continenter novas lineas addit et effectus meliori. Cortex novas ligaturas emissiones semper explicamus ut clientes uti possint his features - fortunate, Cortex renovari potest sine temporis momento.

Propter inconsutilem updates, Ingester Cortex ministerium requirit additam imaginem Ingester in processu renovationis. (Nota. transl.: Ingester β€” Cortex fundamentalis pars. Eius officium est constantem rivum exemplorum colligere, eos in Promethei chunkis glomerare et in database quasi DynamoDB, BigTable vel Cassandra condere. Hoc concedit vetus Ingesters ut notitias recentes ad novos Ingesters transmittat. Notatu dignum est Ingesters res exigentias esse. Ad eas laborandum, debes habere 4 coros et 15 GB memoriae per pod, i.e. 25% processus potentiae et memoriae machinae basis in casu botri nostri Kubernetes. In genere, in botro plus quam 4 nuclei et 15 GB memoriae multum insuetis opibus habere solemus, ita facile haec additamenta in programmatibus trahere possumus.

Saepe tamen evenit ut in operatione normali nulla machinarum 25% rerum insuetarum hoc habeat. Etiam non contendimus: CPU et memoria aliis processibus semper utilis erit. Ad hanc quaestionem solvendam, uti decrevimus Kubernetes Pod Priorities. Idea est Ingesters praestantiorem prioritatem quam alia (stateless) microform dare. Cum opus est ut addito (N+1) Ingester, temporarie alia siliqua minora depellimus. Hae siliquae ad liberas facultates in aliis machinis transferuntur, satis amplum "foramen" relinquens ad Ingestum addito.

Feria quinta, die 18 mensis Iulii, quattuor gradus prioritatis novis nostris racemis evolvit; critica, longus, mediocris ΠΈ humilis. Probati sunt in botro interno nullo cliente negotiandi per unam circiter hebdomadam. Defalta, siliquae sine certa priusitate recepta mediocris prioritas, classis pro Ingesters conposita altum prioritas. Critical vigilantia servata est (Prometheus, Alertmanager, nodi-exporter, kube-state-metrics, etc.). Nostra config aperta est, et PR . videre potes hic.

accidente

Die Veneris, die 19 mensis Iulii, unus e fabrum cortex botrum magnum clienti novum dedicavit. Figmentum huius botri novum vasculum prioritatum non comprehendit, ideo siliquae omnes novae prioritati defaltae assignatae sunt. mediocris.

Botrus Kubernetes satis facultates non habuit pro novo cortex botri, et productio cortex exsistentis botri renovata non est (Ingesters sine remanserant. summus prioritas). Cum Insecta novi botri per defaltam habuit mediocris prioritas, et legumina in productione existente sine prioritate laboraverunt, Ingesters novi botri substituerunt Ingesters e cortex productionis botri existente.

ReplicaSet pro evicto Ingestero in botrum productione vasculum evictum detectum et novum creavit ad certum exemplarum numerum conservandum. Novus vasculum per defaltam assignata mediocris prioritas, et alia "vetus" Ingester in productione suas facultates amisit. Eventus erat NIVIS CASUS processusquae inductio ad siliquas ab Ingestero pro cortex productio.

Ingesta sunt stata et copia notitia pro 12 horis praecedentibus. Hoc nobis permittit ut efficacius eas comprimere antequam ad diuturnum tempus eas scriberet. Ad hoc assequendum, Cortex shards data per seriem utens Mensam Hash Distributam (DHT) et singulas series per tres Ingesters replicat utens Dynamo-styli quorum constantia. Cortex non scribit data ad Ingesters quae debiles sunt. Ita, cum numerus Ingestariorum DHT exeunt, Cortex sufficientem replicationem entriculorum praebere non potest et fragore.

Deprehensio et Remediatio

Novae notificationes Promethei ex "errore budget" (Error-provisiones-fundatur β€” details in futuro articulo apparebit) terrorem 4 minutarum post initium shutdown clangere coepit. Super quinque proximis minutis vel sic, diagnostica quaedam cucurrimus et glomerati Kubernetes subjecti ascenderunt ad botrum productionis novarum et existentium.

Post alia quinque minuta, veteres Ingesters notitias suas feliciter scribebant, novae exortae sunt, et cortex cortex iterum in promptu factus est.

Aliae 10 minutae errores diagnoscendi et corrigendi-of-memoriae (OOM) absumptae sunt errores authenticas e contrario proxies ante Cortex collocatos. Errores OOM causati sunt per decumum auctum in QPS (credimus ob petitiones nimis infestas e servientibus huius Promethei).

effectus,

Totalis downtime erat 26 minuta. Nulla notitia perierat. Ingesta omnia in-memoria data feliciter cumulaverunt in longum tempus reposita. Per eu, client Prometheus servientes buffered delevit (longinquus) tabulas per novum API remote_write secundum Wal (authore by Callum Styan from Grafana Labs) et ite- rum omisit scribens post fragorem.

Quomodo pod potiores in Kubernetes tempus downtime effecit apud Grafana Labs
Productio botrum portassent scribe res

Inventiones

Refert ab hac re cognoscere et necessarios gradus ad vitare eius recursus.

In visu non debet defaltam constituere mediocris prius quam omnes Ingesters in productione acceperunt longus prioritas. Oportebat praeterea eos curare in antecessum summus prioritas. Nunc certum est omnia. Speramus experientiam nostram adiuvaturum esse alias Institutas considerantes vasculum prioritatum in Kubernetes.

Additum etiam gradum moderandi super instruere quibusvis obiectis adiectis, quarum figurae globales glomerantur. Posthac huiusmodi mutationes b . aestimabunturΠΎplus homines. Praeterea modificatio quae fragorem effecit minor pro documento separato aestimata est - tantum in re GitHub agitata est. Posthac omnes eiusmodi mutationes confifationes cum opportunitate documentorum documentorum comitantur.

Demum erimus automate resipiscendi procuratorem e contrario authenticationi ne onerare OOM testati sumus, et Prometheum recensebimus occasus defectus relatos in fallaces et scalas ne similes exitus in futurum.

Defectus etiam aliquas consecutiones positivas habuit: subsidiis necessariis acceptis, Cortex automatice sine interventu addito convaluit. Nos quoque pretiosa experientia operatus est Grafana Loki - Novae collectionis nostrae ratio - quae adiuvit ut omnes Ingesters recte in et post defectum operati sint.

PS ab translator

Lege etiam in nostro diario:

Source: www.habr.com