Ylläpidon ylläpitoviikonloppu 5/2013

Jon Ekberg / 8. joulukuuta 2013

Itsenäisyyspäivän pidentämä viikonloppu alkoi torstai-illalla kun ensimmäiset ylläpitäjät saapuivat kokouspaikalle. Mukana oli toinen ylläpidon uusista jäsenistä, joka pikaisen tutustumiskierroksen jälkeen oli jo täydellä vauhdilla lyhentämässä ylläpidon tikettijonoa. Muutamaa tuntia myöhemmin homma sujui kuin vanhalta tekijältä, joten voitaneen todeta valinnan osuneen kohdilleen.

Ensimmäinen suuri ihmettelynaihe löytyi sopasta joka syntyi yhdistämällä PostgreSQL, OpenIndiana, ZFS sekä pakallinen 15k SAS-levyjä. Levyjen suorituskyky ei tuntunut missään vaiheessa nousevan odotetulle tasolle, ja syitä etsittiin sekä possusta, kerneleistä sekä levyohjaimista.

Kapsi WEB2.0 -prototyyppi nostettiin pystyyn ja pistettiin kovaan syyniin. Prototyypin on tarkoitus havainnollistaa usealle palvelimelle hajautetun webpalvelimen hyötyjä ja haasteita. Järjestelmää ponnistettiin Apachen JMeterillä ja varmuuden vuoksi ylläpito laittoi huput päähän ja opettelivat dossaamaan.

Vihreähatut dossaavat

Vihreähatut dossaavat

Toinen prototyyppi joka viikonlopun aikana saatiin ajoon oli Kapsi SQL2.0. Kyseisessä järjestelyssä PostgreSQL sijoitettiin virtualisoidulle testipalvelimelle ja kantaa moukaroitiiin pgbenchillä kunnes pullonkaulat tulivat esille. Sama konsepti toistettiin myös mariadb:lle. Virtualisoidut tietokantapalvelimet eivät performoineet vielä halutulla tavalla ja erinäköisten konseptien testailuja jatketaan tulevaisuudessa.

Ylläpidon toinen uusi jäsen osoitti suurta innostusta karttapalveluita kohtaan ja suoritti muiden speksausten oheessa päivityksen yhdistyksen jäsenkartalle joka jo muutenkin oli päivityksen tarpeessa. Tulevaisuudessa lienee mahdollista nähdä myös muita päivityksiä karttapalveluiden osalta.

Lauantai-yöllä suoritettiin suunniteltu huoltokatko Siialle jonka jälkeen 10GE -yhteydet kättelivät onnistuneesti.

Viikonlopun aikana ehdittiin myös konseptoimaan potentiaalisia tulevaisuuden suunnitelmia, joista varmasti tullaan kirjoittamaan tulevaisuudessa enemmän kunhan toteuttamiskelpoiset ideat saadaan eroteltua esiin.

Ylimääräisen kokouksen päätöksistä ja taustoista

Olli Vainio / 29. marraskuuta 2013

Ylimääräistä kokousta edeltävänä aikana hallitus sai useita kyselyjä liittyen yhdistyksen tilanteeseen ja että olemmeko huomioineet asioita x, y ja z liittyen tilanteesen. Ajattelin tässä blogauksessa hieman selventää taustoja tilanteeseen, miksi kokouskutsussa ehdotettiin mitä ehdotettiin.

Aivan aluksi päätöksistä.

Yhdistyksen kokouksessa päätettiin olla keräämättä ylimääräistä jäsenmaksua tälle vuodelle kun hallitus veti esityksensä pois kokouksen aikana. Jäsenmaksut vuodelle 2014 päätettiin suoraan hallituksen pohjaesityksen mukaisesti eli 40 euroa henkilöjäseniltä ja 70 euroa yhteisöjäseniltä sisältäen arvonlisäveron 24 %. Päätettiin myös valittaa verottajan päätöksestä oikaisulautakuntaan.

Kaikki jotka ovat lukeenee aiemmat blogaukseni tästä verottajatilanteesta ymmärtenevät jo, että kyseessähän ei tosiaan ollut pelkkä arvonlisäverovelvollisuus, vaan tulkinta ettei Kapsi ole yleishyödyllinen. Tämä johtaa ALV-velvollisuuden lisäksi yhteisöverojen maksuun verotettavasta tuloksesta.

Kokouskutsussa oli ehkä asia tuotu hieman epäselvästi ilmi, mutta kun kokouskutsua tehtiin niin oli vielä tilanne jossa olisi kaikki verot tulleet 25.11.–23.12. maksuun. Lisäksi maksuun meni nyt veroasiantuntijan lasku Kapsin vastineen laatimisesta verottajalle. Jouduimme toimimaan oletuksella, että tämä on tilanne kun kutsua tehtiin ja tämän oletuksen pohjalta tuo 10 euron lisämaksuehdotus laitettiin kokouskutsuun. Jos emme olisi näin tehneet niin olisimme selkeästi riskeeranneet yhdistyksen hetkellisellä maksukyvyttömyydellä.

