V-ati instalat vreodata in productia de pe masina dvs. locala? La ValueStream, credem ca primul pas pentru a face schimbari durabile la orice sistem este intelegerea elementelor sistemului si a conexiunilor acestora. Acest lucru este deosebit de important pentru sistemele centrate pe om, cum ar fi DevOps, unde este dificil sa inventariem si sa monitorizam toate echipele, procesele si performantele diferite.
Aceasta postare arata cum ValueStream poate fi utilizat pentru a incepe monitorizarea implementarilor locale cu un efort minim. Acest lucru permite organizatiilor sa trateze aceste actiuni locale importante ca fiind cetatenii de prima clasa care sunt, sa le monitorizeze performanta si sa construiasca un inventar al operatiunilor executate local. Aceasta postare va instrumenta scriptul real de implementare a productiei ValueStream, pentru a capta metrici detaliate de construire si implementare.
Array
Implementarile locale, bazate pe CLI, sunt frecvente in multe start-up-uri. Procesele care incep de la echipe mici care nu doresc sa investeasca in implementari in cloud sunt mostenite pe masura ce companiile cresc. Executarea actiunilor la nivel local inseamna ca informatiile de audit sunt ratate, cine, cand, de ce au avut loc implementarile, in cazul valorilor DevOps, cat de des, cat timp si care este rata de eroare si cat timp adauga implementarea unei lucrari timpul de plumb total al articolului. Este dificil sa imbunatatesti ceea ce nici macar nu se stie. ValueStream isi propune sa ofere instrumente de observare zero frictiune pentru a permite organizatiilor sa inventareze si sa masoare DevOps si procesele de implementare.
Array
Aici, la ValueStream, ne desfasuram productia la nivel local utilizand Google Cloud SDK, restul acestei postari arata cum este nevoie doar de cateva minute folosind ValueStream pentru a incepe urmarirea oricaror scripturi locale. ValueStream se concentreaza pe furnizarea de valori la doua niveluri separate:
- Evenimente
- Urme
Evenimentele reprezinta actiuni individuale la un moment dat:
Ele sunt adesea exprimate ca un agregat in timp si sunt adesea folosite pentru a obtine o intelegere bruta a performantei unui sistem. Acestea sunt semnale importante pentru monitorizarea oricarui sistem si iau, de obicei, forma urmatoare: debit, latenta, rata de eroare si saturatie. Acestea sunt atat de obisnuite, incat Google le face referire la „Patru semnale de aur”.
Urmele conecteaza evenimentele impreuna stabilind cauzalitatea intre evenimente.
ValueStream foloseste un standard numit OpenTracing pentru a modela relatia dintre evenimente.
Array
Urmele sunt sosul special al ValueStream si permit ValueStream sa modeleze DevOps complexe si procesele de dezvoltare cu un efort minim, tot ce este necesar este sa treci un identificator pentru o actiune instrumentata care se refera la una sau mai multe actiuni parinte. Urmarirea devine extrem de populara in sistemele distribuite pentru informatii detaliate pe care le poate oferi despre procese. ValueStream face aceasta analiza detaliata accesibila managerilor, directorului, inginerilor DevOps si oricui altcineva responsabil de performanta organizationala.
Ca fundal, ValueStream Cloud este gazduit in Google Cloud si foloseste Google App Engine pentru a gazdui infrastructura de productie. Procesul de implementare se executa zilnic si necesita urmatorii pasi:
- Construieste o imagine Docker
- Apasa pe Google Container Registry
- Emite o implementare utilizand instrumentul gcloud
Un script bash simplu este folosit pentru a face implementarea:
# deploy-api.
- sauna porno maps.google.lu
- porno xxxx www.google.com.uy
- film porno complet francais pt.tapatalk.com
- video porno forced www.uniflip.com
- porno bizarre maps.google.mu
- porno robe www.google.com.pr
- porno perfect girl image.google.ba
- train porno images.google.is
- netflix porno webmail.unige.it
- moteur de recherche porno maps.google.com.gt
- video porno gay francais maps.google.dz
- porno vintage français a.gongkong.com
- porno ru www.google.com.py
- konulu porno images.google.hn
- porno cuisine www.google.com.sv
- film porno anal www.google.com.bo
- porno casero www.google.cat
- porno hairy www.howard.edu
- femmes fontaines porno www.google.jo
- porno animaux clubs.london.edu
- franck gastambide porno maps.google.com.kh
- porno prostituée maps.google.com.gh
sh
docker build -f Dockerfile.api -t valuestream-api.
docker tag valuestream-api us.gcr.io/value-stream/valuestream-api docker
push us.gcr.io/value-stream/valuestream-api
gcloud app deploy \
–image-url us.gcr.io/value-stream/valuestream-api \
devops / gae / app.api.yaml \
–version = v1 \
–quiet
Desi acest lucru este usor, nu exista jurnal de audit de vizibilitate sau istoric in afara consolei Google. Ne desfasuram de 1-2 ori pe zi, este acesta un candidat bun de imbunatatit? Cat timp cheltuim in implementare? Care este rata de succes? Practic asa cum este acum, nu exista vizibilitate sau raspunsuri la aceste DevOps obisnuite si intrebari de livrare. ValueStream este livrat cu o sursa de evenimente „HTTP personalizat” care accepta trimiterea utilizatorilor (evenimente ad-hoc). Mai jos arata scriptul deploy-api.sh instrumentat pentru a captura duratele de implementare:
TRACEID = “$ (vscli event -tag = ‘source | gcloud’ -tag = ‘service | api’ -type = pipeline start)”
…
vscli event -type = pipeline end -event-id = $ {TRACEID}
(Imaginile de mai jos arata Urme in LightStep; ValueStream OSS poate iesi pe Jaeger si LightStep, iar ValueStream Cloud Beta va fi livrat numai cu suport LightStep ca magazin metric, necesitand un cont LightStep gratuit pentru a putea fi utilizat):
Urmarea de mai sus arata durata urmaririi si toate etichetele asociate. LightStep permite gruparea urmelor dupa eticheta, compararea duratelor cu intervalele anterioare si vizualizarea agregatelor de rate de evenimente, distributii de latenta si rate de eroare. In doua linii de cod, am inceput sa urmarim ceva pe care doar un singur inginer il experimenta si acum este capabil sa-l scoata la suprafata pana intr-o locatie centralizata unde poate fi inventariat si comparat.
Desi extrem de util pentru depanarea DevOps, puterea reala a ValueStream vine din faptul ca este capabil sa modeleze procesele prin urmari. Scriptul de implementare are 3 pasi logici diferiti:
- Construi
- Apasati
- Implementati
ValueStream este capabil sa conecteze fiecare dintre aceste etape oferind o referinta la evenimentul parinte pentru fiecare dintre evenimentele pentru copii. Utilizarea instrumentului vscli pentru a face acest lucru arata ca:
#! / bin / bash
TRACEID = “$ (vscli event -tag = ‘source | gcloud’ -tag = ‘service | api’ -type = pipeline start)”
BUILD_TRACEID = “$ (vscli event -type = build -tag = ‘type | docker’ start -parent-event-id = vstrace-customhttp-pipeline-default – $ {TRACEID})”
docker build -f Dockerfile.api -t valuestream-api.
vscli event -type = build end -event-id = $ {BUILD_TRACEID}
PUSH_TRACEID = “$ (vscli event -type = push -tag = ‘type | docker’ start -parent-event-id = vstrace-customhttp-pipeline-default – $ {TRACEID})”
docker tag valuestream-api us.gcr. io / value-stream / valuestream-api
docker push us.gcr.io/value-stream/valuestream-api
vscli event -type = push end -event-id = $ {PUSH_TRACEID}
DEPLOY_TRACEID = “$ (vscli event -type = deploy -tag = ‘type | gae’ start -parent-event-id = vstrace-customhttp-pipeline-default – $ {TRACEID})”
gcloud app deploy \
–image-url us.gcr.io/value-stream/valuestream-api \
devops / gae / app.api.yaml \
–version = v1 \
–quiet
vscli tip event = end deploy -event-id = $ {DEPLOY_TRACEID}
vscli event -type = pipeline end -event-id = $ {TRACEID}
Multe procese sunt exprimate in mod natural ca o conducta:
- Povestea JIRA se deplaseaza pe benzile de inot
- Construiti conducte, Jenkins, Gitlab, Local etc.
- Echipa Lucreaza la mai multe probleme sau repo pentru a finaliza un Epic
Executarea din nou a scriptului arata instrumentele actualizate:
Imaginea de mai sus poate capta cat timp este petrecut in fiecare stare a implementarii. Modelarea acestuia ca o urma captureaza fiecare etapa a implementarii si parintele sau. Cu alte cuvinte, mentine cauzalitatea. ValueStream va putea urmari cauzalitatea pana la nivelul epic, permitand organizatiilor sa aiba o viziune completa asupra tuturor lucrarilor necesare pentru livrarea software-ului. Modelarea evenimentelor ca grafic permite, de asemenea, o serie de analize avansate, care, atunci cand sunt combinate cu LightStep, pot fi utilizate pentru a depana in mod inteligent livrarea in mai multe instrumente, echipe sau procese diferite.
Imaginea de mai jos arata ora cand este utilizata o imagine cache. Timpul de constructie este injumatatit (2min -> 1m) si timpul de impingere scade de la 26sec -> 2.7sec, deoarece nu sunt impinse straturi:
Acest exemplu surprinde doar durata fiecarui eveniment si stabileste cauzalitatea. O buna imbunatatire viitoare ar fi captarea si raportarea starii erorii:
$ vscli event -type = pipeline end -event-id = $ {ID} -error = true | false
Acest lucru ne-ar permite sa vedem cat de des implementarile esueaza si daca acestea sunt asociate cu o crestere a latentei globale (abordarea de depanare descrisa in detaliu aici).
ValueStream ofera instrumente fara frecare pentru scripturi si procese locale. Daca doriti sa obtineti vizibilitate in procesele dvs. DevOps, ValueStream OpenSource este disponibil in prezent pe GitHub, iar ValueStream Cloud va oferi un nivel gratuit pentru lansarea sa beta in cursul acestei luni. Ne-ar placea sa auziti comentariile si feedback-ul dvs.! Multumesc.
- ValueStream Cloud
- ValueStream OpenSource
- Depanarea DevOps folosind ValueStream si Lightstep
- https://cloud.google.com/developers/startups/
- Cont gratuit LightStep








