Tag Archives: nervi

alegeri 2024

“In ultimele saptamana toata lumea e experta in politica ca nu mai gasesti un prost cu care sa stai de vorba”.

Asa, ca cica e frumi sa incepi texte cu citate, te face dastept sau ceva de genul.

Cum am furat-o de pe net, toti sunt experti in politica. Mai ales ca s-au anulat alegerile ca n-a intrat cine trebuie in turul doi.

Toti politicienii astia mainstream sau wannabe tipa ca din gura de sarpe ca vor democratie in Romania. Ba da maxim. Da din aia cu steluta, ca’n textele de la asigurari unde te acopera de toata cu exceptia a 99% din probleme: sa fie democratie, dar partidele de extrema dreapta sa n-aibe voie sa fie prezenta pe scena politica. Ca partidele alea apar asa noaptea, din senin.

Cand ii intrebi de ce nu rezolva problemele oamenilor astfel incat sa nu mai fie nevoie de partide noi incep s-o scalde, ca nu i-a lasat PSD-ul, PSD-ul zice ca e PNL-ul rau si tot asa.

Da pe oameni tot ii doare cate ceva, si uite asa apare un POT cu senatori de 70 de ani. Ca asa si-o ard astia batranii: era tanar maica, abia facuse 70 de ani.

Astia de la CCR si-au dat arama pe fata ai au aratat inca o data ca sunt sclavetii PSD-ului si intr-o masura mai mica a PNL-ului si dupa ce nu le-a iesit pasenta cu “renumarati voturile ca s-a furat acolo” , s-au mai gandit un pic si ce le-a basit mintea: sa se anuleze primul tur ca n-a iesit cine trebuie.

Acum, decizia lor a creat o problema si mai mare: pisatul ala cu ochi, pe nume Iohannis a decis de la sine putere ca el o sa-si continue mandatul si dupa data de 21 Decembrie 2024. Cumva il simt ca o sa bage o vacanta din aia serioasa pana pe la jumatatea lui Ianuarie 2025 ca tot sunt planetele aliniate. Si cum dracu sa nu bagi vacanta cand nu trebuie s-o platesti tu?

Dar sa revenim la draci: eu am auzit in treacat de Georgescu, independent, nici nu m-am gandit sa-l votez ca nu stiam nimic. Am votat clasicul “Muie PSD” si am votat-o pe Lasconi. Nu ca as fi stiut ceva de ea, dar stiam ca nu e PSD. Am auzit-o o data vorbind sub un minut ca are o voce de cui pe tabla de sticla. Dar nu e PSD.

Si vine surpriza turul doi: Lasconi – Georgescu.

Bai si dintr-o data toata tara a devenit experta in legionari, Antonescu si altii. Pana si io a trebuit sa citesc despre astea ca nu stiam nimic despre Codreanu. Stiam doar de Antonescu ca a fost tradat de pisatul ala de Mihai si omorat cateva zile mai tarziu. Ca asa a gandit-o ala micu atunci: o sa ne lase rusii in pace daca le omor dusmanul. Futu-l in mortii lui ca in loc sa moara onorabil pe tron, a decis sa se tireze din tara.

Bai si nu-mi ieseau socotelile, ca presedintele in Romania in afara de a se duce in vacante cu avion privat prin diverse colturi de lume sau de a da decoratii la aproape tot ce i se pare ca misca nu are mare putere. Dar te poti intelege cu hoardele care cred ca presedintele in Romania e ca presedintele in America? Nu, ca devin irationale si cred ca daca iesea Georgescu presedinte in turul II automat pe 22 Decembrie ieseam din UE/NATO/Pamant si brusc invia Ceausesca sa ne mai dicteze una alta.

Anyway, acum se incearca maxim potcovirea lui Georgescu sa nu mai candideze. Dar poate nu mai candideaza el ci altul pe care il sustine asta, care nu poate fi potcovit. Si ma jur ca pe ala o sa-l votez si probabil o sa-l voteze multi. Si n-o sa-l votez ca brusc vreau afara din UE, dar o sa-l votez sau o s-o votez ca “Muie PSD si CCR” ca ati anulat alegerile. Ca vorba aia, de ce ti-e frica nu scapi.

Un shitshow facut de oameni care cred ca o data ajunsi intr-o functie publica sunt lipiti pe viata de ea…