Saimme kuitenkin sovittua verottajan ja toisen laskuttajan kanssa ratkaisuja, jotka ostavat meille sen verran aikaa, että yhdistyksen normaalilla kassavirralla kaikki saadaan maksettua normaalisti ja siten hallitus päätti kokouksessa vetää esityksensä pois. Järjestelyt aiheuttavat marginaalisia korkokuluja, mutta tämä on paljon pienempi paha meidän mielestämme kuin jäseniltä ylimääräisen maksun kerääminen. Tapa hoitaa asia on ehkä ollut hieman hämmentävä jäsenistön perspektiivistä, mutta en näe miten olisimme voineet toimia minkään muun oletuksen mukaan. Lisäksi kokous oli pakko saada pidettyä, että meillä on aikaa ennen vuodenvaihdetta toimia päätösten mukaan.

Sitten korotetusta jäsenmaksusta.

Monet kysyivät ennen kokousta, että tietäähän hallitus, että hankintojen arvonlisäverot voi myöskin vähentää. Kyllä tämä on täysin tiedossa. Tilanne on kuitenkin se, että kaikkia veroja ei saada vähennettyä ja siten efektiivisesti kuluja tulee enemmän suhteessa tuloihin aiempaan tilanteeseen verraten. Lisäksi ensi vuodelle aiheutuu valituksesta laki- ja muista asiantuntijakuluista havaittava määrä. Pyrimme myös pitämään isomman marginaalin ensi vuoden taloudessa jos tulee vielä uusia yllätyksiä verottajan suunnasta niin ei ole heti ongelmia niiden myötä.

Monet ovat kysyneet myös, että miksei meillä ollu budjettia hoitaa näitä velvoitteita. On selvää, että olisi hyvä olla pelivaraa taloudessa ja Kapsilla onkin. Kuitenkin jos miettii, että juuri ennen verottajan ensimmäistä yhteydenottoa 3.10. olimme investoineet verkkolaitteistoihin ja kahteen uuteen palvelimeen niin ajoitus oli vähän epämieluisa. Taloudessa oli pelivaraa tiedossa olevien menojen ja maltillisten yllätysten varalle. Alla hieman aikajana niin saa käsitystä miten nopeasti kaikki tapahtui.

to 3.10.: Sain puhelinsoiton verottajalta jossa lyhyesti kävi ilmi, että ovat tämmöistä päätöstä tekemässä.

ma 7.10.: Saimme varsinaisen kirjeen verottajalta, mutta olimme saaneet tekstin haltuun jo aiemmin verotoimistosta pyytämällä. Tiedossa, että selvitys tulee olla jätetty 17.10. mennessä.

ma 7.10.: Jätimme pyynnön lisäajan saamisesta selvityspyynnön vastaukseen.

pe 11.10.: Saamme tiedon, että pyyntö lisäajasta on hylätty.

to 17.10.: Jätämme vastineen selvityspyyntöön.

ma 28.10.: Saamme ilmoituksen missä todetaan, että Kapsi ei ole enää yleishyödyllinen.

to 31.10.: Verotuspäätös mistä käy ilmi maksettavat summat ja eräpäivät.

ma 25.11.: Alkuperäinen eräpäivä yhteisöveroille.

Kuten aikajanasta voinee huomata, tuli kovin ns. puskista.

Toivottavasti tämä blogi selventää suurelle osalle kuvioita siitä miten asiat ovat, olivat ja miksi mitäkin tehtiin. Lisää kysymksyä voi esittää kommenteissa ja yritän niihin parhaani mukaan vastata.

Verottajan päätöksen seurauksia

Olli Vainio / 6. marraskuuta 2013

Olen aiemmin kahdesti blogannut tästä verottajan selvityspyynnöstä ja päätöksestä. Olemme nyt päättäneet julkaista myös tuon alkuperäisen päätöksen ja se löytyy tästä.

Tämän päätöksen seurauksena olemme nyt suorittaneet hallituksessa hieman talousarviointia. Hallitus on päättänyt kutsua kokoon ylimääräisen yhdistyksen kokouksen jonka kutsut lähetetään piakkoin. Tässä kokouksessa hallitus tulee ehdottamaan kokoukselle, että vuodelta 2013 kerätään jäseniltä ylimääräinen 10 euron jäsenmaksu ja 2014 jäsenmaksu(sisältäen alv 24%) olisi 40 euroa henkilöjäsenille, 70 euroa yhteisöjäsenille ja 250 euroa kannatusjäsenille.

