Kameli V4

March 15th, 2009

Lähes vuoden kestäneen hidastelun, epäonnen ja säätämisen jälkeen saimme lopulta uuden kamelin pystyyn. Ammoisen vanha Kameli V3 eli Celeron/300 160 megan muisteineen sai väistyä ja tilalle hankittiin Dualcore-Celeron/2GHz kahden gigan muistilla. Levytilakin saatiin nostettua samalla yli teratavun. Kone vaihtui tänään ja ensimmäisten kokemuksien perusteella vauhti on aivan eri maailmasta. Suurimman eron huomaa tämän WordPress/MySQL-yhdistelmän kanssa: entisen koneen kanssa sai aina varautua useiden sekuntien odotteluun sivua vaihtaessaan, mutta nyt kuluu ehkä sekunti tai kaksi samaan tehtävään eikä koneen kuorma hyppää välittömästi kattoon.

Debianin asennusohjelma ei suostunut Intelin emolevyn kanssa toimimaan ja kun en itse ollut paikan päällä Tampereella asentamassa vaan Meksikossa, niin koneeseen meni sitten Red Hat -pohjainen CentOS. Kun kone oli käynnistyvässä mallissa, niin laitoin sitten loput kuntoon ja siirsin tiedostot ssh:n yli etänä. Mitään suurempia ongelmia CentOSin kanssa ei lopulta tullut, kunhan selvisin ensimmäisestä kulttuurishokistani. Yum on lähes identtinen apt-getin kanssa ja muiden outouksien kanssa auttoi Google. Joitakin sekalaisia havaintoja vielä asennuksesta ja siinä ohessa Linuxin nykytilasta:

  • Debianissa tuntuu olevan enemmän paketteja ja lisäksi ne sisältävät valmiina enemmän ominaisuuksia. Tätä selittänee CentOSin suuntautuminen konservatiiviseen serverikäyttöön. Ylimääräisiä repositioita asentamalla valikoima paranee.
  • Pienet eroavaisuudet asetustiedostojen välillä aiheuttavat paljon virhealtista käsityötä, kun niitä siirtää kahden eri Linux-jakelun välillä. Esimerkkinä Red Hat -perheen tapa kutsua www-palvelinta httpd:ksi ja Debianien puolestaan apacheksi.
  • Debianien välillä MySQL:n tietokannat sai kopioitua suoraan tiedostoina, mutta nyt ei, joten piti käyttää mysqldumpia: mysqldump -u root -ppassu –all-databases > databases.sql ja toisessa päässä: mysql -u root -ppassu < databases.sql
  • Linux-jakelut tuntuvat edelleenkin jakautuvan pikemminkin kuin konvergoituvan yhteen. Kuten Debianista syntyi Ubuntu, on Red Hatistakin saanut alkunsa jo ainakin Fedora ja sen sukulainen CentOS. Periaatteessa paketteja voi vaihdella saman perheen sisällä, mutta käytännössä ongelmia voi tulla.
  • Vajaan kymmenen vuotta vanhan peruskoneen ja nykyisen peruskoneen välinen ero on melkoinen: muistia on kymmenkertaisesti, prosessoritehoa suunnilleen 20-kertaisesti ja levytilakin on yli kymmenkertaistunut. Pullonkaulana onkin nyt entistä enemmän verkon nopeus.
  • Laitestandardit ovat tuona aikana ehtineet muuttua myös jo enemmän kuin kerran. Niin prosessori-, laajennus-, kovalevy- kuin muistiväyläkin on eri. Vanhoilla osilla ei olisi — levy- ja cd-asemaa lukuun ottamatta — tehnyt mitään.
  • rsync on hyvä ystävä, kun haluaa päivittää tiedostoja kahden koneen välillä. Kaikkea ei tarvitse aina siirtää kerralla, jos ajantasaiset tiedostot on jo olemassa. Itse käytin vipusia -auv, koska vanha kone tukkeutui gzip-pakkaamiseen. Pienenä kauneusvirheenä pisteellä alkavat asetustiedostot eivät seuranneet mukana.
  • Periaatteessa hyvä ja kaunis tietoturvaa lisäävä SELinux aiheutti niin mystisiä ongelmia, että se oli pakko ottaa pois päältä. Riittävällä tonkimisella varmaan sitäkin olisi voinut ymmärtää, mutta järin käyttäjäystävällinen se ei ole aloittelijalle.
  • Monet ISP:t kuten Elisa eivät salli liikennettä porttiin 25, joten sähköpostia oli mahdotonta testata ennen konehuoneeseen siirtoa.
  • Sähköpostipalvelinohjelmat ovat kaikki toivottoman monimutkaisia säädöiltään. Laitoin lopulta qmailin kuten edellisessäkin koneessa ihan tietoturvan ja tuttuuden takia, mutta sen asennus oli toivottoman mutkikasta ja ilman ohjeita luultavasti lähes mahdotonta.
  • Apachen kummallisuuksien kanssa on useimmiten jotain taistelua tiedossa. Niin yksinkertainen asia kuin CGI-skriptien suoritus pitää laittaa kolmesta tai neljästä paikkaa päälle. Virtualhostit menivät helposti tällä kertaa, mutta ne taas eivät toimineet mod_ssl:n kanssa järkevästi.