Anyway, alte teorie a constipatiei e ca pisatul sef de tara nu vrea sa plece de la Cotroceni e ca inca nu e gata viloiul de la Aviatorilor. Si era complicata sa impacheteze, sa dezpacheteze la Sibiu si dupa aia iar sa impacheteze si sa despacheteze la Bucuresti.

Nu mai scrisesem de mult text lung si la draci, dar hei, traiasca Romania ca-mi ofera aceasta posibilitate.

muie ing

Din categoria ca nu mai haterisem de ceva vreme: azi le urez imbecililor de la ING toata muia din lume. Sa vina toata la ei.

La fiecare update de OS sau de aplicatie, muia lor de aplicatie de ING Business ma intampina cu “bine ai venit utilizatorule nou, hai sa te inregistrezi”. Si pe langa faptul ca trebuie sa-mi aduc aminte parola de la site-ul lor basit, face MFA cu SMS, de parca suntem in 2010. Si cu mail. Imi da mail sa-mi trimita cod. Doua coduri. Toate codurile.

Si suge maxim cand ma trezesc sa nu fiu in Romania. Ca scoate SIM, pune SIM de .ro, uita-te la cer sa fie planetele aliniate cum trebuie, sa vina SMS-ul pulii, ca nici cu aia de la VF nu mi-e rusine. Ca vin SMS-urile precum castigurile la loz in plic.

Si ma intrebam asa schimband SIM-uri si injurand: oare cat mortii lor de greu le e sa faca o aplicație care sa nu suga mai tare ca o thailandeza de la un blowjob bar? Ca iti trebuie un talent deosebit sa ajungi la nivelul asta de supt.

juniper ex & vmx

VMX

In lumea asta a virtualizarii, si producatorii de routere s-au apucat sa vand variantele virtuale ale produselor lor. Si cea mai simpla treaba e sa vinzi un router, ca acum in zilele noastre cu un procesor multicore poti plimba multe multe pachete dintr-o parte in alta si pana la cativa zeci de gigabiti nu ai neaparat nevoie de un ASIC dedicat pentru asta.

Din varii motive, imi place JUNOS si pe la ce clienti am mai instalat una alta, daca era si Juniper pe lista de producatori acceptati, le propuneam o solutie cu produsele lor. Din categoria oricum toata lumea pune Cisco, hai sa folosim si altceva similar.

Mno, acum cativa ani, a scos Juniper si varianta virtuala a routerelor MX pe care a botezat-o in mod foarte creativ VMX…

E. Toate bune si frumoase. Ideea la Juniper, dar cum e si la restul de producatori, presupune ca ai un “control card” si una sau mai multe “forwarding cards” si alea au ASIC-uri si ce trebuie, si control card-urile doar se ocupa de programare. Easy-peasy.

Ce-a zis Juniper: pai facem la fel, un routing engine si un line card pe care punem cate porturi o fi nevoie. Treaba cu Juniper e ca RE-ul ruleaza un FreeBSD modificat. Pentru line-card au zis ca pot folosi Linux + ceva modificari de la ei sa “mearga repede”.

Si daca vrei un router din asta virtual de la Juniper, tre sa pui doua masini virtuale: una cu FreeBSD si una cu Linux. Nu suna rau in teorie, insa in practica necesita destul de multe resurse. Da sa zicem ca iau un server dedicat pentru asta si aia e.

Din motive care insa imi scapa, Juniper s-a apucat sa foloseasca Windriver Linux, siii…. au inventat un soft care ruleaza intr-un super tight-loop care se ocupa de forwarding-ul de pachete. Si ai un sistem care e totul tipul cu CPU-urile in 100% fara absolut nici un motiv. Zici ca aia care au facut modulul vietii nu stiu ca Linux stie sa proceseze singur pachetele cat mai eficient posibil, nu trebuie sa ti-o arzi prostu cu “sunt pachete? sunt pachete? sunt pachete?” pe queue-urile de primire din kernel.

Si tot in inteligenta lor nemasurata, n-au inteles cum sa-si faca singuri update la JUNOS si daca vrei sa faci upgrade la o versiune noua procesul este interesant de simplu: faci backup la configuratie si la licente (ca logic ca e cu licenta, mai ales ca explica acolo ca e spre binele meu, cum sa nu…), reinstalezi masinile virtuale si re-aplici configuratia si licentele pe versiunea noua.