Nämä maksut ovat välttämättömiä toiminnan jatkuvuuden turvaamiseksi. Tavoitteena on saada yhdistys stabiiliin tilaan taloudellisesti huomioiden uuden tilanteen. Vaalikokouksessa 2014 loppupuolella lienee hyvinkin selkeä kuva jo tämän uuden realiteetin kanssa toimimisesta ja lopullisesta kuluvaikutuksesta. Tällöin luonnollisesti tilanteen salliessa yhdistyksen kokous voi myös alentaa jäsenmaksua niin halutessaan.

Hallitus vastaa mielellään lisätiedusteluihin ja kysymyksiin aiheesta.

LISÄYS: Päätimme myös julkaista päätöstä edeltäneen selvityspyynnön ja se löytyy tästä.

Verottajalta päätös

Olli Vainio / 29. lokakuuta 2013

Eilen vastaanotimme verottajalta päätöksen liittyen aiemmassa blogauksessa kerrottuihin asioihin.

Verottaja selvityksistämme huolimatta on tehnyt nyt tulkinnan, että Kapsi ei olisi yleishyödyllinen ja ovat päättäneet myöskin lisätä Kapsin ALV-rekisteriin viranomaisaloitteisesti. Yhdistyksen hallituksen käsityksen mukaan verottajan ratkaisu on virheellinen ja siitä tullaan valittamaan.

Blogaan asiasta lisää jahka asia taas etenee.

Verottajalta postia

Olli Vainio / 3. lokakuuta 2013

Mietin tovin blogaanko tästä, mutta olen avoimuuden nimissä päättänyt, että jo tässä vaiheessa otan asian esille.

Verottaja lähestyi Kapsin hallitusta postitse tänään ja pyysi selvityksen Kapsin vuoden 2012 toiminnasta. Tämän hetkisen tulkinan mukaan verottaja on tehnyt oletuksen, että Kapsi ei olisi yleishyödyllinen ja että Kapsin kaikki toiminta olisi elinkeinotoimintaa ja siten verotettavaa. Lienee sanomattakin selvää, että tällä linjauksella olisi vahvat vaikutuksen yhdistyksen toimintaan.

Tulemme selvittämään asiaa verottajan kanssa ja tarvittaessa vääntämään asiasta korkeimmassa hallinto-oikeudessa asti. Tarkempia yksityiskohtia tiedotetaan tilanteen edetessä.

Kapsin toimarimiitti syyskuussa 2013

Jasmin Hulkko / 2. lokakuuta 2013

Kapsin toimihenkilöt ovat kokoontuneet muutaman viime vuoden aikana säännöllisen epäsäännöllisesti käymään läpi yhdistyksen toiminnan tilaa, suunnittelemaan tulevaisuutta ja tekemään pieniä säätörupeamia saunan, ruuan ja hyvän seuran merkeissä. Edellisestä toimareiden kokoustuksesta on vierähtänyt jo jopa luvattoman kauan. Monet asiat kaipaavat kipeästi huomiota, mielipiteitä ja keskustelua.

DSCF3048

 Toimarit säätötunnelmissa. Kuva: Jarkko Vääräniemi

Tämänkertaisen toimarimiitin paikkana toimi Technopolis Vantaalla. Agendana esille nousi erityisesti ylläpidotoiminnan tila, ylläpidon henkilösidonnaisen tietotaidon saattaminen paremmin muiden ylläpitäjien tietoon, tulevaisuuden mahdolliset palvelukonseptit sekä yleiset yhdistyksen toimihenkilöstön organisoitumiseen liittyvät seikat. Ohessa säädettiin tekniikkaa, vaihdettiin kuulumisia sekä nähtiin myös harvemmin fyysisesti havainnoitavissa olevia toimareita.

Kapsin kaltaisen yhdistyksen tärkeintä pääomaa on henkilöiden tietotaito yhdistyksen toiminnan kannalta merkityksellisestä teknologiasta. Tämän tietotaidon saattaminen mahdollisimman laajan joukon tietoon palvelee ylläpitotoiminnan jatkuvuuden turvaamisen tavoitteita sekä edesauttaa ylläpitäjien yleistä teknistä osaamista. Uutena asiana tulee kiinnittää erityistä huomiota myös yleisluontoisen tietotaidon saattamiseksi yhdistyspiirin ja toimariporukan ulkopuolelle. Tällä edistetään yleistä tietotekniikan osaamista, joka on myös yksi yhdistyksen toiminnan keskeisistä tavoitteista.

IMG_0292

Odottelemassa paluukyytiin nousua, erota kapsilaiset? Kuva: Olli Vainio

 

