2013. augusztus 21., szerda

Tűzfalas kollégák vs. Sql kollégák

Sziasztok!



El szoktam mesélni Sql Admin tanfolyamon a kedvenc sztorimat, és most úgy döntöttem ide is leírom, legyen meg.

Van egy nagy cégünk, aminek neve Bőség és Jólét Bt.
Informatikai területen szolgáltatunk. Vannak tűzfalas kollégáink, akik őrzik a rendet, és megóvnak minket a sok syn flood-tól ami érkezik Kínából, és vannak az Sql admin kollegák, akiknek a munkaköre kimerül abban, hogy az óránkénti 10.000 dollárt termelő adatbázis ne hasaljon már el, legyen mindig elérhető 0-24, elég gyorsan lehessen belőle selectálgatni. Ja és ebből az adatbázisból van vagy 200 db...

Szóval semmi stressz...

Meg is vagyunk, mindenki végzi a dolgát. Aztán egyszer csak a cég elnyer egy pályázati pénzt, amiből vagány Blade szervereket és néhány SQL 2012 Enterprise Editiont vásárolunk.
Miután kész van az architekt munkafolyamat, jöhet egy adatbázis migrálás az új szerverre.

Megtörténik, majd érkeznek a telefonok, hogy itt sem megy a programunk, meg a másik megyében sem megy a programunk... Mindenki nézi, hogy vajon mi történhetett, minden beállítás jónak tűnik...

Aztán egyszer csak az architektes kollegának eszébe jut 1 (azaz egy) dolog,amiben különbséget fedezett fel,mégpedig hogy valamilyen okból kifolyólag  nem Default Instance-ot telepítettünk fel, hanem Named Instance-ot. Erre rögtön mondja is az egy DBA kolléga, hogy nincs azzal gond, hiszen a programok config fileja (ami az sql szerverhez való csatlakozás paramétereit tartalmazza) frissítve lett mindenhol. Ráadásul odafigyeltünk arra is, hogy ugyanmár fusson az a Browser Service, sőt, még a 1434-es portot ki is nyittattuk a tűzfalas srácokkal...

Akkor mégis hogy lehet az, hogy csak azokkal az adatbázisokkal van gond, amik az "új vason vannak", és a régi szerver Default Példányáról pedig minden tökéletesen megy?


Hát úgy lehet, hogy a tűzfalas kollégák azt csinálják, amit kell, engedélyeznek mindent, amit kérsz és minden más megy a levesbe (vagyis Default Drop)

És mi mit kértünk tőlük? Hogy a TCP 1433 a Database Engine miatt és a TCP 1434 a Browser Service miatt legyen nyitva, hogy a kliensek elérjék a nevesített példányt.

Mert a Browser Service TCP 1434-en küldi az infót a kliensnek hogy  a keresett sql szerver melyik porton hallgatózik...

Igen ám, de magát a Kliens kérését, (hogy küldje már el a Named Instance portját), hol várja a Browser Service?

UDP 1434

És mi mit kértünk a tűzfalas kollégáktól? TCP 1434.

Ezt kellett volna tudnia a Firewall csapatnak? Hát nem, miért kellene? Az Sql-es sem kell hogy tudja, hogy vajon az SSL az ISO/OSI Layer 3 és Layer 4 "között" dolgozik -e vagy sem...

Szóval az én szerény véleményem az, hogy egy DBA tudja azt, hogy igenis kell néha UDP forgalmat engedni 1434 porton az sql szerverek felé.





3 megjegyzés:

  1. Az ilyen jellegű mondatoknak mindig van utóhatása:
    "hogy valamilyen okból kifolyólag nem Default Instance-ot telepítettünk fel" :D

    Egyébként tanulságos történet.

    VálaszTörlés
  2. Utóhatás? :) Sőt, néha már majdnem felér a "gerelyeket ide" mondattal! :)

    Van az a mondás, hogy akkor szép az élet ha zajlik, de azért néha tényleg nem árt az a bizonyos idegesítő/feleslegesnek tűnő/stb cég policy...

    VálaszTörlés
  3. Azért kiderült az a "valamilyen ok"? :D

    VálaszTörlés