Da cred ca asta e pretul pe care-l platesti cand ai nevoie doar de 10-20Gbps de routare si nu vrei sa dai 50-60K EUR pe un router “hardware” cand poti scoate totul in 15K cu un server.

Da sa moara bibi, sa nu fii capabil sa faci doua OS-uri sa se updateze singure cu ceva gen snapshot-uri si alte nebuneli…

EX

Tot acum ceva ani, s-a apucat Juniper de facut si switch-uri, ca au auzit ei ca se saturase lumea de Cisco si vor niste switch-uri si mai scumpe. Asa s-a inventat linia de produse EX.

Anii au trecut si au evoluat si switch-urile. Si acum ai un switch care are pentru partea de control are un Linux de ruleaza niste VM-uri care contin softul care vorbeste cu ASIC-urile de pe porturile de switching. Inception modern. Teoria fiind ca atunci cand faci update de OS poti s-o faci online, doar cu o intrerupere minora de trafic. In practica nu prea merge ISSU/TISSU deloc. Dar banuiesc ca vroia si Juniper momentul lor de faima pe care l-a avut Cisco acum 20 de ani cand au inventat Online Insertion & Removal pe 7500, care invariabila rebuta routerul cand cand bagai un card nou. Si asa OIR s-a transformat in Online Insertion & Reboot. Asa si astia, 20 de ani mai tarziu nu poti face online upgrade…

In 2023 Linuxul pe care l-au pus astia pe post de OS este CentOS 6.2. Da, fix ala cu kernel 2.6.32. De nici internetul nu mai stie de el. Si astia se mai lauda ca au si divizii care fac produse de securitate…

De cretinatatea asta cu EX nu vroiam sa scriu, dar m-au scos din minti ca am incercat sa instalez versiunea de OS recomandata de ei pe site, si dupa reboot s-a pisat cu bolta pe mine qemu de pe host ca nus’ce segmente nu ajung nu stiu unde si a durat o vesnicie sa copiez versiunea anterioara de software la 10kB/s prin SCP ca stateau procesoarele in 100% ca au muit virtualizarea. Si sa copiezi aproape 700MB cu 10kB… dureaza ceva.

Cam asa mi-am petrecut un weekend din Ianuarie intr-un datacenter. Macar era mai cald acolo decat afara si am facut un pic de economie la gaze ca am oprit centrala cat am fost plecat :))

Morala povestii e ca nu trebuie avut nici un fel de increde in firme din astea care’s obisnuite sa vanda cutii sa se prieapa la lucruri un pic mai complicate gen virtualizare sau similar.

linkedin app

Din motive profesionale mi-o mai ard si pe LinkedIn, ca mai aflu una alta. Trecand peste faptul ca toata lumea de pe LinkedIn traieste intr-un univers paralalel[1][2][3], informatiile prezentate acolo sunt okish. Si mai apuc si sa trollez pe unul sau pe altul.

Anyway, articolele acolo sunt de doua feluri: posturi de LinkedIn sau link-uri la articole pe care le vezi in browserul din aplicatie. Care cred ca tot un Safari e, da mai ascuns asa.

E, inteligentii aia de PO si programatori de la Microsoft au venit cu cea mai retardata idee: daca cumva inchizii aplicatia ca esti intr-un apel telefonic si termini peste 5-10 minute apelul, cand te intorci in aplicatie iti face refresh la tot feed-ul. Inclusiv daca ramasesei citind un articol si erai pe la jumate. Pula sa ramana de unde ai lasat-i si sa-i dai tu refresh.

Nu boss, n-ai citit la timp, soarta. Ca uite, a mai scris gigel ce darnic a fost el azi cu un caine pe strada si ce fluffy l-a facut asta sa se simta pe interior. Si Ionela care si-a invins emotiile si a avut o discutie cinstita cu un subordonat si l-a indrumat cum sa evolueze in corporatie.

Srsly, ce pula calului? E asa greu sa faci o aplicatie care sa nu-si dea refresh la cinci minute ca vrei sau nu vrei? Ce sloboz de woke shit e asta?

[1] https://every.to/cybernaut/linkedins-alternate-universe-21780381-7883

[2] https://imirzadeh.me/post/linkedin/

[3] https://news.ycombinator.com/item?id=25320536

ing si parolele