Muita esille tulleita visioita olivat muun muassa selkeä helppokäyttöisen, salatun varmistus- ja tiedonjakopalvelun saaminen yhdistyksen jäsenistön käyttöön. Tavoitteena on löytää ratkaisu, joka mahdollistaisi jokaiselle jäsenelle kunnollisen laitteiden varmennuksen Kapsin levytilaan sekä mahdollisuuden tietojen jakamiseen helposti laajemmalle yleisölle. Eri varmennuspalveluratkaisuja kartoitetaan. Varmennusten lisäksi myös muita Kapsin jäsenpalvelukonseptiin sopivia valmiita palvelukokonaisuuksia etsitään. Yhdistyksen omaan ohjelmistokehitykseen käytettävät resurssit eivät nykyisin harrastajavoimin tule riittämään erityisten palvelukokonaisuuksien tekemiseen harrastajavoimin.

IMG_0311

Tämän blogin muodostuminen paluulennolla. Kuva: Olli Vainio

Kapsin omista ohjelmistoprojekteista tapetilla oli myös Sikteeri, yhdistyksen jäsenhallinta, jonka prosesseja hiottiin sekä joitain uusia ominaisuuksia taidettiin jopa keretä koodata toimarimiitin aikana. Luonnollisesti sopivassa rinnakkaisajossa saunomisen kanssa. Myös Sikteeri-projekti kaipaisi lisää resursseja, jotta kahvia saataisiin muutettua koodiksi toisinaan hieman vauhdikkaammin.

Kapsi kehittyy säätö säädöltä, miitti miitiltä ja sauna saunalta aina vain paremmaksi. Tästä on siis kovin hyvä jatkaa kohti uusia haasteita.

Linux – HA – grsec – BFS – Kapsi – ???

Jasmin Hulkko / 30. elokuuta 2013

$ uname -a
Linux lakka 3.2.46-grbfs-kapsi #1 SMP Wed Jun 5 19:48:35 EEST 2013 x86_64 GNU/Linux

Niin mistä puhe?

Ydin eli kerneli (engl. kernel) on tietokoneen käyttöjärjestelmän alin osa, joka mahdollistaa kaikkien muiden tietokoneen ohjelmien toiminnan. ( Wikipedia )

Mikäli olet sinut Kapsin tarjoamien palveluiden kanssa oletan, että tiedät vähintäänkin pääpiirteissään mistä tässä kaikessa on kyse. Nyt vajotaan ihan vähäisesti pintaa syvemmälle niihin periaatteisiin ja perusteisiin, jotka ovat olleet Kapsin Linux-käyttöjärjestelmäytimen kasauksen ja konfiguraation pohjana.

Yleistä Kapsin kerneliarkkitehtuurista

Ensimmäinen huomionarvoinen seikka Kapsin järjestelmiä tarkastellessa on se, että vaikka käytössä on pääosin Debian-distribuution mukaisia järjestelmiä, käytetty käyttöjärjestelmäydin ei ole Debian-projektin tarjoama. Kapsin ylläpito on varsin varhaisessa vaiheessa yhdistyksen historiaa alkanut ylläpitää omaa versiota Linux-kernelin käännöksestä. Tämä ei tarkoita sitä, että käytössä olisi  mitenkään suuresti normaalista Linux-ytimestä eroava versio, vaan pikemminkin lähtökohdiltaan Kapsin käyttämän laitteiston sekä tarpeiden mukaan säädetty versio kulloinkin vakaaksi todetusta ”vanilla”-versiosta.

Ymmärtääksemme nykyisen tilanteen kunnolla, täytyy tarkastelussa palata historiassa taaksepäin, aikaan vuosia ennen kuin itse liityin tähän kirjavaan joukkoon ylläpitäjiä, joiden prioriteetti on pitää Kapsin järjestelmät turvassa ja toimivina. Kapsin historia alkoi vuonna 2003.

Linux 2.6 joulukuussa 2003 lisäsi XFS- ja JFS-tiedostojärjestelmät, sisälsi uudet ALSA-ääni- ja syöttölaitteiden ajuritNPTL-säikeistyksen tuen ja tehosti käyttöä suurissa järjestelmissä.

Linux 2.6 oli Kapsin ensimmäisten toimintavuosien ajan ”uusi juttu”. Mentiin Debianinkin käyttämän 2.4-sarjan voimin hyvin pitkään. Nykyään  käytössä on vielä 3.2-sarjan kerneli, jota päivitetään eteenpäin käytännössä Kapsin käyttämien patchien sekä muun mahdollisen tarpeen mukaisesti.

Kernelin päivitykset ovat yhdistyksen toimintojen kannalta aika voimakkaasti käyttäjille näkyviä operaatioita ja aiheuttavat varsinkin shellipalveluihin ikävän käyttökatkon. Tästä syystä toimivaa ja turvallista kerneliversiota pyritään ajamaan mahdollisimman pitkään.

Kapsin käyttämät kernelipatchit

Kapsin kernelin suunnittelussa on otettu huomioon useita erityisesti yhdistyksen toimintaa koskettavia tekijöitä. Haasteina on ollut erityisesti tietoturva, suorituskyky sekä järjestelmien vakaus pitkänkin yhtäjaksoisen päälläolon jälkeen.