Filed under: laitteet,linux

6 Comments Add your own

  • 1. mtoivo  |  March 15th, 2009 at 11:48 pm

    Sympatiat tuosta migraatio-urakasta, sitä on tullut itsekin harrasteltua viimeaikoina melko isolla kädellä. Nyt onkin sitten ainakin yhden firman loputkin palvelimet virtualisoitu Xen:llä kaikki, jolloin siirrot raudasta toiseen ovat kivuttomampia ja LVM:n päälle rakennettuna myös mahdollista tehdä livenä. Olen pärähtänyt tuohon virtualisointiin aika isosti, melkein virtualisoisin linux-ympäristön myös siinä tapauksessa, että se pyörisi raudassa yksistään, ellei välttämättä joka ainutta kellojaksoa tarvittaisi hyötykäyttöön.

    Itse en olisi enää suostunut Debianista vaihtamaan “red hattiin”, pisteet siitä.

    Mysqlin kantojen backup- yms. toimiin olen dumppia käyttänyt jo pitkään, ja mitä olen lukenut niin on vähän turvallisempi vaihtoehto korruptioiden välttämiseksi. Kantojen siirto eri mysql-versioiden välillä toimii raa’alla sql-dumpilla myös kivuttomammin.

    Pidän myös debian-tavasta nimetä ohjelmat niiden oikeiden nimien mukaan. Apacheen ehti tottua jo siinä vaiheessa, kun sitä tuli syystä ja toisesta kääneltyä jo redhatissa suoraan sorsista.

    Elisa ei muuten salli sitä portin 25 liikennöintä uloskaanpäin muille kuin omille palvelimilleen, tästä olivat kuitenkin valmiita joustamaan ainakin silloin, kun käytäntö tuli voimaan. Tämä on mielestäni jopa järkevämpää kuin blokki sisäänpäin.

    Rsync siirtää kyllä minulla noilla vivuilla (+gzip) myös piilotiedostot, ja ymmärtääkseni ne pitäisi kyllä mennä ilman sen kummempia kikkailuja.

    Qmail lienee pätevä tietyillä patcheilla höystettynä, itse olen päätynyt postfix + cyrus yhdistelmään. Postfix on mielestäni erittäin yksinkertainen configuroida, ainakin sendmailiin verrattuna ja viestin välitys cyrukselle lmtp:llä vähintäänkin triviaalia. Lisäksi greylisting yms on verrattaen näppärästi hoidettavissa. Cyruksessa taas pidän ehdottoman kovana ominaisuutena sitä, että viestit tallentuvat omiin tiedostoihinsa, jolloin esim. varmuuskopiointi on inkrementaalina nopea ja mahdollisuudet koko postilaatikon korruptoimiselle ovat vähäiset. Tuohon kun vielä yhdistää mysql-tietokannan sekä autentikointiin, että postinohjaukseen, on tulos bueno. Hallinnointiin olen useimmiten käyttänyt Web-cyradm -nimistä simppeliä webbisoftaa. Cyruksen mukana tulevaan sieve-filtteröintiin löytyy esim. squirrelmailiin hallinointityökalu, jolla voi sitten tehdä lomavastaajat yms filtteroinnit myös webissä. Squirrelissa voi myös sql-salasanat vaihtaa pluginilla. Raudankova yhdistelmä ™.

    HTTPS:n yli noita virtualhosteja ei rotokollan luonteesta johtuen oikein saa kuin 1kpl / IP. SSL kun neuvotellaan ennen HTTP:ta, ja siinä hostnamen on mätsättävä sertifikaatin vastaavaan.

  • 2. marq  |  March 16th, 2009 at 5:13 pm

    Hiukan itseäni se virtualisoinnin tehokkuus edelleen epäilyttää. Muisti on nykyään halpaa kuin makkara ja jokunen prosentti menetettyä CPU-tehoakaan ei ole niin vakavaa. Noissa omissa virtuaalikonekokeiluissa (tosin ovat olleet desktop-käyttiksiä eikä Xen ole tuttu) levynkäsittely on kuitenkin ollut reippaasti hitaampaa, minkä vuoksi olen edelleen vähän skeptinen.

    En tiedä, mikä sen rsyncin kanssa meni pieleen, mutta tosiaan mitkään piilotiedostot/hakemistot eivät siirtyneet. Vipuja riittää siinäkin ohjelmassa kyllä kiitettävästi joka lähtöön, joten lisätutkailulla asia saattaisi selvitä. Ylimääräisenä riesana siirrossa oli se, että Debijaanissa www-käyttäjä on “www-data” ja CentOSissa “apache” — vaikka sitten serveri on kuitenkin httpd… Find-rimpsulla sitten korjailin niitä oikkia. Toinen kludgeratkaisu olisi ollut tehdä www-data-niminen käyttäjä samalla uid:llä.

    Postfixistä ei ole tosiaan kokemusta, mutta sendmailin, eximin ja qmailin nähneenä tuntuu jotenkin siltä, että noita suunnittelevat mieleltään hyvin kierot ihmiset 🙂 Qmailiinkin olisi ihan toimiva weba-admini, mutta kun nyt tuolla kamelilla postia pitää muutama hassu tyyppi, niin laiskuus iskee eikä jaksa ruveta asentamaan kun näinkin toimii riittävästi.

  • 3. Mikko  |  March 18th, 2009 at 11:28 pm

    Tuohon sukulaisuussuhteeseen sen verran, että tuo Red Hat – Fedora – CentOS-systeemi menee abt näin:

    Red Hat Enterprise Linux: maksullinen distro
    Fedora: ilmainen kotidistro, jossa kaikenlaista desktop-softaa
    CentOS: RHEL:n paketit communityn kääntämänä

    Fedoraa kokeilin joskus desktopissa ja se ei juuri vakuuttanut, paras ihan puhtaaseen surffailuun on varmaankin tällä hetkellä se Ubuntu, vaikka muuten kamala purkkaliima onkin. Itse olen kuitenkin tuota CentOSia käytellyt nyt firman tuotantopalvelimilla ja sillä tavoin siitä jotain oppinut, plus sattumoisin tunnen Soneran väkeä, joista sai rekryttyä helpdeskaajia asennukseen juuri tällä systeemillä 🙂

    Valittu emo oli tosiaan ongelmallinen, Debian lähti sillä juuri ja juuri käyntiin muttei löytänyt mitään asemia, Knoppix hävitti samoin kaiken I/O:n alkubootin jälkeen, vaikka kerneliparametrejä kokeiltiin kaikenlaisia. CentOSin levyltä homma onnistui, joten se tuli valituksi kunnon darwinistisen ajattelutavan kautta. Kuulin tuttavilta, että tiettyjen Intel-emojen ja Linuxin välillä on ollut melkoista kitkaa. Lopulta homma toimi oikein vasta parametrilla pci=nommconf, acpi=off kyllä boottasi koneen mutta kernel näki vain toisen CPU:n.

    Vielä pieni tiivistelmä siitä, mikä tuota viivytti:

    – Ensin puuttui kaapeleita ja osia, joita haalittiin monen kuukauden ajan eri paikoista. Boottilevyksi valittiin SSD, johon tarvittiin ensin 3,5″ asennusraudat ja 2,5″ -> 3,5″ IDE-sovitin, joka olikin yllättävän hankala löytää. Myös kotelo oli sen verran korkea, että CD-aseman kaapeliksi tarvittiin erikoispitkä tuning-malli.
    – Sitten tapeltiin Debianin ja myöhemmin CentOSin kernelparametrien kanssa
    – Vaiheiden jälkeen sain lopulta CentOSin asennettua, mutta tuli niin paljon työkiireitä, että kone jäi pöydälle lojumaan koko kesäksi, jolloin unohdin tietysti rootpassun. Tämä olisi ollut pientä, jos olisin päässyt sisään singlenä, mutta kiitos risan BIOSin ja sattumalta asentuneen bugisen grubin, kerneliparametrit eivät välittyneet 🙂 No, päivitin sitten netinstillä uudemman grubin ja pääsin resetoimaan passun.
    – Systeemi olikin jo kertaalleen pystyssä, kun alkoi tulla mailia, että RAID-parin toinen levy prakaa. Tämä ei ollut hirveän hyvä uutinen koneelle, jolle oli suunniteltu useamman vuoden tinkiä. Siinä vaiheessa joku Markku myös muutti yhtä partitiotaulukkoa suurentaakseen /tmp:tä, ja yhteisvaikutus oli, että raidi /usr pimeni samaan aikaan kun meni myös /tmp ja /var, jotka olivat tuolla isolla levyllä (boottilevy on SSD). Siispä levykauppaan, ja Tiivi-Taavin ohjeen mukaisesti uudestaan. Nyt koneessa sitten on boottilevynä 8-gigainen Samsungin SSD, RAID1-pari Western Digitalin 500 Gt Caviar Blue -lättyjä, yksinäinen 500 Gt levy sekä hajonneen raidiparin ehjä puolikas, 250 Gt limppu. Melkoinen upgrade, kun ajatellaan että Kameli V3 ajeli pitkään 20 gigan levyllä 🙂

  • 4. marq  |  March 19th, 2009 at 4:18 pm

    Aikamoista vastatuulta tässä on ollut ihan joka saralla, mutta nyt kun uusi kone on pydessä ja katselee noita vasteaikoja ja siirtonopeuksia, niin kyllä tuo kannatti. Siinä missä V3 pamahti heti swapille, käyttää nykyinen setuppi muistia levycachena peräti 1,5 gigaa ja kun laajennuspaikkojakin on tyhjänä ja muisti nykyään halpaa kuin makkara, niin tarvittaessa voidaan heitellä vaikka toiset 2G lisää ineen. Eiköhän tämä taas muutaman vuoden palvele hyvin, jos vaan komponentit pysyvät ehjinä: vanhahan oli jo aluksi käytetty ja puksutti viitisen vuotta — joskin viimeisen vuoden meno oli jo vähän tuskallista.

    Kyllähän tuo CentOS nyt näyttää toimivan jees ja paketinhallinta sekä päivitys ovat ihan eri luokkaa kuin niissä kammottavissa takavuosien Red Hateissa, jotka vaan ryvettyivät käyttökelvottomaan kuntoon. RH 5 oli sekä omassa koneessa että kamelissa ja sen kaiken surkeuden jälkeen menikin sitten kymmenen vuotta, ennen kuin taas noihin suostuin koskemaan…

  • 5. mtoivo  |  March 24th, 2009 at 8:58 am

    No olipahan vääntöä! Elävästi tulee mieleen vastaavia omakohtaisia kokemuksia, kun beigeboxien kanssa vielä tuli pelattua, vasta ihan hiljattain olen viimeisistä päässyt eroon. Nykyisin en suostu käyttämään kuin “oikeaa” serverirautaa (kun valinnan mahdollisuus on), ja valitsen yleensä mallejakin vähän sen mukaan, kuinka valmistaja Debiania tukee. Ja kyllähän noihin kunnon räkkivempeleisiin yleensä ihan heittämällä on Debian sisään sujahtanut, ja ainakin HP (ent. Compaq tms) toimittaa myös .deb -asennustiedostot, joilla pääsee koneen raudanhallintaan (raidi, huoltoprosessori) kiinni. Silkkaa juhlaa.

    Monet asennuksethan pelaavat ei-SMP kernelillä, siitä saattaa johtua muiden prosujen / ytimien näkymättömyys asennusvaiheessa.

    Tuota CentOS -jakelua on kyllä moni vakuuttava taho minullekin kehunut, en yhtään epäile, etteikö olisi mitä mainion ainakin serverikäyttöön. Pitänee siihenkin sormensa työntää jossain vaiheessa.

    SSD-kokeiluja on itelläkin edessä, aattelin koota sellaisen palomuuri-yleislaitteen MiniITX-emon ympärille ilman liikkuvia osia. Koneen tarkoitus olisi toimia sellaisena perus tietoverkkopalvelut pyörittävänä vempainena. Eli siltaava / reitittävä palomuuri, NAT, DHCP, DNS, VPN yms. Nopeasti ei ollut saatavilla kolmen verkkokortin versiota passiivijäähdytys -mallina, joten lähden liikkelle kahdella verkkokortilla. Käyttis tulee CF-kortille nopeaa huoltoa ja monistusta varten.

    Jos noita levyjä muuten jää tuohon malliin väljänä koneeseen, niin kannattanee LVM:llä mötittää niitä sellaiseksi joutaanpäiväiseksi isoksi tilaksi, jota voi sitten tarpeen vaatiessa kasvattaa. Kätevä esim. war.. tai ei niin tärkeiden isohkojen tiedostojen säilömiseen, joiden häviäminen levyrikon sattuessa ei niin hirveästi haittaa. Olen huomannut näppäräksi palvelimissa, joissa ei kaikkia levykehikon paikkoja ole heti otettu käyttöön: kun tila loppuu ja hankitaan lisää levyä, niin laittaa vain RAID5:n laajentumaan uusille levyille ja syntyneen uuden fyysisen osion sitten LVM:llä ketjuttaa kokonaiskokoa kasvattamaan. Mukavaa, mutta helppoa.

  • 6. marq  |  March 29th, 2009 at 4:49 pm

    Se dualcore oli jotain täysin hämärää ja luultavasti liittyi emolevyn huonoon tukeen/huonouteen. CentOSissa on kyllä SMP-kerneli vakiona, mutta ACPI päällä se ei toiminut ja vastaavasti ACPI:n disablointi poisti myös toisen ytimen käytöstä. Tuo pci=nommconf sitten auttoi asiaan, vaikkei ole paljon hajua, mitä se tekee…

Kommentin kirjoitus

You must be logged in to post a comment.

RSS feed for comments on this post.


Kommenttien virta

Aiheet