Astia de la ING inca sunt convinsi ca schimbatul parolelor des ajuta la securitate. Da sa zicem ca poate lache a[l|i]a/ de la compliance n-a mai pus pana pe o carte de securitate in ultimii zece ani si a ramas fixat ca trebuie parola schimbata la 6 luni.

Anyway, imi apare promp sa schimb parola, zice browseru “Sefule nu vrei tu o parola d’aia smechera facuta pe comanda doar pentru site-ul asta?” – pai cum sa nu, dau acolo OK imi pune in campurile alea parola si ce ce zice site-ul de la ING?

Baa, pai cum sa zici ma ca nu e cea mai tare parola pana la capat? Ce se asteptau? Sa pun ca parola ]vlBJ~Se{7,ek;0) si sa-mi zica dupa ca nu e suficient de lunga? Sau se asteptau s-o tin minte?

Ba, mai puneti si voi mana pe o carte d’asta de cybersecurity cum se cheama acu domeniul asta si mai vorbiti si cu altii din domeniu, nu mai vorbiti doar voi astia de la banci intre voi, ca e mai rau ca intr-un echo chamber.

jocul d’a securitatea in IT

De cand mi-o ard prin IT-ul asta, mare parte din timp mi-am petrecut-o si mi-o petrec in ceea ce lumea numeste cybersecurity, sau cum au tradus prostii aia de la academia rromana sau ceva: securitatea cibernetica.

Distractia asta e cam asa: tu ca si firma pui pe internet niste jucarii si niste baieti si/sau fete incearca sa-ti strice jucariile. Si pentru asta iti pui firewall-uri, antivirusi (antimalware acu), WAF-uri, IPS-uri, anti-zloboz etc. Si dupa aia te lauzi peste tot ce ce sigur esti :))

Din cand in cand mai apare prin presa ca o mai suge pana la cotor cate o firma din asta de e tare in gura pe security. Gen Microsoft, Solarwinds, Okta etc. Si multe alte firme mai mici.

Pe langa astia, sunt tot felul de alti omuleti care ar vrea ca aia de le-au dat-o astora sa infunde puscaria, ca nu e frumos ce-au facut, ca nu este legal, ca e furt, ca morti si raniti.

Opinia mea e ca in toata distractia cu cybersecurity, aia de reusesc sa sparga una alta si sa obtina informatii ar trebui premiati din oficiu. Ca sunt mai destepti decat aia de au programat sau configurat prost sisteme. Necesita mai multa inteligenta sa dai in cap la un sistem fara nici un fel de cunosinte despre el decat e sa-l configurezi prost cu toate informatiile despre el.

Si niste carnati isi doresc ca astia sa intre la parnaie. Ca si cum daca pierzi un joc de StarCraft online sa vina militia sa-l aresteze pe ala de te-a facut din butoane.

Asta e primul of cu starea industriei, ca de fapt toata lumea cumpara si sper sa fie bine, da nimeni nu vrea sa depuna efortul ala sa faci lucrurile ca la carte. Cum era acum multi ani, cand au zis aia de la BNR ca poti avea internet banking, o cerinta era ca fie dai bani la o firma sa faca “code audit” pe aplicatie sau sa-ti pui un WAF, ca sa asiguri cumva securitatea datelor. Cre’ca toate bancile si-au pus WAF, au bifat cerinta si si-au vazut in continuare de aplicatiile lor de cacat de internet banking – pentru cine e suficient de batran sa-si aminteasca ce oribile erau site-urile alea. Si exemplele pot continua.

Al doilea of pe care-l am, e cu “initiativa” diverselor companii de software cu notiunea de “responsible disclosure”. Adica gasesti o vulnerabilitate, o raportezi doar lor, si astepti cuminte s-o fixeze cand au ei chef si dupa faceti un fel de “press release” comun in care tu cercetator iti asumi creditul ca ai gasit problema si aia ca uite, au rezolvat-o ca’s baieti buni.

Eu cred ca daca erau baieti buni nu scriau cod prost. Si ca imediat cum gasesti o vulnerabilitate s-o dai la liber sa foloseasca fiecare cum doreste informatia respectiva. Si atunci sa vedem daca firmele astea sunt bune si scot imediat un fix sau ii doare la banana si doar plang ca li s-a stricat planning-ul ca uite, acum trebuie sa fixeze ceva ce au facut prost de la inceput. Si ca din cauza cercetatorilor pot sa sufere clientii – alt text care-mi place maxim cand e folosit de lenesi.

google cloud support