Käydään hieman läpi Kapsin käyttämiä patcheja sekä niiden taustoja ja osuutta kokonaisuudessa.

HA-patch

Kapsin historian alkuaikoina käytetyistä spesiaalisäädöistä tiedän vain sen verran, että käytössä oli jo tuolloin niinsanottu HA-patch. Nimi ei viittaa ”High Availabilityyn” kuten äkkiseltään voisi kuvitella, vaan patchin tekijöiden sukunimien ensimmäisiin kirjaimiin. Patchin kirjoitti Jaakko Heusala, yhdistyksen alkuvuosien puheenjohtaja ja ylläpitäjä usean vuoden ajalta. Jaakko osasi kertoa kommenteissa tämän historiasta sekä nimeämisestä, joten lainaan Jaakkoa tähän: 

”Tuo HA-pätsin nimi tulee ”huoh access limit” lyhennyksestä, koska käytin silloin nimimerkkiä huoh. Osittain se ehkä viittasi myös siihen fiilikseen, että oli etsitty toimivaa ratkaisua simppeliin ongelmaan maailmalta kuitenkaan hyvää ratkaisua löytämättä ja se pätsi oli vähän sellainen tulos ”nyt se kernelin koodi tänne, korjaan sen itse!” (Kernelin muokkaaminen oli melkeinpä niitä viimeisiä juttuja joita halusin ruveta tekeen silloin.)”

HA-patch on pohjimmiltaan hyvin yksinkertainen. Sen tarkoitus on pitää käyttäjien tiedostot piilossa toisilta käyttäjiltä chmod-määreistä riippumatta. Tämä on käyttäjille näkyvin muutos Kapsin kernelin osalta. HA-patch on myös koodillisesti erittäin yksinkertainen ja on siten tominut lähes muutoksitta aina versioista 2.4 asti.

Grsecurity

Toinen merkittävä virstanpylväs yhdistyksen kernel arkkitehtuurissa on grsec. Se on laaja patchset, jonka tarvoite on antaa lisäsuojaa erilaisia mahdollisia käyttöjärjestelmäytimen haavoittuvuuksien hyödyntämisyrityksiä vastaan. Kapsin tietoturva-arkkitehtuurissa grsecistä on pitkään käytetty sellaisia osia, jotka eivät vaadi suuria järjestelmäriippuvaisia konfiguraatioita. Esimerkiksi RBAC (Role Based Access Control) ei ole ollut toistaiseksi laajassa käytössä.

Grsecin ajatus tietoturvan kannalta on toimia yhtenä monista muuttujista, joita mahdollisen haavoittuvuuksia hyödyntävän hyökkääjän on vaikea ottaa huomioon yhdistyksen järjestelmiin suunnattuja toimia pohtiessaan. Lähtökohtaisesti grsec ei koskaan pysty täydellisesti estämään muun kernelin osa-alueen haavoittuvuuden hyödyntämistä, vaan aiheuttaa lähinnä tarpeen kohdistaa hyökkäystä juuri tätä kyseistä ympäristöä vastaan. Toisinsanoen yleisesti saatavilla olevat hyökkäyskoodit eivät välttämättä, toivottavasti, toimi sellaisenaan sopivin grsecin tarjoamin optioin varustettua järjestelmää vastaan. Käytännön kannalta grsec parhaimmillaankin ostaa ylläpidolle vain aikaa järjestelmän päivityksen valmisteluun.

Grsecin ja HA-patchin lisäksi kernelin suojauksessa on käytössä yksi vähemmän ”hieno”, mutta enemmän käytännönläheinen ajatusmalli turvallisuuteen liittyen. Pohjimmaisena on periaate, jonka mukaan kerran käynnistettyä järjestelmäydintä ei tule voida peukaloida. Grsec tarjoaa itsessään jonkin verran erilaisia kernelin muistialueen suojauksia tähän liittyen, mutta haittaohjelmien ja rootkittejen kannalta yleisin toimintamalli riitävät oikeudet hankittuaan on puuttua suoraan käytössä olevan kernelin toimintaan.

Kernelimoduulituki

Helpoin ja toimivin tapa muuttaa kernelin toimintaa järjestelmän ollessa käynnissä on ladata moduuli, joka toteuttaa hyökkääjän kannalta oleellisia toimintoja. Nämä voivat olla esimerkiksi kyseisen modulin olemassaolon ja tiettyjen hyökkääjän käyttämien palveluiden ja verkkoliikenteen piilottaminen koko muun järjestelmän näkyviltä. Tällainen palikka tunnetaan myös nimellä rootkit.

Kapsin lähestymistapa rootkiteiltä suojautumiseen on tehdä kernelistä mahdollisimman vaikeasti muutettava ajon aikana. Linux-järjestelmissä tähän on olemassa erittäin helppo ja yksinkertainen keino. Kernelistä on jätetty moduulituki kokonaan pois, jolloin kernelin muuttamiseksi vaaditaan koneen uudelleenkäynnistys. Kapsin kerneli on rakennettu juurikin näin.

Schedulointi ja BFS

Tästä aiheesta voisi ja ehkä pitäisikin kirjoittaa ihan oma blogiposti – tai kirja. Sen verran tuntuu olevan vaikeasti lähestyttävä kokonaiskonsepti kyseessä. Käydään nyt kuitenkin asia läpi popularistisellä tasolla ja yksinkertaistettuna niin ettei aiheuteta lukijoille välttämättä päänsärkyä.

Isoa shell-käyttäjämäärää palvelevan linux-koneen haasteena on väistämättä suoritettavien prosessejen suuri määrä. Kapsi ei ole toiminnassaan koskaan pyrkinyt asettamaan tiukkoja rajoja, vaan käyttäjien toimille asetetut järjestelmätason rajat pyrkivät vähentämään mahdollisten väärinkäytösten, tahattomien tai tahallisten, aiheuttamaa haittaa järjestelmän muille käyttäjille.

Yhdeksi merkittäväksi haasteeksi linuxin ja suuren prosessimäärän kanssa nousee interaktiiviset prosessit, jotka käyttävät yleensä hyvin pienen määrän suoritinaikaa kerrallaan, mutta todella usein. Esimerkkejä tällaisista interaktiivisista prosesseista ovat vaikkapa verkkoliikennettä vastaanottavat prosessit, jotka heräävät käsittelemään saapuneita paketteja tai SSH tai irssi, jotka ottavat käyttäjän syötteitä vastaan ja pitävät yllä aktiivisia yhteyksiä internettiin.

Suuri määrä interaktiivisia prosesseja on luonteeltaan haastava kuorma kernelille koska kernelin prosessischeduleri joutuu pitämään kirjaa ja tekemään päätökset siitä, mikä prosessi milloinkin saa suoritinaikaa ja mitkä prosessit joutuvat odottamaan pääsyä suoritukseen. Tämä kernelin sisäinen prosessi vie myös itsessään suoritinaikaa ja koneen resursseja riippuen kernelin sisäisen schedulerin toimintaperiaatteesta ja tehokkuudesta päätöksenteossa sekä seurannassa.

Linux-kernelin oletusarvoinen prosessischeduleri tunnetaan nimeltä CFS (Completely Fair Scheduler). Se pyrkii tarjoamaan tasa-arvoa prosessien suoritinajan suhteen ja päästää vähäisesti suoritinaikaa käyttävät prosessit suoritettavaksi useammin kuin pitkään suoritettavat prosessit. Tämä periaate on sinänsä hyvä ja toimiva, mutta Kapsin kaltaiesssa ympäristössä CFS:n toteutus aiheesta jätti huomattavasti toivomisen varaa.

Kapsin pääasiallinen shellipalvelin, Lakka, kärsi huomattavasta hitaudesta aina iltapäivisin ruuhka-aikaan talvella 2010. Tuolloin käytössä oli vielä HP DL380 G5 -sarjan palvelinkone, jossa oli kaksi fyysistä neljän ytimen suoritinta ja 16 Gt muistia.

lakka-kapsi-fi-vmstat-year-png

VMstat-kuvaaja kertoo suoritusta odottavien prosessejen määrän arvona ”running” ja levyoperaatioita odottavien prosessejen määrän arvona ”I/O sleep”. Running-arvon tulisi olla kaikissa tilanteissa pienempi kuin käytettävien prosessoriytimien määrä parhaan suorituskyvyn takaamiseksi. Kuvaajan vasen laita on ajalta ennen siirtymistä BFS-scheduleriin.

Ylläpidolla oli kaksi vaihtoehtoa hitailun ratkaisemiseksi. Joko hankkia uusi, järeämpi palvelinkone tai yrittää löytää resurssiongelmaan jokin muu ratkaisu. Käyttäjien toimien rajoittaminen ei kuulunut edes tuolloin harkittuihin vaihtoehtoihin.

Havaittiin eräänlainen ristiriita prosessejen suoritusjonon ja koneen CPU:n käyttöasteen välillä.

lakka-kapsi-fi-cpu-year-png

Kuvassa Lakka-palvelimen CPU-käyttö. CFS:n ollessa käytössä (kuvan vasen laita) CPU-resursseista oli käytössä yhteensä vain noin 25 %. Kuvaajan ”hassut” arvot oikealla johtuvat kyseisten kerneliversioiden epävakaudesta sekä lukuisista käyttökatoista vuoden 2010 aikana.

Suoritusjonon ja CPU-käytön välinen ristiriitatilanne antoi viitteitä siitä, että ehkä kernelin toiminnassa voisi olla parantamisen varaa prosessien scheduloinnin suhteen. Tutkittiin vaihtoehtoja ja päädyttiin kokeilemaan BFS-patchia Kapsin kernelissä. Muutos oli aika radikaali ja hitailuongelmat kerralla poissa.