Una din corporatiile pe unde ma mai duc la produs are chestii in GCP. Si pe acolo am facut si eu un proiect sa tin cateva VM-uri, nimic complicat. VM-urile alea trebuie sa vorbeasca cu niste componente care sunt intr-una din locatiile clientului. Pentru asta am facut un tunel IPSec intre GCP si locatie.

Asta se intampla la inceputul lui August. Acu vreo saptamana, intr-o luni, ma suna omenii din locatia respectiva ca “nu mai merge ping-ul din google la ei in locatie”. Ma uit si eu, si chiar nu mai exista conectivitate. Ma uit pe acolo prin dashboard-ul de la GCP, toate verzi. Ma uit la mine, toate verzi.

Au astia la GCP un “Connectivity tester” si alea zicea ca poa sa dea ping. Nu chiar pana la capat, da a dedus el ca ar trebui sa mearga. Nu vroia ping-ul ala sa mearga neam. Am sapat pe acolo prin loguri pana mi-au sarit mucii, nimic util. Zic bine, hai sa pun tcpdump sa vad ce si cum.

Dau ping din locatie intr-un VM din GCP, ajung pachetele la ala, raspunde la ele, la mine in locatia ajungea fix o pula. M-am scremut un pic sa fac o captura de pachete la mine, ca firewall-urile astea enterprise sunt la fel de utile ca igrasia cand ai de debugat, ca abia poti vedea una alta. Nimic util, nici un pachet.

Zic trec la planul B, imi fac un Linux cu Strongswan si vad pe ala ce se intampla, ca macar pot sa-l debughez calumea. Mai fac repede un tunel cu GCP, se ridica imediat, dau ping, la fel, ajungeau cum trebuie pana acolo, cand sa se intoarca… se intorceau prin gura.

Ma zic, nu e de la mine, hai sa vad daca e de la astia. Ca na, se mai strica si cloud-ul din cand in cand si zic poate pot sa-mi zica si mie daca din “Google Cloud VPN” ies pachetele cum trebuie, ca era pe traseu singura necunoscuta.

Dau acolo $100 sa pot sa deschid caz, fac cazul cu toate astea si in vreo doua-trei ore asa imi raspunde un baiat ca s-a uitat el prin loguri si problema e ca e de la mine, ca nu stie VPN-ul de la mine sa faca tunele ESP, ca zice clar in loguri ca “ESP_TFC_PADDING_NOT_SUPPORTED” si ca sa il configurez sa faca tunele cum trebuie. Si ii zic, bosulache, ia fii atent aici schema: pleaca pachetele de la mine, ajung la voi, VM-ul meu raspunde la ele, dar de la voi ciuciu, deci nu ca nu fac eu tunelul cum trebuie. Si i-am explicat si ce cacat e TFC, sa nu mai aibe idei pe langa daca mai vede asta vreodata. Asa mult imi displac oamenii astia de la suport pe care-i doare in pula de problema ta si cauta repede “error” in loguri ca poate, poate e de la tine ceva si nu trebuie ei sa faca nimic.

Aproape o zi liniste, gen vreo 21-22h de liniste de puteai sa auzi pachetele pe cablu. Mai bag o fisa si upgradez la $250 sa pot sa apas pe butonul de escalate, in ideea ca o sa ma bage cineva in seama. Intr-o ora-doua asa imi raspunde iar baiatul asta si zice ca da, interesant, dar poate e din cauza ca am firewall pus si de aia nu merge. Ii trimit screenshot cu “n-am nimic pus”, si dupa mai raspunde tot asa un pic cu intarziere ca este posibil sa necesite investigatii amanuntite treaba asta si sa completez un template de sloturi disponibile sa facem un call cu screen sharing sa se uite si aia sa vada ce si cum.

Ne intelegem la un slot orar pe la 10 noaptea la mine si ma paseaza la o alta echipa. Se face ora, intra doi in call si le arat exact ce si cum, fix cat puteam sa vad eu loguri in GCP acolo. O ora jumate si dupa ce am trecut cred ca de 4-5 ori prin fix aceleasi meniuri, loguri, pasi. M-au intrebat si astia daca n-am firewall, le-am aratat ca nici macar iptables nu aveam pe una din masini. Astia foarte “thorough” asa, au vrut sa vada de cel putin vreo 2-3 ori daca chiar n-am firewall pe masini. Si intr-un final mi-au zis ca ei n-au acces asa sa vada ce se intampla cu VPN gateway-ul lor si daca scoate pachete cum trebuie.