Tässä vielä muutama kuva, jotka antavat käsitystä koneen yhtäaikaisten käyttäjien määrästä.

lakka-kapsi-fi-interrupts-year-png

Context switches -arvo kertoo sen, kuinka usein suoritettava prosessi vaihtuu sekunnin aikana. Oikealla olevat piikit ovat jälleen kerneliongelmien aiheuttamia vääristymiä kuvaajissa.

Tämä kuvaaja on lähinnä referenssiksi siitä, että CFS:sta BFS:iin vaihtaessa koneen käyttöaste ei juuri muuttunut. Vuosien 2010 ja 2011 aikana yhdistys kuitenkin sai paljon uusia jäseniä ja toisaalta shellikoneella alettiin myös ajamaan entistä raskaampia palvelinprosesseja kuiten Minecraft-palvelimia.

lakka-kapsi-fi-ps_sshd-year-png

SSHd-prosessien määrä Lakka-palvelimella CFS:sta BFS:iin siirryttäessä ja sen jälkeen.

SSHd-prosessien määrä kertoo yhtäaikaisesti palvelimella kirjautuneena olevat sessiot. Vaaleamman vihreä alue näyttää vuorokausivaihtelun kirjautumismäärissä. Käyttäjämäärien nousu vuoden 2011 alkuun mennessä on kohtuu huomattava.

Kokonaisuudessaan siirtyminen Kapsin kernelissä CFS-schedulerista BFS-scheduleriin ei ollut helppo tie. Epävakaus oli vuoden 2010 aikana todellinen riesa ja vasta Linux-kernelin VM (Virtual Memory) -kokonaisuuden suurempi korjaus toi lopulta helpotuksen vakausongelmiin. Suorituskyky nousi kuitenkin vaihdoksen myötä aivan uudelle tasolle, kun prosessien schedulointi ei enää ollut pullonkaula järjestelmän toiminnassa.

 

Teknisempää settiä voi seurata tai olla seuraamatta riippuen blogaajien mielenkiinnosta, käytettävissä olevasta ajasta sekä kuun asennosta. Kuulostellaan myös lukijoiden mielenkiintoa aiheeseen. 😉

Palvelinten lahjoituspäätös

Olli Vainio / 9. heinäkuuta 2013

Kapsin hallitus eilisessä hallituksen kokouksessaan on päättänyt lahjoittaa palvelimet Electronic Frontier Finland ry:lle ja Suomen luonnonsuojeluliiton Uudenmaan piiri ry:lle. Nämä kaksi hakijaa pystyivät perustelemaan Kapsin hallitukselle parhaiten koneelle järkevän käyttötarkoituksen.

Hakemuksia vastaanotettiin yhteensä seitsemän kappaletta.

Kapsi tulee jatkossakin uudistamaan palvelinkalustoaan ja tulevaisuudessa tulemme myös tämän blogin kautta ilmoittamaan lahjoitettavista palvelimista.

Lahjoitetaan kaksi palvelinta

Olli Vainio / 23. kesäkuuta 2013

Kapsi on taas uusimassa rautaa ja käyttämättömäksi jää pari vanhaa HP:n palvelinta. Nämä palvelimet lahjoitetaan yhdistyksen kokouksen päätöksen mukaisesti voittoa tavoittelemattomille yhdistyksille. Hallitus valitsee koneiden saajat.

Palvelin 1 ”Puska1”:

  • HP DL380 G5
  • 2x Intel Quad Xeon 2,33 GHz
  • 24GB keskusmuistia
  • 2x 146GB 2.5″ SAS-levyä
  • Hankittu syksyllä 2007

Palvelin 2 ”Karviainen”:

  • HP DL380 G5
  • 2x Intel Quad Core Xeon 2,50 GHz
  • 20GB keskusmuistia
  • 2x 146GB 2.5″ SAS-levyä
  • Hankittu maaliskuussa 2008

Molemmat koneet lahjoitetaan ilman minkäänlaista takuuta tai palautusoikeutta. Lähtökohtaisesti kuitenkin koneet ovat tuotannossa olleita koneita ja kaikki rauta on toimivaa.

Koneiden vastaanottaja voi tulla hakemaan koneen Helsingistä tai se voidaan erikseen sovittavalla ratkaisulla kuljettaa muualle vastaanottajan vastatessa kuluista.

Mikäli yhdistyksenne haluaa hakea konetta lahjoitettavaksi juuri teidän yhdistykselle, niin sen hakeminen tapahtuu sähköpostitse Kapsin hallitukselle.

Hakemuksesta on löydyttävä seuraavat asiat:

  • Yhdistyksen virallinen nimi
  • Lyhyt kuvaus yhdistyksen toiminnan luonteesta
  • Lyhyt kuvaus käytöstä johon palvelin tulisi
  • Kuvaus siitä, että yhdistyksellä on riittävät valmiudet käyttää lahjoitettua palvelinta (ts. soveltuva tila ja kykyä maksaa sähköt jne.)

Muita huomionarvoisia seikkoja:

  • Aiempina kertoina moni on hakenut palvelinta www-palvelimeksi tms. yleiseen käyttöön johon esimerkiksi Kapsin yhteisöjäsenyys on taysin riittävä ja yleisesti soveltuvakin. Kapsin yhteisöjäsenyys maksaa myöskin vähemmän kuin kummankaan koneen sähköt vuodessa.
  • Eniten painotetaan sitä, että mihin käyttöön palvelin tulisi.
  • Ensisijaisesti ei lahjoiteta niille yhdistyksille joille on jo lahjoitettu palvelin aiemminkin.
  • Hakemuksen ei kannata olla liian pitkä, TL;DR-fiiliksen aiheuttamista kannattaa välttää.

Hakemukset tulee olla perillä viimeistään perjantaina 5.7.2013 klo 17.00. Puuttellisia tai määräajan jälkeen tulleita hakemuksia ei huomioida.

Toimitilan ostamisesta

Olli Vainio / 24. helmikuuta 2013

Hiljattain lähetetyssä vuosikokouskutsussa puhutaan 7. kohdassa toimitilan ostamisen periaatepäätöksestä. Ajattelin tässä blogissa hieman selventää mistä on kyse.

LxHPrmKkT2rfm7nf2SRc3hybVRlxkVRQSwoVDW6qOls

2009 kun ensimmäisen kerran havaittiin, että yhdistys selkeästi tarvitsee toimitilat pohdittiin jo mikä olisi sopiva hankintamuoto ja päätettiin asia viedä vielä yhdistyksen kokouksen päätettäväksi. Tuolloin päädyttiin fiksuun ratkaisuun jossa todettiin, että hallitus voi vuokrata toimitilat, mutta ostamisesta vaaditaan yhdistyksen kokouksen päätös. Näin jälkikäteen tarkastellen yhdistyksen talouden kehitystä oli tämä huomattavan järkevä ratkaisu.

Nyt, 4 vuotta myöhemmin yhdistyksen asema toimitilan ostamisen kannalta on merkittävästi edullisempi. Yhdistyksen budjetti on yli tuplaantunut ja pankkilainojen korot ovat ennätysalhaalla. Lisäksi vuosi 2013 on monella tapaa välivuosi isoissa laitteistohankinnoissa joten budjetissa on hyvin tilaa toimitilan hankintaan.

Hallitus katsoo, että nyt on oikea aika tuoda tämä periaatekysymys toimitilan ostamisesta kokouksen tarkasteltavaksi. Käytännössä mikäli kokous antaa myönteisen periaatepäätöksen, pyritään toimitilan ostaminen toteuttamaan suhteellisen nopealla aikataululla ja tämän eteen on jo tehty valmistelevia toimia.

Karkeasti tarkastellen toimitilan ostamista varten otettaisiin 5 vuoden pankkilaina 70% osuudelle toimitilan hankintahinnasta ja loput maksettaisiin heti käteisellä. Lainan ottaminen nykyisillä koroilla ja vain 5 vuoden maksuajalla aiheuttaa hyvin pienet korkomenot, mutta tarjoaa huomattavan joustavuuden budjettiin verrattuna tilanteeseen jossa koko toimitila maksettaisiin käteisellä. Mikäli nykyinen budjettikehitys jatkuu on tosin hyvinkin mahdollista, että laina maksetaan nopeammalla aikataululla pois.

Olemme jo katsoneet toimitilaa minkä hankinta olisi järkevää. Jos kyseiseen tilaan päädymme niin kokonaishankintakustannus suhteessa yhdistyksen muihin menoihin budjetissa tulee olemaan hyvin maltillinen.

Toimitilan omistamisessa vuokraamiseen nähden on muutamia selkeitä hyötyjä joiden vuoksi tätä on nyt ajateltu. Omistetussa toimitilassa voidaan koko tila remontoida siihen käyttöön optimoiduksi ja pitkällä tähtäimellä kulut laskevat. Havaittava etu on myös yhdistyksen rahoitusasema on joustavampi kunhan toimitila on aikanaan velaton. Nykyisellään yhdistyksellä on lähinnä kovaa kyytiä arvoaan menettävää ATK-kalustoa taseessa, mutta velattoman toimtitilan myötä taseessa olisi myös konkreettista omaisuutta joka tarvittaessa käy uudemmankin kerran lainavakuutena – täten tarjoten aiemmin mainittua joustavuutta.

Tulen vielä myöhemmin blogaamaan lisää toimitilan hankinnasta prosessin edetessä mikäli yhdistyksen kokous hyväksyy periaatepäätöksen.