Dimineata imi dau mail ca “fii antena, tre sa dezactivezi VPC mode auto, ca de aia nu-ti merge ca ai facut VPN-ul gresit”. Zic babaieti, mergea de vreo luna jumate pana cand brusc n-a mai mers. Si a doua la mana, mai am un VPN facut tot asa, fix in proiectul asta care ala n-a sughitat deloc. Nu mai bine reparati voi ce-ati stricat si sa faceti sa mearga lucrurile asa cum erau inainte?

Si ce sa vezi, alt mesaj cu “Nu, la noi e ok, daca schimbi cum ti-am zis o sa mearga, ca asa cum e acum nu are cum sa mearga”. Le mai dau o data screenshot-ul ala cu alt VPN mergand, l-au ignorat cu succes si au tinut-o pe a lor.

Pentru ca statea productia, am facut ce vroiau ei si a luat-o. Doar, doar sa nu se uite la ei sa vada ce sloboz au stricat si sa repare.

Din tot ce am investigat si asa, parea destul de clar ca era o problema de rutare pe undeva prin burta lu’ GCP, ca pachetele ajungeau teoretic unde trebuie, doar ca nu erau criptate mai departe si trimise la mine.

Am trecut in 3 zile prin 4 oameni, unu’ cu cea mai mare durere posibila in pula, altii doi un fel de Lolek si Bolek, ei nu stiau, da erau convinsi ca nu poa’ sa fie de la ei, si un al treilea la care am tipat ca si asta era “noi nu gresim”. Doar, doar sa nu dea un tcpdump la ei sa vada daca ies pachetele cum trebuie sau daca nu ies, sa vada de ce nu ies.

M-au umplut de spume, ca in primul rand i-a durut fix in cur de problema, probabil daca nu dadeam mai multi bani sa pot apasa butonul de escalate raspundea baiatul ala cand ii mai venea lui cheful, probabil peste cateva zile dupa ce-si facea siesta. In al doilea rand au facut tot posibilul sa nu investigheze ceva pe partea lor. In al treilea rand ca mi-au dat un workaround pe post de solutie, desi nu cred ca a fost vreun mesaj in care sa nu le amintesc ca “a mers si brusc n-a mai mers”. Si in al patrulea rand pentru “stonewalling” si faptul ca desi le aratam ca merge ce ziceau ei ca nu merge, insistatau ca nu are cum – ba cu poza in fata gen, ei erau cu “nu merge, ti se pare”.

Ca si cu multe altele, e bine sa n-ai probleme cu cloud-ul, ca daca ai, o sugi cu gratie ca nu-i pasa nimanui de la suport sa-ti rezolve problema.

unele zile…

Saptamana asta dupa ce am terminat de instalat si configurat un ESXi offline si am pus pe el un server de DHCP a venit vremea sa-l dau in productie sa inlocuiasca actualul server de DHCP. Easy peasy. Scoti cablul de la ala vechi din switch si il pui pe ala nou si gata.

Well… ieri m-am invartit ca un coi intr-o caldare toata ziua pentru ca dupa ce puneam serverul nou in switch, nu mergea DHCP-ul. Cu laptop si cablu direct infipt in el, mergea cum trebuie. Prin switch pula.

Am avut o zi din aia in care am avut un mica criza existentiala despre cunostintele mele de retelistica si Layer2 in special. M-am uitat in vSwitch-ul de pe ESXI mai atent decat m-am uitat vreodata la un switch virtual. La fel si pe portul de pe switch-ul fizic. N-a avut portul ala parte de atata atentie in viata lui.

Cablu direct merge, prin switch nu. Serverul de DHCP zicea ca oferea adrese IP clientilor, da aia nu faceau ACK. Si nu intelegeam de ce. De ce n-ar da? Le placea la clienti asa mult de serverul vechi ca protestau?

Pe la opt seara am cedat si m-am dus acasa deja aveam idei de schimbat cariera.

Am ajuns acasa, am desfacut o bere, am re-vazut jumate de Avengers si inainte sa ma culc am zis sa mai iau o data meniurile de pe switch la rand, chiar si optiunile alea care nu ar avea de ce sa se se aplice.

Si-am gasit ca pe switch exista un meniu de DHCP care are o optiune sa blocheze raspunsurile de DHCP de la adrese MAC necunoscute si doar sa accepte adrese permise. Adica scris MAC-ul acolo cu liniuta.

Primul MAC era pus acolo, pe al doilea l-am pus eu dupa alta criza de draci.

Unele zile…

netu’

De vreo aproape doua saptamani asa, tot mergea conexiunea la internet de acasa din ce in ce mai prost. Si aseara mi s-a luat si am sunat la suport la RDS sa investigheze problema.

Dadusem restart la router si AP si nimic. Am pus cablu direct in laptop si aceeasi viteza: 5.5Mbps maxim. Un fel de dial-up modern ca acu sa moara ma-sa orice site are 1MB…

Ma suna de dimineata unu’ de la suport, mai bagam un test de viteza, la fel. 5.5Mbps. Zice ca bine, trimite pe cineva.

Vine un baiat cu “laptop”-ul (ca asa s-au exprimat aia de la suport, ca daca nu merge cu restart de router o sa trimita pe cineva cu “laptop”-ul :))

Vine, baga cablu in laptop, user/pass de la mine si ce sa vezi, 87Mbps. Mi se aprinde si mie un beculet si incerc testul ala de viteza de pe telefon: 70Mbps. Daca ma ducea capul aseara si in zilele de dinainte nu mai trebuia sa fac azi pe prostul.

Ajunge baiatul cu laptopul la concluzia ca poate am virusi pe calculator si de aia merge asa greu, imi zice c-o sa ma coste 10RON interventia si aia e.

Ma mai gandii eu un pic si dadui un restart la laptopul meu, ca na… poate o fi ceva. Si ce sa vezi, 90Mbps.

Ii tot injuram pe aia de la suport cu “ati dat restart”… da uite ca aveau dreptate. Bagami-as.

Ocazie cu care sa le urez si astora de la Apple multa muie, ca ultimele drivere sunt de cacat si daca tii laptopul in sleep, dupa cateva saptamani se duce per penis treaba cu reteaua. Si cred ca problema e undeva la stack-ul lor de networking, ca la fel facea si pe WiFi si pe un adaptor pe USB.

O vreme o sa tac si-o sa merg pe burta cu chestiile de retea :))

mssql replication & log shipping

Acu ceva vreme am instalat la niste oameni niste multe servere de MSSQL pentru niste chestii de logistica.

Anul asta au zis oamenii ca bai, e important sa nu pierdem datele pe care le avem pe servere si hai sa facem un backup offsite.

Backup-ul offsite n-a fost sa fie ca latenta si TCP e picky cu latenta cand vrei sa transferi single-connection fisiere mari si eram intr-o situatie din aia in care dura mai mult de-o zi sa transfer un fisier de backup (mind you, gigabit in ambele parti, da TCP…). “Stiintific” treaba asta se cheama “long fat pipe problem” si necesita un pic de inginerie sa mearga cum trebuie, da’ in cazul de fata n’aveam ce inginerie sa fac ca tehnologia era la impuse.

Long story short, zic hai ca am solutia: facem replicare intre servere de MSSQL si o sa fie aproape realtime datele, eventual o sa se mai piarda cateva tranzactii, da’ nu e un capat de lume.

Si ma apuc eu si instalez un SQL server in alta parte si da-i sa fac replicare. Ma gandeam eu ca e la MySQL undeva faci un master/slave, restaurezi un backup pe ala remote si dupa aia trimiti binlog-urile pe al doilea sa le face replay si aia e. Simplu.

Well… not really, ca Microsoft fiind Microsoft au zis ca de ce sa fie simplu cand poate sa fie complicat si nu poti face replicare asa simplu. Ca de exemplu daca ai tabele fara primary key nu le poti include in replicare. Procedurile stocate nu se replica, because reasons…

Multa muie lor pe tema asta ca mi-au scos peri albi.

Zic bine, facem transaction log shipping care “replica” tot. O sa fie baza de date remote un pic in urma, da’ a zis lumea ca poate trai si daca se pierd 30min de date.

Acum, astia cu logistica sunt mai speciali… cam ca niste autisti de speciali, si ei nu cred in versiuni prea noi de software si asa am ajuns eu sa am si MSSQL 2014 si 2016, ca fiecare producator are versiunea lui de baza de date “suportata”.

Mno, acu aveam servere din astea diferite, zic hai ca pun MSSQL 2017 in locatia remote si stochez acolo toate bazele de date ca fiecare baza de date un Compatibility Level care e in functie de versiunea de SQL Server, gen 2014, 2016 si 2017.

Instalez eu serverul vietii, dau sa setez transcation log shipping: nu se poate prietene ca trebuie upgradata versiunea de baza de date pe serverul remote si ghinion ca tu ai o versiune mai veche. Morti si raniti si muie alora de-au programat mizeria asta.

Se pare ca desi poti bifa acolo Compatibility Level, intern MSSQL mai modifica un pic baza de date ca sa fie compatibila cu noul engine de SQL, da’ la suprafata se comporta ca ala vechi…

Alte ore pierdute aiurea, da-le-as muie la imbecilii pulii. Pai orice esti backward compatible ori nu esti.

Zic bine, hai ca pun un 2014 remote sa se impace cu 2014 local. Pun serverul pulii, setez acolo replicarea, face primul backup mare de pe sursa, il copiaza super repede pe destinatie si imi da prin gura: n-ai destul loc pe C:\ ca sa restaurez baza de date pe destinatie. Mi-au scapat instant multe mui inspre Microsoft pe tema asta…

Asta desi din setup era configurat sa tina bazele de date pe alt disk cu suficient de mult spatiu. Dar nu, el vrea musai pe C:\ pentru ca ma gandesc eu ca acolo are setat “Instance Root Directory” si simte nevoia s-o puna acolo desi ar trebui s-o puna in alta parte.

Varianta complicata a fost sa fac eu un backup full la o baza de date, s-o copiez in 3 ore in partea ailata si s-o restaurez unde trebuie si abia dupa aia sa setez transaction log shipping pe sursa si sa-i zic la sursa ca deja exista baza de date in partea ailalta.

Asta era azinoapte. Dupa un pic de investigatii descoperii ca de fapt nu merge log shipping.

Banuiesc ca e din cauza ca pana s-a copiat baza de date si s-a restaurat a trecut prea mult timp pe sursa si logurile pe care le genereaza nu au logica pe destinatie ca’s la prea mare distanta in timp.

Back to the drawing board. Sa moara in chinuri aia de la MS care in loc sa faca un setup simplu, l-au complicat pana i-au scos mucii pe cur. Unfuckingbelieveable…

(Cateva zile mai tarziu…)

Dupa un pic de desenat am descoperit cum pot sa-l fac sa restaureze baza de date unde trebuie. La Restore are niste optiuni semi-ascunse in care ii zici unde sa restaureze baza de date si unde sa restaureze logurile. La asta cu restauratul evident ca nu e simplu: baza da date pe sursa se cheama ABC si are doua fisiere mari si late: ABC.MDF si ABC_LOG.LDF (baza de date propriuzisa si logurile). Eh, cand le faci restore in alta parte, poti sa schimbi numele bazei de date – asa cum am facut eu, ca poate vrei s-o prefixezi cu ceva. Catch-ul e ca numele de pe disk al fisierelor nu se schimba in noul prefix, gen baza sa fie LS-ABC si fisierele sa se cheme LS-ABC.MDF si LS-ABC_LOG.LDF… Pai ce erau prosti sa-l schimbe? Nu, pe disc ramane la fel. Si daca ai doua servere din medii diferite de productie si cu acelasi nume de baza de date si vrei sa faci log shipping de pe ambele pe un singur server… ghici ce… la a doua restuare o sa-ti dea eroare ca deja exista baza de date si ca bla bla e folosita. Si trebuie sa faci alte directoare pentru baza si pentru loguri ca sa poti face log shipping si pentru al doilea server…

Problema de dinainte era din cauza ca aveam alte job-uri de log backup si MSSQL asta nu e asa inteligent sa nu amestece oalele, si se facea backup la loguri din 2 in 5 si evident ca unele loguri era salvate undeva si alte altundeva si pula continuitate in loguri si n-avea ala la ce sa faca restore.

Fixat asta, dat backup/restore si log shipping si pare sa mearga. Trebuie sa stau cu geana pe el sa vad ca nu sughita, sa dau un reboot pe ici pe colo sa vad cum face cand se mai pierde sursa sau destinatia un pic.

Sa-i chis in freza pe astia de la Microsoft si mai ales pe aia de scriu la MSSQL ca au gandit diverse chestii din puta gandirii…