Quantcast
Channel: Uputstva | Linux za sve
Viewing all 66 articles
Browse latest View live

Pokrenite Android aplikacije na Linuxu

$
0
0

Od sada je moguće pokretati Android aplikacije unutar Chrome web preglednika na svim platformama.

 

Potaknut eksplozivnim razvojem Androida te njegovim širenjem na brojne mobilne platforme, Google je pojačao suradnju s vlastitim starijim ali znatno manje prihvaćenim projektom – ChromeOS-om. Koristeći popularnost Androida i brojnost aplikacija, ChromeOS je prihvatio neke od njih nastojeći oživjeti vlastiti posustali razvoj. Korisnici su svakako na dobitku jer im se od sada pruža prilika da na vlastitoj platformi (Chromebook i Chromebox) koriste Androidove aplikacije, čime se može poboljšati praktičnost, produktivnost i jednostavnost korištenja. Bilo je samo pitanje vremena kada će se i Linux korisnicima pružiti ova prilika.

Najveći problem predstavlja specifična priroda samog Androida: radi se o operativnom sustavu prilagođenom isključivo mobilnim uređajima, zbog čega se smatra gotovo neprimjenjivim za korištenje u klasičnom desktop okruženju. Stolna računala, naime, nemaju podršku za SIM kartice, GPS, 2G i 3G mreže, ekrane osjetljive na dodir, kamere i sl., što su zapravo nužni preduvjeti rada na Androidu. Unatoč tomu što su .apk aplikacije pisane u Javi, upravo zbog specifičnog okruženja i zavisnosti ne mogu se pokretati na različitim platformama.

Svim navedenim nevoljama vješto je doskočio autor Vlad Filippov koristeći upravo Googleov “App Runtime for Chrome” projekt (ARC), koji ChromeOS-u omogućava pokretanje nativnih aplikacija unutar vlastitog web preglednika. Novonastali projekt ARChon (chromeos-apk skripta i ARChon Runtime hack) omogućava pokretanje Android aplikacije unutar Chrome preglednika na ChromeOS-u, Linuxu, OSX-u i Windowsu. Njegova najveća prednost nije samo primjenjivost na različitim platformama, već i to što podržava pokretanje i korištenje više aplikacija istovremeno.

Kao preduvjet je za početak nužno instalirati i koristiti Google Chrome, budući da se da aplikacije pokreću unutar njega. Preporuča se verzija 37 ili novija, čak i dovoljno stabilna razvojna izdanja (beta ili developer).

 

Upute za instalaciju:

1. Preuzeti ARChon arhivu te ju otpakirati u /home folder.

2. Instalirati Node Packaged Modules (npm):

sudo add-apt-repository ppa:chris-lea/node.js

sudo apt-get update

sudo apt-get install nodejs npm nodejs-legacy

3. Za Ubuntu-x64 sustave važan je i library:

sudo apt-get install lib32stdc++6

4. Instalacija skripte:

sudo npm install -g chromeos-apk

5. Iz pouzdanog izvora potrebno je preuzeti .apk datoteku te ju konvertirati za korištenje u Chromeu:

chromeos-apk [lokacija .apk datoteke] – archon

6. Pokrenemo Chrome, u “Extensions” omogućimo opciju “Developer mode”, te kliknemo “Load unpacked extension” kako bismo učitali aplikaciju iz /home foldera. Pokrećemo je klikom na “Launch”.

 

Kratku demonstraciju pogledajte u videu samog autora:

 

//www.youtube.com/watch?v=O-yFLqp_sXs

 

 

Na službenim stranicama projekta autor je postavio detaljne upute, kao i popis testiranih aplikacija. Podržane Android aplikacije također možete preuzeti iz službene Google Chrome web trgovine. Ako ne pronalazite svoje omiljene aplikacije, a želite da budu podržane, Google vas poziva da popunite  službeni zahtjev.

 

Flipboard Izvor: https://camo.githubusercontent.com/032eb8d576955a12f98ebd1bd52a32938497e3db/687474703a2f2f763134642e636f6d2f672f6d756c7469706c652e706e67

Flipboard
Izvor: https://camo.githubusercontent.com/032eb8d576955a12f98ebd1bd52a32938497e3db/687474703a2f2f763134642e636f6d2f672f6d756c7469706c652e706e67

 

Soundcloud Izvor: https://camo.githubusercontent.com/792de42fe9f9c28f233a91319b7268907508ecf2/687474703a2f2f763134642e636f6d2f672f6368726f6d6561706b732f332e706e67

Soundcloud
Izvor: https://camo.githubusercontent.com/792de42fe9f9c28f233a91319b7268907508ecf2/687474703a2f2f763134642e636f6d2f672f6368726f6d6561706b732f332e706e67

 

 

Ako se pak želite okušati u razvoju aplikacija ili jednostavno želite isprobati Android na vlastitom računalu, preporučamo neke od emulatora za Linux kao što su Genymotion, Andro VM, Andy OS, Android SDK, Jar of Beans i drugi. Međutim, tražite li pravo Android iskustvo, radije isprobajte Android-x86. Radi se o neslužbenom portu za Intel i AMD x86 arhitekturu koji pogoni Linux kernel. Još je u razvojnoj fazi i postupno dobiva podršku za hardver svojstven stolnim računalima.

Unatoč maloj vjerojatnosti da zaživi kao punokrvna desktop platforma, Android plijeni pažnju brzim razvojem i velikim brojem aplikacija. Ovo je način da barem najpopularnije od njih koristimo i na Linuxu.

 

 

Izvori: GitHub, themukt.com, omgubuntu.co.uk


Ubuntu 14.10 – Utopic Unicorn. Jel’ se što popravio taj Ubuntu?

$
0
0

Ubuntu sam posljednji put koristio prije oko godinu i pol kada sam recenzirao tada aktualni Raring Ringtail 13.04. Nije mi se svidio. Previše je toga bilo nedorađeno. Unity je bio prespor, Centar softvera također, Dash je bio tek u povojima i upitne iskoristivosti, a tada aktualno pretraživanje Amazonovih rezultata je ostavljalo jako loš dojam na dugogodišnjeg korisnika slobodnog softvera. Sve u svemu, tadašnji Ubuntu je ostavljao dojam nedovršenog proizvoda koji ima potencijal narasti u nešto jako zanimljivo, ali isto tako i potencijal otići u totalnu katastrofu igranjem na skliskom terenu modernih trendova.

Godinu i pol kasnije sam se odlučio dati Ubuntuu još jednu šansu. Računao sam da bi to moglo biti dovoljno vremena da se popeglaju one male iritantne stvari koje su me ranije smetale, a najviše sam očekivao da će se sam Unity značajno popraviti i prije svega ubrzati.

Pa, da li se to desilo? Kako mi se svidio ovaj najnoviji Ubuntu? Pročitajte u sljedećim redovima.

 

LIVE USB

Unetbootin bez problema ispravno smješta Ubuntuov iso na moj USB stick. Ovaj puta nije trebalo odraditi nikakve “vratolomije” s dd-om. Podizanje LiveUSB-a traje oko dvije minute, a desktop je prilično živahan i upotrebljiv. Za na brzinu obaviti kraći posao, sasvim dovoljno.
No, nisam se dugo zadržavao na Live verziji. Ionako ju koristim samo da bih provjerio kako se moj hardver slaže s najnovijom varijantom testirane distre. Sve radi kako treba.

Ubuntu 14.10 Live

Ubuntu 14.10 Live

 

Vrijeme je za instalaciju. Priređena particija na mom disku spremno čeka.

 

INSTALACIJA

Već dugo vremena Ubuntu ima jedan od najboljih, ako ne i najbolji instaler među distribucijama Linuxa. (Ovdje će se mnogi pobuniti, ali stojim pri ovom.) Lijepog i modernog izgleda, prijateljskog sučelja, bez zbunjujućih opcija, generacijama samo usavršavan u detaljima, čak i početniku pruža ugodno iskustvo instalacije Linuxa. Potrebno je samo čitati ono što piše na ekranu i nema šanse da ćete nešto zabrljati!

Instalacija nadogradnji i neslobodnog softvera Ubuntu je lako instalirati uz drugi operativni sustav Klizačem odredite prostor za svoj novi Ubuntu
Instalacija s USB sticka traje petnaestak minuta, plus desetak minuta koliko je mom sporom internetu bilo potrebno da preuzme dostupne nadogradnje (koje se preuzimaju tijekom instalacije – odličan potez Cannonicala!) i da se instalira dodatni vlasnički softver. Sve u svemu, za dvadeset i pet minuta (a i brže za one s “normalnim” internetom) imate gotov i potpuno upotrebljiv desktop.

Ubuntu 14.10

Ubuntu 14.10

 

KORIŠTENJE

Počnimo najprije s time što se dobije nakon instalacije Ubuntua. Od programa imate gotovo sve što vam treba za normalan rad s računalom. LibreOffice, Gnomeov preglednik slika, Totem preglednik videodatoteka, Rhythmbox za slušanje muzike, Firefox se brine o surfanju internetom, a Thunderbird za pregledavanje mailova. Ako ste prilikom instalacije stavili kvačicu za instalaciju vlasničkog softvera, dobili ste i multimedijske kodeke, javu, Flash i Microsoftove fontove. Znači, spremni ste za gotovo sve.

Ubuntu je gotovo odmah nakon instalacije spreman za rad. Potrebno je tek instalirati tek par progama.

Ubuntu je gotovo odmah nakon instalacije spreman za rad. Preporučam ipak instalaciju još nekoliko programa.

 

Naravno, iskusniji korisnici će u postojeću kolekciju programa dodati i one na koje su navikli. Izbor je ogroman. Teško da postoji distra koja ima toliko dostupnih programa za instalaciju. Službeni repozitoriji su ogromni, a dostupna je i hrpa neslužbenih ppa-ova te deb paketa. Sve što želite gotovo sigurno ćete pronaći u verziji za Ubuntu.

Ubuntuov Centar softvera

Ubuntuov Centar softvera

 

Za instalaciju programa brine se Ubuntuov Centar softvera. Ranije nezgrapan i strašno spor program evoluirao je u nešto sasvim suprotno. Više nema beskonačnog čekanja da se Centar softvera otvori i pronađe ono što želite. Sve se događa jako brzo i iskustvo instaliranja programa na ovaj način je jako ugodno. Jednostavno je i pregledavanje programa po kategorijama, a ispod odabranih programa se nalaze i recenzije korisnika kako bi vam se još više olakšao izbor oko instalacije. Korisna stvar su i sugestije. Naime, pomoću njih netko neiskusan u Linux svijetu lako može pronaći program za obavljanje željenog posla. Naveo bih još i da će vam često sam Dash dati sugestiju nekog od programa za instaliranje pa i tako možete doći do željenog programa. Sve u svemu, Centar softvera je postao sasvim upotrebljiv za svakodnevno korištenje. Čak štoviše!

Instalacija Gimpa preko Centra softvera

Instalacija Gimpa preko Centra softvera

 

Uspješno instaliran Virtualbox

Uspješno instaliran Virtualbox

 

Za one naprednije tu je uvijek Synaptic kojeg je ipak prije toga potrebno instalirati.

Ja sam dodao svoju standardnu kolekciju programa: VLC, Gimp, Clementine, Uget, Redshift, System load indikator i od nedavno mi nezaobilazni Viber (smijte se koliko hoćete). Većina će vas još instalirati Chrome i eventualno Skype.

I to je to. Sve što vam treba za rad na računalu.
Pisanje dokumenata, slušanje muzike, gledanje filmova, surfanje internetom, mailovi, online komunikacija, uređivanje slika. Za prosječnog korisnika dovoljno. Naravno, već duže vremena vam istu stvar nudi i većina poznatijih, a i onih manje poznatih distri. Ništa novo, ali svejedno treba reći da je na Ubuntuu sve to jako lako dostupno odmah nakon instalacije, ili uz minimalnu naknadne instalaciju par željenih programa.

One koji žele još malo prilagoditi svoj sustav upućujem na naš forum i temu o tweakanju Ubuntua 14.04. Vjerojatno većina stvari tamo napisanih vrijedi i za 14.10.

 

UNITY

Unity zaslužuje poseban osvrt. Specifičan Canonicalov proizvod već se nekoliko godina rafinira i daje sasvim osebujno iskustvo korištenja računala. Smišljen kao kombinacija modernih i klasičnih elemenata korisničkog sučelja, u početku nije sasvim oduševljavao svoje korisnike. Toliko je bio drugačiji i vjerojatno loš da je u svojim početcima udaljio hrpu svojih vjernih korisnika. Spor i neobičan, bez elemenata na koje smo svi navikli u radu s računalom tada nikako nije oduševljavao.

Da li se tu što promijenilo? Moram priznati da je. I to značajno. Na bolje.
Cijelo sučelje je znatno brže i ne opterećuje sustav kao ranije. Dash je jako responzivan i sada je pravi užitak stisnuti tipku Super, nakucati prvih par slova željene aplikacije i stisnuti Enter. Uvijek se pokreće željeni program. Nije potrebno mišem pretraživati po kategorijama i klikati za pokretanje.

Unity zaista minimalno zauzima resurse sustava

Unity zaista minimalno zauzima resurse sustava

 

Pokretanje programa tipkovnicom je savršeno riješeno!

Pokretanje programa tipkovnicom je savršeno riješeno!

 

Ljubitelji tipkovničkih kratica će posebno cijeniti Dash i Unity. Posebna pažnja se posvetila takvom načinu rada. Čak toliko da vas odmah nakon prvog pokretanja sustava, te na Live načinu rada dočeka velik popis tipkovničkih kratica. Sve je lako dostupno i podiže se za trenutak. Definitivno je užitak koristiti!

Popis tipkovničkih kratica možete dobiti pritiskom na tipku Super u trajanju 2-3 sekunde

Popis tipkovničkih kratica možete dobiti pritiskom na tipku Super u trajanju 2-3 sekunde

 

Naravno, to ne znači da se ne možete koristiti i mišem. I mišem se sasvim fino navigira Unityem i Dashom. Jedino ćete do popisa instaliranih aplikacija morati kliknuti koji put više nego ste navikli.

Mišem ide malo sporije

Mišem ide malo sporije

 

Kontekstni izbornik mi jako odgovara jer štedi mjesto na ekranu mog laptopa, a tipke za upravljanje prozorima s lijeve strane mi također odgovaraju jer se na Unityu ionako sve nalazi lijevo i strelica miša se najčešće i nalazi s te strane.

Na Unityu se sve nalazi s lijeve strane. Začudno, to ne smeta.

Na Unityu se sve nalazi s lijeve strane. Začudno, to ne smeta.

 

Sve u svemu, sve se nalazi na svom mjestu, a ako vam nešto i nije po volji, Unity se sada može prilagoditi vašim željama. Doduše, ne onoliko koliko se to mogu ostala sučelja poput KDE-a, ali daleko više nego u prvim danima ovog sučelja gdje gotovo ništa niste moglo mijenjati.

Ikone na docku s lijeve strane se jednostavno premještaju, dodaju i uklanjaju, a cijeli dock se već nekoliko generacija Ubuntua može jednostavno povećavati i smanjivati. Iskusni korisnici će primijetiti da na njemu nedostaje “desktop switcher”, ali se on lako dodaje (U postavkama Appearance odaberete Behavior i u njemu postavite kvačicu na Workspaces)

 

IZGLED

Malo ću se osvrnuti na izgled. Često kritiziran na svom početku zbog imitacije Applea, Canonical je ipak uspio izgraditi svoj osobiti izgled. Ljubičasta boja je postala zaštitni znak ove distre i uvijek je dominantna na zadanoj pozadini radne površine. No, niste osuđeni na tu nijansu. Bez brige, ovaj Ubuntu dolazi sa zaista jako lijepim i ukusnim pozadinama pa ćete najvjerojatnije brzo pronaći omiljenu. Promjenom pozadine mijenja se i boja docka. Ništa novo, jer Unity to radi od početka, ali svejedno zgodan detalj.

Malkice preljubičasto za moj ukus ;)

Malkice preljubičasto za moj ukus ;)

 

E ovo mi baš paše!

E ovo mi baš paše!

 

Službene teme su jako dobro izbalansirane i ugodne za oko i korištenje.

Ambiance tema

Ambiance

 

Radiance

Radiance

 

Fontovi su odavno jaka strana Ubuntua pa se ni u ovoj verziji ne morate bojati grbavih slova koja znamo zateći na nekim drugim distrama. ;)

Ikone su također jako lijepo odabrane, a posebno “flat” ikone koje imate na pojedinim izbornicima sustava i panelu.

Jako lijep izbornik za gašenje računala

Jako lijep izbornik za gašenje računala

 

Sveukupni dojam je jako profesionalan. Vidljivo je da se detaljima posvećivalo dosta pažnje i niti jednom nisam naišao na neki detalj koji bode u oko kao što to zna biti na nekim manjim distrama. Sve u svemu, ne morate se bojati svoj laptop otvoriti među normalnim ljudima. Njihove reakcije će najvjerojatnije biti jako pozitivne.

 

PROBLEMI

Očekivao sam daleko više problema s obzirom na to da se ne radi o LTS verziji Ubuntua i da je 14.10 tek nedavno izdan. A naišao sam na samo jedan veći i par sitnijih.

Naime, ne rade web appsi. Šteta, jer su se web appsi do sada uvijek isticali kao posebnost Untiya. Iako se u osnovi radilo samo o prečici na web adresu, pomoću njih ste ipak mogli brže pristupiti svom mailu, Youtubeu ili bilo kojoj od hrpe stranica koje su to podržavale. Nadam se da će se to brzo riješiti sljedećim nadogradnjama sustava.

Osobno me smetala i nemogućnost “srednjeg klika” tapkanjem dva prsta po touchpadu. Zadana akcija tapkanjem s dva prsta je desni klik miša. Po meni blesav izbor jer već imam desnu tipku ugrađenu u touchpad. Malo čačkanja po xofg.confu i dconf-editoru i to se riješilo.

Još bi se tu osvrnuo na pretraživanje Amazona i ostalih web servisa putem Dasha. Svi kojima se to ne dopada (a ja sam jedan od njih), tu funkciju mogu isključiti u doslovno dvije i pol sekunde. (System Settings>Security & Privacy>Search>OFF) Tako da ovo ne bi navodio kao nedostatak Ubuntua.

I to je to. Sve drugo je radilo izvrsno! Ovo je prva verzija Ubuntua nakon dugo vremena koja mi nije radila probleme.

 

ZAKLJUČAK

Svi koji su čitali do ovdje, shvatili su da mi se ova verzija Ubuntua jako svidjela. Nakon nekoliko generacija sazrijevanja i rafiniranja, Unity je konačno postao dobro i upotrebljivo radno sučelje. Dječje bolesti su izliječene i veseli me daljnji razvoj ovog sučelja. Očito da su izbjegli krivu rutu forsiranja svih modernih tehnologija, a koja je skupo koštala jedan drugi operativni sustav koji se zaletio na tu stranu. Izvrsna kombinacija modernih tehnologija i starih provjerenih rješenja čine pravi užitak koristiti Unity na računalu. Dok kod drugih sučelja imate dojam evolucije klasičnog, tradicionalnog desktopa, Unity ponekad daje natruhe rješenja koje koristimo na svojim pametnim telefonima i tabletima. I to ne na loš način. Dosadni stari PC je malo živnuo. To je dobrodošla stvar u ovo vrijeme kada PC postaje sve manje važan, a fokus se prebacuje na pametne telefone i tablete.

Moram priznati, Canonical je napravio izvrstan proizvod. Definitivno preporučujem svima koji žele isprobati nešto novo! Možda nećete svi biti toliko oduševljeni kao ja, ali vjerujem da će se naći poprilično korisnika koji će se nakon godinu-dvije izgnanstva polako početi vraćati svojoj prvoj distri.

Završio bi s tim da mi je u ovih nekoliko dana druženje s Ubuntuom bilo jako zabavno i da ga namjeravam ostaviti kao glavni operativni sustav na svom računalu. Očekivao sam spor i bloatan sustav, a dobio sam brz i moderan. Tko bi rekao? Svaka čast Canonical! Dobar posao!

Nadogradnja: Mint 17.1 Cinnamon

$
0
0

Clement Lefebvre je na službenom blogu ponosno objavio da je novi Mint 17.1 “Rebecca” u Cinnamon izdanju spreman za preuzimanje.

 

Clement Lefebvre je na službenom blogu ponosno objavio da je novi Mint 17.1 “Rebecca” u Cinnamon izdanju spreman za preuzimanje. Ranije smo pisali o promjeni Mintove razvojne politike i potpunom prebacivanju razvojne osnove na stabilnu bazu (Ubuntu LTS i Debian stable). Iako u razvojnom smislu novi Mint 17.1 Cinnamon nema većih pomaka, donosi nam pregršt novosti. Podsjetimo još jednom: ako već imate instaliran Mint 17, dovoljno je samo pokrenuti nadogradnju sustava.  Svi ostali trebaju preuzeti ISO sliku sa službenih stranica.

Već na početku posta Clem upozorava na potencijalnu opasnost koju donosi nadogradnja distre. I u ovom slučaju, kako ističe, vrijedi pravilo “Ako radi, ne diraj!”. Napominje i da nadogradnja ima najviše smisla ako je neki bug koji vas je dugo pratio ispravljen u novoj verziji. Nadograđivati samo da bi se imao najnoviji softver, posebno ako smo već zadovoljni Mintom 17 nema – po njegovu mišljenju – mnogo smisla. Eh, Clem, ne znaš ti kako je nama vjernim fanovima…  Šalu na stranu, iako se možemo pouzdati u kvalitetan posao koji obavlja Mintov tim, rizik uvijek postoji. Isto tako, Clem napominje da je moguće “preskočiti” ovo izdanje te, kad za to dođe vrijeme, bez straha nadograditi postojeći Mint 17 na novi 17.2.
Nakon što smo detaljno pročitali službenu objavu, popis promjena, kao i popis poznatih bugova, te smo ustrajni u odluci o nadogradnji, vrijeme je da krenemo!

 

Mint 17

Mint 17

 

 

Na početku napominjem da se radi o redovnoj nadogradnji sustava putem službenih repozitorija, što znači da nije potrebno uključivati backports ni repozitorij označen kao nestabilan (Romeo). Imate li problema s vlasničkim upravljačkim programima (driverima), poput onih za Nvidiu i ATI/AMD grafičke kartice, preporučujem njihovo pinnanje u Synapticu na trenutno instaliranu stabilnu verziju.

Potrebno je pokrenuti Update Manager, instalirati paket mintupdate, te pričekati da Manager prihvati promjene. Clem napominje da je potrebno instalirati sve sistemske nadogradnje označene brojem 1 (certified updates), dok one od 2 do 5 (recommended, safe, unsafe, dangerous) nisu ključne za nadogradnju. Potom je nužno odabrati opciju Edit->Upgrade to Linux Mint 17.1 Rebecca, čime se pokreće novi prozor koji nas vodi kroz nadogradnju. Update Manager dalje više nije potreban.
Prije prelaska na sljedeći korak Mint nas tjera da kliknemo na hotlink da bismo se upoznali s promjenama koje donosi nova verzija. Upute su krajnje jednostavne i jasne te osiguravaju da korisnik u svakom trenutku zna u kojoj se fazi instalacije nalazi i koji potencijalni rizik preuzima.

 

Mint 17 - nadogradnja

Mint 17 – nadogradnja

 

Mint 17 - nadogradnja

Mint 17 – nadogradnja

 

Mint 17 - nadogradnja

Mint 17 – nadogradnja

 

Mint 17 - nadogradnja

Mint 17 – nadogradnja

 

Mint 17 - nadogradnja

Mint 17 – nadogradnja

 

 

Brzina instalacije ovisi o vašoj internetskoj vezi, a proces može potrajati tridesetak minuta, pa savjetujem da si napravite kavu ili pogledate što ima u hladnjaku… Na kraju je potrebno ponovno pokretanje da bi se prihvatile sve promjene.
Ovdje je važno naglasiti da se nadogradnja kernela ne obavlja u sklopu nadogradnje čitavog sustava, već je dostupna naknadno. Kernel je ključni dio sustava, zbog čega i Clem savjetuje da ovom pitanju posvetimo više pažnje. Trenutno aktivnu verziju možemo provjeriti naredbom uname -r ili View->Linux kernel u sklopu Update Managera, s čime smo se već ranije upoznali. Naiđete li na probleme nakon nadogradnje kernela, povratak na stariju verziju možete obaviti na najlakši mogući način.

 

Mint 17.1 - Linux kernels

Mint 17.1 – “Linux kernels” dijalog

 

 

Iako se na prvi pogled ništa značajno nije promijenilo, uočljiv je novi font. Mint 17.1 koristi Noto font kao zadani, što predstavlja odmak od Ubuntuovih Sans i Monospace fontova.

 

Mint 17.1

Mint 17.1

 

 

Opcija Background Settings temeljito je redizajnirana i predstavlja jedno od većih iznenađenja. Uz potpuno novi artwork koji stvaraju vjerni fanovi, Mint 17.1 donosi najljepše pozadinske slike iz nekoliko prethodnih izdanja: od verzije 13 “Maya” do verzije 17 “Qiana”, kao i “retro” izbor prepoznatljivih minty green slika. Napominjem da navedene kolekcije slika zbog svoje veličine ne dolaze u sklopu nadogradnje, ali ih možete naknadno instalirati pomoću Synaptica ako označite pakete koji počinju imenom “mint-backgrounds”. Prava poslastica za sve nostalgičare!
Uvedena je i nova opcija Slideshow koja može automatski mijenjati pozadinu radne površine u zadanom vremenskom intervalu.

 

Mint 17.1 - Background Settings

Mint 17.1 – Background Settings

 

 

Prozor za odabir i podešavanje teme potpuno je izmijenjen. Veliki (polu)prazan prozor vrlo je zbunjujuć te od korisnika zahtijeva privikavanje na novu logiku. Mint 17 je dosad prvo nudio mogućnost odabira i promjene teme, a tek potom njeno detaljno podešavanje. Od sada je procedura obrnuta. Opcije Window borders, Icons, Controls i Mouse pointer omogućavaju podešavanje trenutno aktivne teme, a klikom na bilo koju od njih otvara se svojevrsni padajući izbornik na praznom dijelu prozora. Tek posljednja opcija, Desktop, omogućava odabir nove teme. Dodavanje i uklanjanje tema vrši se hotlinkom koji otvara zaseban, za to predviđen prozor.

 

Mint 17.1 - podešavanje teme

Mint 17.1 – podešavanje teme

 

Mint 17.1 - podesavanje teme

Mint 17.1 – podešavanje teme

 

 

Pozitivna strana je svakako preglednost, budući da korisnici po prvi puta u Cinnamonu dobivaju prikaz izgleda (preview) i lakše mogu odabrati jedan od ponuđenih. Međutim, poseban problem nastaje kada imate instaliran velik broj tema ili ikona. Preglednost pada u drugi plan te je potrebno dulje scrollati da biste uopće došli do željenog izbora. Dodatan problem stvara i pregled, tj. sličice koje nedostaju.

Još jedna mana ovog pristupa je prazan početni prozor koji zbunjuje naopakom logikom i zasebnim linkom za dodavanje/uklanjanje novih tema. Mogu shvatiti da je ovakav prikaz praktičan za ekrane manjih dijagonala i netbooke, gdje su preglednost i odabir gusto zbijenih opcija gotovo nemoguća misija. Ipak, po mom mišljenju ovakav (eksperimentalan) estetski zahvat uopće nije bio potreban; Mint 17 to već ima savršeno riješeno.

Novost je i to što zadana Mint-X tema i redizajnirane ikone dolaze oplemenjene u ukupno trinaest izvedbi, što je odlična vijest za sve koji teško prihvaćaju otužnu metalik-sivu.

Manja su poboljšanja zahvatila i Network Settings, čime je elegantni izgled još više naglašen.

 

Mint 17.1 - Network Settings

Mint 17.1 – Network Settings

 

 

Uvedene su i dvije potpuno nove opcije:

  • Privacy Settings omogućava brisanje popisa datoteka kojima smo pristupili tijekom proteklih dana. Ova mogućnost može biti praktična ako svoj korisnički račun dijelimo s više korisnika (što samo po sebi nije sigurno). Ali i bez nje popis nedavno korištenih datoteka zajedno s ostalim “smećem” možemo jednostavno i efikasno ukloniti koristeći BleachBit. Korisnija bi, primjerice, bila mogućnost brisanja korisničke sesije nakon odjave korisnika ili ponovnog pokretanja sustava. Iako se temelji na plemenitoj ideji zaštite privatnosti, radi se o potpuno nepotrebnoj i neuklopivoj opciji.
  • Notification Settings nam po prvi puta omogućava upravljanje obavijestima. Za sada nudi samo rudimentarne mogućnosti (prikazati ili ne prikazati, te koliko dugo, pitanje je sad?), no svejedno je dobrodošla novost i napredak od dosadašnjih opcija uključi/isključi. Apsurdno je da smo na ovaj detalj, koji je sastavni dio svakog ozbiljnijeg grafičkog okruženja, morali čekati više od tri godine! Ostale mogućnosti podešavanja poput oblika, položaja obavijesti na ekranu ili izmjene teme zasad možemo samo priželjkivati.

 

Mint 17.1 - Privacy

Mint 17.1 – Privacy

 

Mint 17.1 - Notifications

Mint 17.1 – Notifications

 

 

Cinnamon dobiva i poboljšani Screen Locker. Radi se radi o animaciji zaključanog ekrana s rudimetarnim opcijama za podešavanje poput prikaza datuma, vremena, promjene fonta i dodavanja vlastite poruke. Ovaj je element sastavni dio okruženja i čvrsto je povezan s mogućnostima zaključavanja i svjetline ekrana te odjave i izmjene korisnika. Ova je opcija zadano uključena, pa upozoravam korisnike da obrate pažnju.

 

Mint 17.1 - Screen Locker

Mint 17.1 – Screen Locker

 

 

Ova mogućnost je gotovo obavezna kad računalo dijelimo s više korisnika, pri čemu želimo sačuvati privatnost i tajnost podataka. No bez obzira na dodatne mogućnosti koje donosi, ni na koji način ne može zamijeniti klasični screensaver. Od nastanka Cinnamona je proteklo više od tri godine, a još nismo dobili zaseban screensaver. Upravljanje energijom i štednja, produljenje vijeka trajanja hardvera te zabavna animacija tijekom perioda neaktivnosti neizostavni su dijelovi svakog radnog okruženja. Vjerujem da prosječni, kućni korisnici pridaju malu važnost zaključavanju ekrana, zbog čega takvima najviše i nedostaje screensaver. Prava je šteta što Cinnamon još uvijek nije u potpunosti riješio koliziju s GNOME screensaverom (čiji je fork), zbog čega se naknadnoj funkcionalnosti moramo domišljati instalacijom Xscreensavera.

Redizajn je doživio i Login Screen. Uklonjeni su tabovi i dodana je alatna traka s lijeve strane, a dodane su i brojne nove teme. Čak je dodan i gumb Preview kojim korisnici odmah mogu isprobati nove postavke. Sve je mnogo kompaktnije i preglednije te više nema potrebe za rastezanjem prozora čitavom visinom ekrana.

 

Mint 17.1 - Login Screen

Mint 17.1 – Login Screen

 

 

Dijalog za podešavanje jezičnih postavki je temeljito promijenjen, te su sada dostupne detaljne opcije.

 

Mint 17.1 - Language Settings

Mint 17.1 – Language Settings

 

 

Odličan USB Stick Formatter od sada prikazuje animaciju tijekom rada.

 

Mint 17.1 - USB Stick Formatter

Mint 17.1 – USB Stick Formatter

 

 

Najveća novost ovog izdanja je redizajnirani Nemo. Od sada se pokreće kombinacijom tipki Super+E po uzoru na Windows Explorer. Izmijenjena je i alatna traka te je dodan novi gumb koji u Terminalu otvara vašu trenutnu lokaciju. Uključiti ga možete u Edit->Preferences->Toolbar.

 

Mint 17.1 - Nemo

Mint 17.1 – Nemo

 

 

Novost su i emblemi – oznake koje korisnik može pridodati svakoj mapi radi lakšeg razlikovanja. Nalaze se u izborniku Properties->Emblems. Isto tako, svakoj mapi je moguće promijeniti boju neovisno o drugim mapama.

 

Mint 17.1 - emblemi

Mint 17.1 – emblemi

 

Mint 17.1 - emblemi i promjena boje foldera

Mint 17.1 – emblemi i promjena boje mapa

 

 

Bookmarkiranje u Nemu nikada nije bilo jednostavnije! Dovoljno je željenu mapu “odvući” u sekciju Bookmarks te na isti način promijeniti njihov redoslijed. Dodan je i efekt sjene za upečatljiviji dojam. Tako lako!

 

Mint 17.1 - Nemo Bookmarks

Mint 17.1 – Nemo Bookmarks

 

 

Ostale promjene:

  • Official User Guide prebačen je u DocBook format te je dostupan u izborniku Menu->Help;
  • brojna sitna poboljšanja Cinnamon okruženja, izbornika i desktopa;
  • u Cinnamon izbornik je dodana kategorija “Recent files”;
  • poboljšani sound applet;
  • poboljšana podrška za touchpad i dr.

 

 

Zaključak

 

Nadogradnja sustava je uvijek vrlo rizičan pothvat bez jamstva da će sve proći prema planu. Iz dosad opisanog je očito da je Mint ekipa i ovaj put obavila odličan posao! Sam postupak nadogradnje je izuzetno jednostavan, prilagođen početnicima, te prolazi bez ikakvih problema. U radu nisam primijetio nikakve probleme; čak je i potrošnja resursa ostala ista.

Kako smo do sada pisali, promjenom razvojne politike Linux Mint se temelji isključivo na stabilnoj Ubuntu LTS bazi s petogodišnjom podrškom. Čak i trenutno aktivan kernel 3.13, iako nije LTS, ima podršku do 2016. godine.

Promjene u novom Mintu 17.1 uglavnom su kozmetičke prirode i ne predstavljaju značajan pomak u funkcionalnosti sustava. U ovom slučaju ne radi se o bezidejnosti ili nedostatku inspiracije razvojnog tima, već o stvaranju ugodnijeg dojma korištenja, poboljšanju stabilnosti, usporavanju razvoja i osiguravanju dovoljno vremena korisnicima da se naviknu na promjene.

Kao najveću prednost ovog izdanja istaknuo bih izvrstan Nemo File Manager. Rad s datotekama je sada jednostavan, zabavan i prepun mogućnosti. Retro wallpaperi starije korisnike sjećaju na ranije verzije Minta, ali i pokazuju koliko se od tada razvijao i napredovao. Brojni appleti, ekstenzije i teme čine Cinnamon nevjerojatno bogatim i prilagodljivim okruženjem, što se vrlo često zaboravlja. Zato mu i možemo oprostiti sitne nedostatke poput neriješenog pitanja screensavera ili nespretnog Notification Managera.

Novi Mint 17.1 možemo promatrati kao svojevrsni update pack koji ipak ne donosi važne promjene. Ako vam šarene teme, ikone i wallpaperi nisu naročito zanimljivi, slobodno se zadržite na odličnoj verziji 17. Clement Lefebvre ionako napominje da novo izdanje možete “prespavati” i potom, kad za to dođe vrijeme, bezbrižno nadograditi sustav na 17.2.

Sve ostale pozivam da isprobaju nevjerojatno minty iskustvo. Sigurno se nećete razočarati!

 

 

Izvor: blog.linuxmint.com

Cinnamon: podešavanje nakon instalacije

$
0
0

Učinimo Cinnamon još atraktivnijim uz jednostavne trikove!

 

Cinnamon je moderno i estetski privlačno radno okruženje koje još od svojih početaka podiže podosta prašine na Linux sceni. Sve poznate distribucije ga nude u vlastitim izdanjima, a odlikuje se stabilnošću, malom potrošnjom resursa, lakom podesivošću, jednostavnošću upotrebe i velikim brojem dodataka. Često nepotrebno zanemarivan, Cinnamon napokon zaslužuje kratak vodič i upute za podešavanje za još ugodniji rad.

Upute su pisane za Linux Mint 17.1 (Ubuntu 14.04 LTS) s verzijom Cinnamona 2.4. Za sve ostale distribucije se podrazumijeva da imaju predinstaliran Cinnamon iz službenih repozitorija ili sa službene stranice. Korisnicima se preporučuje barem minimalno snalaženje u Terminalu.

 

1 Mint 17.1

 

 

Nadogradnja sustava, instalacija i deinstalacija programa

Prvi i najvažniji korak nakon svježe instalacije sustava jest potražiti i instalirati sigurnosne nadogradnje. To je moguće obaviti kroz Update Manager ili naredbom:

sudo apt-get update && sudo apt-get upgrade

Najjednostavnija metoda za instalaciju i uklanjanje većeg broja programa je pomoću Synaptica. Važno je instalirati neke dodatne programe koje najčešće koristimo u svakodnevnom radu, kao što su: BleachBit, Pinta, SMPlayer i SMTube, VLC, K3B ili Xfburn, Dconf-Editor, htop, Conky Manager, lshw-gtk, lm-sensors, rar… Isto tako, možemo i deinstalirati nepotrebne (npr. Brasero).
Iako Linux Mint dolazi s predinstaliranim svim kodecima potrebnim za svakodnevni rad, nije naodmet dodati i paket ubuntu-restricted-extras. U slučaju problema s očitavanjem CD/DVD-a ključni su libdvdread4 i libdvdcss2. Za one koji žele novu Oracle Javu, potrebno je dodati odgovarajući PPA.

 

Pozadinska slika, teme i ikone

Mint 17.1 nudi bogatu kolekciju pozadinskih slika. Radi se o paketu mint-backgrounds koji je potrebno naknadno instalirati. Npr.:

sudo apt-get install mint-backgrounds-retro

 

Promjena pozadinske slike

Promjena pozadinske slike

 

 

Za Cinnamon su dostupne brojne teme koje je moguće preuzeti i instalirati pomoću odgovarajućeg izbornika (Themes). Meni omiljena je SmoothPurple, kao i nove Mint-X-Acqua ikone.

 

SmoothPurple tema i Mint-X-Acqua ikone

SmoothPurple tema i Mint-X-Acqua ikone

 

 

Cjelokupni popis dostupnih tema možete pogledati na službenoj stranici. U slučaju problema s automatskim preuzimanjem i instalacijom, možete ih ručno preuzeti i otpakirati u ~/.themes/ ili /usr/share/themes/. Ikone je potrebno otpakirati u /usr/share/icons/.

 

Panel

Posebnu pažnju moramo posvetiti panelu. Radi se o jednom od ključnih dijelova svakog radnog okruženja koje je gotovo neizostavno u svakodnevnom radu. Za početak napominjem da Cinnamon Panel ima određena ograničenja koja ga čine prilično nefleksibilnim. Tako ga je, primjerice, moguće postaviti isključivo na vrh ili dno ekrana (ili imati dva panela). Nije ga moguće premještati lijevo ili desno, kao ni mijenjati njegovu duljinu čime bismo ga pretvorili u improvizirani dock.

Za početak je potrebno povećati širinu…

 

Promjena širine panela

Promjena širine panela

 

… što je moguće i putem Dconfa:

org -> cinnamon -> panel-bottom-height

Na početku panela nalazi se Cinnamon Menu koji se konfigurira desnim klikom. Moguće je izbrisati dosadni tekst “Menu” i upisati što god želite. Odaberite ikonu u /usr/share/cinnamon/theme/ ili dodajte vlastitu. Koristeći Menu Editor možete dodavati ili oduzimati kategorije i njihov sadržaj.

 

Konfiguriranje menija

Konfiguriranje izbornika

 

Ikone koje dodate na panel pojavljuju se isključivo u launcheru s lijeve strane. Možete ih razmjestiti jednostavnim povlačenjem miša (drag-and-drop).

Među najvažnijim indikatorima na desnoj strani panela nalazi se prikaz datuma i točnog vremena. Međutim, mnogi korisnici nisu zadovoljni načinom prikaza, stoga je potrebno zadati željeni format prikaza. Format koji meni odgovara glasi:

%A, %B %e, %H:%M

Klikom na hotlink “Show information on date format syntax” otvara se stranica foragoodstrifttime.com koja će vam olakšati podešavanje formata.

 

Format datuma i sata

Format datuma i sata

 

Razmještaj indikatora obavlja se na poseban način. Za početak je potrebno uključiti Panel edit mode, što je moguće na nekoliko načina:

desnim klikom na panel -> Panel edit mode -> ON

izbornik Panel -> Panel edit mode

Dconf-Editor -> org -> cinnamon -> panel-edit-mode

 

Tek tada je indikatore moguće premještati metodom drag-and-drop.

Na ovom je mjestu još jednom važno ponoviti da launchere nije moguće postavljati među indikatore na desnu stranu panela, kao što je to uobičajeno u većini grafičkih okruženja, već isključivo na lijevu stranu na za to predviđeno mjesto.

 

Appleti

Brojni dodaci za panel jedan su od najjačih aduta Cinnamona. Za preuzimanje i instalaciju su dostupni jednim klikom miša, rješavaju brojne probleme, a rad čine ugodnim i zabavnim. Napominjem da brojni appleti više nisu kompatibilni s novijim verzijama Cinnamona (1.8+). U slučaju problema s automatskim preuzimanjem i instalacijom možete ih ručno preuzeti sa službene stranice i otpakirati u ~/.local/share/cinnamon/applets/.

Nakon instalacije nekih od njih potrebno je restartati Cinnamon. To je jedinstvena mogućnost ponovnog pokretanja radnog okruženja i ne odnosi se na ostatak sustava (dakle, nije jednaka ponovnom pokretanju računala). Čitav proces traje nekoliko sekundi. Potreban je desni klik na panel, Troubleshoot -> Restart Cinnamon.

Jedan od meni dražih dodataka je Weather koji ažurno i diskretno nudi prikaz vremenske prognoze. Potrebno je upisati ID vlastitog mjesta, što je omogućeno hotlinkom.

 

7 Weather applet

Weather applet

 

Weather applet

Weather applet

 

 

Jedan od važnijih je svakako i Workspace Switcher koji daje prikaz aktivnih radnih površina. Osim klikom na indikator, prijelaz na drugi aktivni desktop moguće je obaviti kombinacijom tipki Ctrl+Alt+left/right. Ipak, njegov najveći nedostatak je što ne nudi mogućnosti brisanja postojećih ili dodavanja novih površina. Ipak to je moguće obaviti u dconf-editoru:

org -> cinnamon -> number-workspaces

 

Windows Quick List, uz već dobro poznati Alt+Tab prikaz, daje jednostavan popis svih aktivnih prozora bez obzira na kojem se desktopu nalazili.

 

Windows Quick List

Windows Quick List

 

Isto tako, ne smijemo zaboraviti ni ostale kao što su CPU Temperature Indicator, Force Quit, Notifications, System Monitor, Settings Plus, Shutdown Applet i dr. Cijeli popis, kao što je prethodno rečeno, možete pogledati na službenoj stranici Cinnamona.

 

Efekti

Cinnamon je suvremeno oblikovano okruženje koje se može pohvaliti brojnim efektima. Najpoznatiji od njih su window tiling i window snapping. Oba su zadano uključena.

Tiling podrazumijeva vodoravno ili okomito pozicioniranje jednog ili dva prozora pri čemu svaki od njih zauzima pola ekrana. Mišem jednostavno odvučemo prozor do gornjeg, lijevog ili desnog ruba ekrana.

 

Windows tilling

Window tiling

 

Za razliku od toga, snapping označava pozicioniranje dvaju ili više prozora pri čemu svaki od njih zauzima polovinu ili četvrtinu ekrana. Otvoreni prozor pozicioniramo kombinacijom tipki Super_L+left/right/up/down.

 

Windows snapping

Window snapping

 

Ostale efekte možemo uključiti i proizvoljno mijenjati u Control Center -> Effects. U Cinnamonu, nažalost, nećemo vidjeti rotirajuću kocku. Naime, Compiz nije kompatibilan s GNOME 3 okruženjem, pa tako ni s njegovim derivatima (Cinnamon, Pantheon i sl.). Ipak, najvažniji efekti se odnose na rad s virtualnim desktopima. Prvi od njih je tzv. Scale View koji nudi prikaz prozora na trenutno aktivnom desktopu. Za pristup efektu potrebno je dodati istoimeni applet na panel.

 

Scale View

Scale View

 

Expo omogućava interaktivni prikaz svih radnih površina, kao i premještanje prozora po njima. Ova vrsta prikaza omogućava jednostavno dodavanje novih desktopa (klikom na gumb u desnom rubu ekrana) ili brisanje postojećih (klikom na X svakog desktopa ili klikom kotačića miša). Moguće je i zasebno imenovati svaki desktop.

 

Expo

Expo

 

Međutim, tu se pojavljuje čest problem: mnoge teme u Expo modu ne podržavaju gumbe za dodavanje i brisanje desktopa. To se može popraviti dodavanjem nekoliko linija koda u izvorni kod teme ili na prethodno opisani način pomoću dconf-editora.

Zanimljivost je i Hot Corners koji omogućava neobičnu vrstu prečaca u kutovima radne površine.

 

Hot Corners

Hot Corners

 

 

Lock Screen i screensaver

Postavke Screen Lockera omogućavaju zaključavanje ekrana i postavljanje pozdravne poruke tijekom neaktivnosti računala. Korisnike valja upozoriti da je ova opcija podrazumijevano uključena (rekli bismo, “po defaultu”), što znači da će se zateći u situaciji upisivanja administratorske lozinke kada se nakon nekog vremena vrate i ponovno požele nastaviti rad.

 

Screen Locker

Screen Locker

 

Budući da ne zahtijeva odjavu korisnika te gotovo trenutno omogućava daljnji nesmetan rad, Locker je najprimjereniji za uredska računala i korisnike koji drže do vlastite privatnosti. Ipak, često se može pokazati nepraktičnim, posebno ako se radi o malim kućnim korisnicima, stoga ne može zamijeniti klasični screensaver. Ovaj se problem može riješiti instalacijom Xscreensavera (jer GLMatrix je uvijek cool):

sudo apt-get install xscreensaver xscreensaver-data xscreensaver-gl-extra

 

Xscreensaver

Xscreensaver

 

Nakon toga potrebno je i Xscreensaver u Startup Applications natjerati na pokretanje pri podizanju sustava. Usput možemo isključiti i nepotrebne servise, te tako skratiti boot-up.

 

Startup Applications

Startup Applications

 

 

Conky Manager

Conky je postao neizostavan dio svakog modernog desktopa te u mnogočemu pridonosi atraktivnosti, raznolikosti i informativnosti. Najjednostavniji način za njegovo podešavanje je Conky Manager koji smo na početku instalirali.

 

Conky Manager

Conky Manager

 

 

Završna podešavanja

Iako vizualno privlačan, Cinnamon nudi žalostan izbor deskleta i ekstenzija. Tek su malobrojni dostupni dodaci kompatibilni s novijim izdanjima Cinnamona, poput Drives Managera – deskleta za montiranje i demontiranje diskova.

Na kraju, ako vam je dosadio klasični Cinnamonov izbornik, zašto ga ne zamijeniti nečim atraktivnijim? Configurable Menu je applet koji pruža gotovo neograničene mogućnosti isprobavanja!

 

Drives Manager i Configurable Menu

Drives Manager i Configurable Menu

 

 

Ostalo

Ne smijemo zanemariti ni ostale opcije:

  • omogućiti automatski login (Login Window),
  • prikaz ikona na radnoj površini, npr. Trash, montirani diskovi, Home ili Computer (izbornik Desktop),
  • uključivanje/isključivanje audio efekata (Sound -> Sound Effects),
  • Gedit dodatno proširiti pomoću gedit-plugins ili ga potpuno zamijeniti Meditom,
  • za natpis u zaglavlju Terminala instalirati figlet i dodati ga u ~/.bashrc,
  • kreirati vlastite aliase u ~/.bashrc i još mnogo toga.

 

Cinnamon pruža izvrsne mogućnosti podešavanja u samo nekoliko klikova. Uz pomoć ovih uputa i vi možete urediti  desktop prema vlastitim željama i uživati u jedinstvenom iskustvu!

 

HDR fotografija za korisnike Linuxa

$
0
0

Internet je prepun savršenih HDR fotografija. Gledam, divim se, pitam se – mogu li i ja napraviti nešto slično? Nema šanse, imam amatersku opremu i nemam pojma kako se to radi. Ovaj članak uvjerit će vas da je upravo to moguće. Običnim digitalcem uz pomoć Linux alata za obradu digitalne fotografije izradit ćemo solidnu HDR fotografiju.

“Ne mogu ja to”. Tako sam razmišljao sve do ovih blagdana. Uz kombinaciju nekoliko slobodnih dana u nizu i malo radoznalosti nabasah na fotoblog Edu Pereza iz 2009.: http://fotoblog.edu-perez.com/2009/02/hdr-and-linux.html

Čovjek voli fotografiju i Linux te detaljno objašnjava što i kako radi. Idemo pokušati.

Najprije riješimo pitanje opreme: moram li imati skupi aparat da napravim HDR sliku? Ne, apsolutno ne. Običan digitalac koji dozvoljava ručno namještanje vremena snimanja bit će sasvim dovoljan. Svjestan sam činjenice da moderni aparati imaju opciju AEB, što je engleska kratica za automatsko snimanje niza fotografija s različitim ekspozicijama. No, to je opcija za “glupe Amere”. Mi Balkanci vjerujemo u devizu “snađi se, druže” i ne tražimo od fensi-šmensi opreme da odradi ono što možemo i sami.

HDR fotografija nastaje spajanjem više fotografija iste scene s različitim osvjetljenjem. Otvor blende se ne mijenja; dakle, radi se više uzastopnih fotografija s različitim vremenom ekspozicije. Ako već imate skupi aparat s AEB opcijom… nemojte me zezati, pročitajte upute i podesite to sami.

1) Snimanje fotografija

Imam digitalac bez AEB opcije. Snima se obična fotografija. Potrebno je napraviti nekoliko koraka pripreme. Učvrstite aparat; to je najvažnije. Kvalitetu fotografije prebacite na RAW, zatim prebacite na ručno upravljanje. AUTO mod možete koristiti samo za testnu fotografiju kako bi odredili ispravnu ekspoziciju.

Napravite barem pet fotografija, od najmanje osvijetljene sa -2 ekspozicijom do najviše osvijetljene sa +2 ekspozicijom. Ako ne znate teoriju fotografije, slijedi jednostavna informacija: svaki put kad udvostručite vrijeme snimanja, vrijednost ekspozicije se poveća za 1.

Recimo da je svjetlomjer na digitalcu došao na 0 kad ste postavili vrijeme ekspozicije na 1/60. Dakle, vaš je zadatak napraviti pet fotografija s ovim vremenima ekspozicije: 1/250 , 1/125 , 1/60 , 1/30 te 1/15 sekundi. Nema nikakve štete ako napravite više fotografija, posebno ako vaš digitalac nudi vremena između, npr. 1/100  ili 1/40. Podrazumijeva se da cijelo vrijeme scena mora biti statična. Ako imate dinamičnu scenu, poput morskih valova, može se i to riješiti uz pomoć maskiranja slojeva u GIMP-u, ali to je već tema za drugi članak.

Kolaž

Kolaž

 

2) Prijenos fotografija

Ubuntu 14.04 prepoznaje moj digitalac kao vanjski disk i otvara mapu “Files automatski, stoga nema nikakve potrebe za dodatnim programima. Napravite novu mapu ispod mape “Pictures” i u nju prebacite RAW fotografije s aparata.

3) Priprema programa/paketa u Linuxu

Za obradu fotografije trebamo sljedeće programe: UFRaw, Hugin, pfstools (obavezno uključiti opciju “dcraw”), ImageMagick te GIMP. Sve pakete/programe našao sam u Ubuntu Software Centru, pa ih i vi vjerojatno imate u repozitorijima distribucije koju koristite.

4) Konverzija RAW formata u TIFF

Otvorite terminal i promijenite trenutačnu putanju u mapu gdje ste snimili RAW slike s aparata. Ondje unesite naredbu:

ufraw-batch --wb=camera --out-type=tif --overwrite DSC_????.NEF

Moj digitalac imenuje RAW datoteke u obliku DSC_????.NEF, dok primjerice Canon aparati koriste oblik IMG_????.CR2. Pripazite na ekstenziju koju imaju vaše RAW fotografije i sukladno tome izmijenite ovu naredbu prema potrebi.

U slučaju da vaš digitalac ne podržava RAW format već samo kompresirani JPG, na ovom mjestu koristimo alate convert odnosno mogrify iz paketa ImageMagick. U tom slučaju ćemo niz JPG slika pretvoriti u TIFF ovom naredbom:

mogrify -format tif *.jpg

5) Poravnanje fotografija programom Hugin

Hugin je set programa za panoramske fotografije. Ne treba nam GUI aplikacija, jer mi ne radimo panoramsku fotografiju. Koristimo dva alata iz ovog seta, a prvo alat za poravnanje fotografija. Ako imate skupi HDR-ready aparat ili ste naprosto spretno učvrstili aparat i sigurni ste da se nijedan kadar nije pomaknuo, možete preskočiti ovaj korak. Ako poput mene koristite lagani stativ koji se ljulja, onda je ovaj korak obavezan.

align_image_stack -a A_ DSC_????.tif

Opet, pripazite kako se vaše slike nazivaju pa izmijenite ovu naredbu ako je potrebno.
Koristili smo opciju (označenu prefiksom -a) da dobijemo niz TIFF slika koje se točno preklapaju.

Primijetite da se jedna od originalnih fotografija zamutila jer se stativ pomaknuo tijekom snimanja. Ovaj alat je toliko moćan da je uklonio tu grešku iz konačne verzije!

6) Konverzija u HDR format

Koristimo istu naredbu kao u prethodnom retku, ali sa opcijom -o da bismo kreirali HDR datoteku.

align_image_stack -o remek_djelo DSC_????.tif

Ako ste skromni kao ja, datoteku možete ovako nazvati. Naravno, slobodno promijenite ovu liniju da odgovara vašim potrebama.

7) Prva od tri radne fotografije

Sada ćemo stvoriti prvu od tri fotografije u ovom post-produkcijskom procesu koja će poslužiti kao prvi sloj u GIMP-u. Koristimo naredbu enfuse u terminalu. To je drugi alat iz seta Hugin koji ovdje koristimo.

enfuse -o sloj_1.tif A_????.tif

Kao što vidite, koristimo niz TIFF datoteka koje smo dobili poravnanjem. Ukoliko niste radili poravnanje slika, koristite izvorne TIFF slike.

8) Druga od tri radne fotografije

Drugu od tri radne fotografije dobijemo pomoću pfstools. Primijenimo filter mantiuk na HDR datoteku dobivenu u koraku 4.

pfsin remek_djelo.hdr | pfstmo_mantiuk06 -e 1 -s 1 | pfsgamma --gamma 2.2 | pfsoutimgmagick sloj_2.tif

9) Treća od tri radne fotografije

Posljednju od tri radne fotografije također dobivamo pomoću pfstools primjenom filtera fattal na HDR datoteku dobivenu u koraku 4.

pfsin remek_djelo.hdr | pfstmo_fattal02 -s 1 | pfsoutimgmagick sloj_3.tif

10) Koristimo GIMP i slažemo cjelinu

Otvorite GIMP i mapu s radnim slikama. Metodom povuci-i-pusti prebacite mišem datoteku sloj_1.tif u GIMP.

Ponovite postupak s mišem za drugu datoteku sloj_2.tif. GIMP će ju automatski dodati kao novi sloj. Kliknite na panel sa slojevima i mišem označite sloj_2. Tada mu promijenite prozirnost (opacity) na 50%

Ponovite postupak mišem za treću datoteku sloj_3.tif – GIMP će ju dodati kao novi sloj. Opet klikom na panel sa slojevima selektirajte sloj_3. Tada promijenite mode (odmah iznad opacity) iz postojećeg u overlay.

Sada biste već trebali biti zadovoljni svojom HDR slikom. Ako niste, pokušajte mijenjati parametre za filtere ili čak izaberite druge filtere. Nešto se može dotjerati i u samom GIMP-u.

Na kraju izvezite sliku u JPG format i objavite ju na Linux za sve forumu. U podforumu Linux i multimedija postoji tema Digitalna fotografija gdje možete podijeliti svoju HDR fotografiju sa svima nama.

Konačni rezultat

Konačni rezultat

 

Autor: Kepica

Upogonite text-to-speech na Linuxu

$
0
0

Prenosimo tekst s našeg foruma koji je napisao korisnik rusty. Vjerujemo da će i na naslovnici ova zanimljiva tema pronaći zainteresirane čitatelje. Uputstva su napisana za Linux Mint, ali su lako primjenjiva i na ostale distribucije Linuxa.

Koncept je jednostavan. U bilo kojem GUI programu (Firefox, Writer…) označite dio teksta, udarite kraticu “Ctrl+nešto” i računalo vam pročita tekst. Ako vas zanima kako, nastavite čitati. :)

text-to-speech

 

Prvo je potrebno instalirati program za pretvaranje teksta u govor. U repozitoriju sigurno imate nekoliko text-to-speech programa, npr. festival ili espeak. Za espeak sam se odlučio jer podržava i hrvatski!
sudo apt-get install espeak
Provjerite radi li sve ovom naredbom:
espeak "hello world!"
Ako vas zanima kako zvuči na hrvatskom:
espeak -v croatian  "Pozdrav svijete!"
Preostaje još iz konzole dohvatiti tekst selektiran unutar neke GUI aplikacije. Upravo to radi mali alat pod nazivom xsel. Instalirajte ga:
sudo apt-get install xsel
Sad imamo sve potrebne komponente. Napisat ćemo malu shell skriptu i registrirati tipkovničku kraticu (keyboard shortcut) koja će izvršavati tu skriptu.
Otvorite svoj najdraži uređivač teksta i utipkajte:

#!/bin/bash

xsel | espeak -v croatian

Svojoj skripti dajte neki smisleni naziv (npr. talk-hr.sh) i spremite ju negdje u svoj home direktorij. Ne zaboravite joj dodijeliti pravo izvršavanja:
chmod +x talk-hr.sh
Zadnji korak je određivanje kratice (shortcut) kojom će se skripta izvršiti. Ovaj korak uvelike ovisi o tome koje desktop okruženje koristite. Ja koristim Cinnamon i kratice mogu dodati u dijalogu za postavke tipkovnice (Preferences -> Keyboard -> Keyboard shortcuts).

cinnamon-kratice

To je sve! Ako želite podršku i za engleski jezik, najjednostavnije je kreirati još jednu skriptu “talk-en.sh” u kojoj ćete izostaviti “-v croatian” parametar i dodijeliti joj neku drugu tipkovničku kraticu.

 

Autor: rusty

Kreirajte live USB aplikacijom Disks

$
0
0

Pravi distrohopper nikada ne gubi vrijeme i uvijek je opremljen najboljim alatima!

 

Najlakši i najbrži način za isprobavanje novih Linux distribucija je preuzimanje .iso datoteke sa matične stranice te njeno snimanje na bootabilni USB stick. Na taj način možete uživati u live operativnim sustavima
koje bez straha možete isprobavati bez ikakvih posljedica po vaš hardver. No, često nas iznenade neočekivani problemi.

Neke distribucije dolaze s predinstaliranim alatom za tu namjenu, dok je u nekim slučajevima potrebno instalirati dodatan softver. Tako, primjerice, Ubuntu donosi Startup Disk Creator, no taj odbija na USB snimiti bilo što drugo osim ubuntoidnih distri (Kubuntu, Xbuntu, Mint…). OpenSUSE repoi sadrže Suse Studio ImageWriter. Možemo instalirati i UNetbootin, no često se događa da tako snimljena distra ne radi ispravno ili se USB uopće ne može pokrenuti…

Problem možemo riješiti i terminalnom naredbom:

dd if=/putanja/do/datoteka.iso of=/dev/sdb bs=4M && sync

Važna opaska: u dd naredbi pripazite na ispravnu putanju do USB-a! Neispravna putanja vam može obrisati neki drugi disk!

 

 

Aplikacija Disks

Standardni dio mnogih GNU/Linux distribucija, je aplikacija Disks pomoću koje je možemo vrlo jednostavno i pouzdano pripremiti live USB. Evo kratkih uputa kako to učiniti:

  • S web stranice preuzmite .iso datoteku željene distribucije.
  • Alatom GParted na USB sticku kreirajte novu DOS particijsku tablicu.

 

Kreiranje MSDOS particijske tablice

Kreiranje MSDOS particijske tablice

 

 

  • GPartedom izradite novu FAT32 particiju.

 

Kreiranje FAT32 sustava datoteka

Kreiranje FAT32 sustava datoteka

 

 

  • Provjerite novonastalu situaciju.

 

Pripremljen USB stick

Pripremljen USB stick

 

 

  • Pokrenite alat Disks te demontirajte USB uređaj.

 

Odabir USB sticka

Odabir USB sticka

 

 

  • Iz Disks opcija odaberite Restore Disk Image.

 

Restore Disk Image

Restore Disk Image

 

 

  • Odaberite odgovarajuću .iso datoteku.

 

Odabir .iso datoteke

Odabir .iso datoteke

 

 

  • Na ekranu za odabir još jednom dobro pregledajte što ste sve odabrali.

 

Pregled odabranih opcija

Pregled odabranih opcija

 

 

  • Još jedna potvrda za vašu sigurnost kako ne bi obrisali krivi disk ili particiju. Opreza nikad dovoljno!

 

Potvrda snimanja

Potvrda snimanja

 

 

  • Restoring kreće i za minutu-dvije je sve gotovo. Tijek pratite na ekranu.

 

Tijek snimanja

Tijek snimanja

 

 

  • I to je to! U Disks aplikaciji sada vidite novu situaciju na upravo snimljenom USB sticku koji je sada spreman za pokretanje live Linux distribucije na vašem PC-u!

 

Konačan ishod: live USB stick!

Konačan ishod: live USB stick!

 

 

Postupak je vrlo lagan i brz no zahtijeva veliku pažnju korisnika jer je teško vratiti izgubljene podatke. Stoga je korisnike važno ponovno upozoriti da detaljno čitaju sve ponuđene opcije jer odabirom pogrešne particije ili diska moguće je izgubiti sve pohranjene podatke!

 

 

Autor: Max Bunker

Dva pogleda, jedna distribucija: elementary OS Freya

$
0
0

Nakon nešto dužeg perioda u kojem se nismo bavili recenzijama ni prenošenjem iskustava korisnika, danas ćemo se pozabaviti relativno mladom distribucijom Linuxa koja je u vrlo kratkom vremenu zauzela mjesto među prvih deset najpopularnijih distribucija prema evidenciji Distrowatcha.

Punim imenom elementary OS 0.3 Freya, distribucija je objavljena prije dva mjeseca nakon dugog iščekivanja kada će se pojaviti nasljednica Lune (prethodne verzije, 0.2). Nakon objave 11. travnja i narednih par burnih dana (burnih ne zbog izlaska Freye, već zbog načina preuzimanja ISO slike sa službenih stranica projekta), sve se nekako stišalo, izostale su recenzije, savjeti, rasprave za i protiv… Zapravo, jedino mjesto na kojem gotovo svakodnevno možete pročitati ili naći nešto novo vezano za elementary OS i Freyu je zajednica okupljena na elementary OS G+.

Pustimo sad razloge zašto je tome tako i krenimo na priču o elementary OS timu i zadnjoj stabilnoj inačici njihovog OS-a, Freyi.

elementary OS 0.3 Freya - Live

elementary OS 0.3 Freya – Live

Malo povijesti nikad ne škodi

Iako Jupiter (kralj bogova u rimskoj mitologiji, bog neba, oluja, munja i grmljavine) i nije bio “zasebna distribucija” u pravom smislu riječi, već skup tema, ikona i alata dodanih na tadašnju verziju Ubuntua 10.10, ipak je donio nešto drugačije što me za ono kratko vrijeme prije kraja njegovog životnog puta dovoljno zainteresiralo da nastavim pratiti kako se razvija elementary OS.

Nakon Jupitera je došla Luna (rimska božica mjeseca), temeljena na LTS izdanju Ubuntua 12.04. Luna je donijela korisnicima jedno novo, drugačije, i pozitivno iskustvo jasno ukazujući da minimalizam i vizualna privlačnost ne moraju nužno biti svrha sami sebi. Naprotiv, pokazalo se da se u takvom desktop okruženju može i sasvim ugodno svakodnevno raditi (op.a. Luna mi je još uvijek primarna distribucija), bez obzira jeste li Lunu ostavili onakvom kakvu su je tvorci zamislili, ili ste ipak malo (ili malo više) zaronili ispod površine i dodatno je prilagodili sebi.

Već kod Lune se mogao naslutiti i jedan drugi smjer u kojem idu razvijatelji elementary OS distribucije, a to je zatvorenost. Je li to posljedica samostalnog razvoja određenog broja aplikacija ili bitnih dijelova operativnog sustava (Pantheon ili Gala npr.) ili ne, činjenica je da tolika zatvorenost nije po volji mnogim korisnicima.

Luna - izvor: Wikipedia

Luna – izvor: Wikipedia

Budući da Luna ima podršku do travnja 2017. godine, možda i nije bilo potrebe ići na novu s obzirom na dobru prihvaćenost Lune i skromne resurse kojima je elementary ekipa raspolagala. Unatoč tome, dolaskom Ubuntua 14.04 elementary ekipa je odlučila krenuti s razvojem nove verzije svoje distribucije. Istovremeno su napustili dotadašnje imenovanje distribucija po bogovima iz rimske mitologije i za novu verziju OS-a odabrali ime Isis (Isis=Izida; egipatska boginja, zaštitnica žena, prirode, prijateljstva, robova i još koječega).

Freya - izvor: Wikipedia

Freya – izvor: Wikipedia

Međutim, zbog globalnih događaja koji nemaju veze s Linuxom i ovo ime biva napušteno (kao i egipatska mitologija), a za novi projekt odabiru ime Freya (nordijska božica ljubavi, ljepote i plodnosti) koja nakon dvije godine razvoja, 11. travnja 2015. biva dovršena te objavljena kao stabilno izdanje najnovije verzije elementary OS-a.

Gotovo istovremeno s objavom Freye započinje rad na sljedećoj verziji elementary OS-a pod nazivom Loki (nordijski bog spletki; općenito se za njega veže sve zlo i loše, a po nekim vjerovanjima Loki i nije bio bog već Odinova tamna strana osobnosti). Loki će se temeljiti na LTS verziji Ubuntua 16.04, no kako su zasad informacije o novostima šture, vrijeme je da se napokon posvetimo elementary OS 0.3 Freyi. Promišljanja o tome je li za novu verziju izabrano sretno ime ili ne ostavljamo za neka buduća vremena.

 

Pogled prvi

Da je Luna imala mlađu sestru, zasigurno bi se zvala Freya. Mlađa, ljepša, poletnija…i razmaženija, zahtjevnija i pomalo umišljena.

Freyu sam ozbiljnije počeo koristiti od bete2 (kao i Lunu) no za razliku od Lune bete 2, Freya je bila prepuna bugova. Ono što je bez problema radilo jučer, danas bi se raspalo bez vidljivog razloga. Kako se približavao travanj 2015. za koji se šaputalo da bi mogao biti mjesec objave finalne verzije, tako su bugovi i povremene nestabilnosti bili sve rjeđi i rjeđi, te sam odmah po službenoj objavi Freyu pohitao instalirati na laptop (Lenovo U350).

Ostadoh ugodno iznenađen brzinom instalacije, prepoznavanjem hardvera (Broadcom WiFi kartica koja nigdje nije radila bez naknadne instalacije vlasničkog drivera na Freyi je proradila out-of-the-box) te općenitom brzinom rada na ipak jako slabom hardveru. S druge strane, ostao sam i razočaran smrzavanjem OS-a, starim bugovima i nekim dojmom da još nije trebala biti objavljena.

Broadcom BCM4312 - out-of-the-box

Broadcom BCM4312 – out-of-the-box

 

Iako sam imao namjeru koristiti Freyu kao primarnu distribuciju nekih dva-tri tjedna i potom napisati recenziju, zbog navedenih problema te nekih privatnih obveza odustao sam od toga i odgodio recenziju za neke bolje dane, dajući time Freyi još malo vremena da se uozbilji i ugleda na stariju sestru.

 

Instalacija, dogradnja i uređivanje – čin prvi

O instalaciji se zapravo i nema što puno pisati jer je već viđena mnogo puta. Kao napomenu bih ipak istaknuo moguće probleme prilikom particioniranja diska, jer sam se i sam susreo s njima. Uzrok problema mi nije jasan i ne mogu ih pripisati Freyi, Gpartedu ili nečem trećem, no nikako nisu ugodni za korisnika.

Naime, Freyu sam za potrebe recenzije instalirao ukupno osam puta na četiri različite konfiguracije kako bih, nakon ranije navedenih problema s instalacijom odmah po objavi, dobio bolji uvid u ponašanje OS-a na različitom hardveru (dva laptopa i dva desktopa – popis testnog hardvera pogledajte na kraju teksta). Tri puta mi se prilikom promjene veličine particije dogodilo da se OS privremeno smrzne, nakon čega bi Gparted obrisao sve particije i ostavio mi prazan SSD.

Kao što možete zamisliti, ovo iskustvo je jako neugodno ako nemate backup, ali i ako imate backup a radili ste dualboot s Windowsima (bolje da vam ne govorim koliko vremena i živaca uzme ponovna instalacija W7 i sve sile njegovih nadogradnji). Napominjem da mi se to dogodilo na dva različita SSD-a, dok s klasičnim HDD-om nije bilo problema, pa možda zec leži negdje u tom grmu.

Instalacija u par slika Disk spreman za particioniranje Particionirani disk - root/home/swap Odabir zemlje Odabir tipkovnice Unos imena korisnika i računala te passworda Instalacija na disk započela u 10.42 .. .. a završila u 10.46 sati - brzo, brzo :)

Ako Freyu instalirate na prazan disk ili ako ste ionako odlučili sve obrisati, onda s instalacijom nema nikakvih problema. Sama instalacija je brza; toliko brza da nemate vremena ni skuhati si kavu, jer sam proces instalacije od trenutka kad ste upisali svoje korisničke podatke i kliknuli na “Instaliraj” do obavijesti da je instalacija završila u prosjeku traje 4 do 5 minuta.

Preporuka za početnike

Recimo da vas Freya ipak zanima, no spadate u grupu korisnika koji ne znaju ili ne žele znati puno o Linuxu, i ne žele se baviti terminalom već im je draži način održavanja OS-a kroz GUI (grafičko sučelje).

Nema problema. Iako će doljenavedena instalacija programa koje mnogi svakodnevno koriste biti moguća kroz GUI putem “Centra softvera” jednostavnim upisivanjem imena programa u tražilicu i jednim klikom na “Instaliraj”, ovdje ću ipak opisati kako se to puno jednostavnije i brže radi putem terminala. Ako zbog ničega drugog, onda da onima koji odluče probati na lak način razbijem strah od terminala.

Za početak, odmah nakon instalacije Freye (ili bilo koje druge Linux distribucije) je potrebno napraviti nadogradnju (update) sustava. Nakon prvog restarta taj se proces odvija automatski, te ćete nakon par minuta u docku (Plank) vidjeti ikonu s dostupnim nadogradnjama. Lijevi klik na nju, ovjerite je vašom lozinkom (passwordom), i sustav će obaviti ostalo sam, a na kraju će zatražiti ponovni restart.

Nakon toga – ili usporedno s time – upoznajte se sa svojim novim operativnim sustavom. Podesite ključne stavke za svakodnevno korištenje, kao što su dodavanje ili uklanjanje ikona na dock (Plank), uređivanje pozadinske slike, docka i kutova zaslona, pregled i podešavanje postavki privatnosti i sigurnosti, podešavanje postavki energije i slično. Kako sve to izgleda možete pogledati u videu ispod.

Iako Freya dolazi s više-manje svim potrebnim aplikacijama za svakodnevno osnovno korištenje (koji su usput i vizualno prilagođeni Freyi), neke aplikacije ćete možda poželjeti zamijeniti, dok je druge potrebno dodati. Kao što sam već ranije napisao, to je moguće izvesti u “Centru softvera”, no brži i jednostavniji način je pomoću terminala. Izbor ostavljam eventualnim budućim korisnicima Freye. Oni koji se ipak odluče za terminal ispod priloženog videa mogu pronaći popis naredbi za dodavanje osnovnih aplikacija.

Ako se odlučite za terminal, pokrenite ga i upisujte jednu po jednu naredbu (prvi put će zatražiti vašu lozinku (password)). Nadalje, ako želite kopirati naredbe umjesto da ih sami upisujete, terminal će vas prvi put upozoriti da kopiranje naredbi nije sigurno. Ovo se može onemogućiti, ali to ne spada u dio za početnike, pa neka ostane za neke naredne upute i tweakove. Da biste nastavili s radom, samo potvrdite da vam je rizik kopiranja naredbi jasan.

  • sudo apt-get install ubuntu-restricted-extras
  • sudo apt-get install firefox
  • sudo apt-get install thunderbird
  • sudo apt-get install libreoffice
  • sudo apt-get install libreoffice-style-sifr (ovo nije dio libre-officea već set monokromatskih ikona za ljepši izgled)
  • sudo apt-get install vlc
  • sudo apt-get install rar
  • sudo apt-get install pinta
  • sudo apt-get install gimp

I za kraj nije loše ponovno upisati naredbu:

  • sudo apt-get update && sudo apt-get upgrade

nakon čega ćete imati funkcionalan i oku ugodan OS. Ako je vjerovati službenim informacijama, i onih nekoliko uočenih, pomalo iritantnih bugova će uskoro nestati. Ovdje završava moj pogled; čitamo se dalje kod zaključka, a sada pozornicu prepuštam kolegi s foruma.

 

Pogled drugi

Moj proces traženja distribucije koju ću svakodnevno koristiti trajao je dugo; jako dugo. Proveo sam više od godinu dana isprobavajući razne distribucije, i uvijek bih pronašao nešto što mi ne odgovara. GNOME mi je bio prevelik. KDE me nije oduševljavao. Zajedničko svima bilo je pregrijavanje laptopa uzrokovano korištenjem open source upravljačkog programa za moju AMD Radeon grafičku koju vlasnički upravljački program više ne podržava.

A onda sam jednog dana isprobao Lunu. Bila je dovoljno nezahtjevna za resursima, pa su i problemi s pregrijavanjem bili znatno manji nego s bilo kojom drugom dotad isprobanom distribucijom (a bilo ih je desetak). I da, oduševio sam se njenim minimalizmom. Jednostavan panel na vrhu, dock i odličan pokretač aplikacija bili su dobitna kombinacija za mene.

Zatim je došla Freya. Instalirao sam je par dana nakon što je izašla beta1. Od tog dana do danas sam reinstalirao sustav samo jednom (otprilike mjesec dana nakon što se pojavila beta2). Freya nije revolucionarno izmijenjena u odnosu na prethodnu verziju, kao što je to bio slučaj s Lunom. Radilo se više na malim stvarima koje poboljšavaju korisničko iskustvo. Animacije su popravljene, sve defaultne aplikacije su dobile nove funkcije ili su zamijenjene aplikacijama koje više odgovaraju elementary OS-u.

O sustavu

Sustav je dizajniran tako da ga mogu koristiti i oni koji imaju vrlo malo znanja o računalima općenito. Mišljenja sam da je mnogo lakše naučiti koristiti Freyu nego Windowse. Sve aplikacije su jednostavne za korištenje. Pokretač aplikacija (Slingshot Launcher) je sada brži i bolje dizajniran, a dobio je i neke zgodne funkcije poput računanja jednostavnih matematičkih operacija bez pokretanja kalkulatora.

I to je Freya by r3bl

I to je Freya by r3bl

Naravno, ova jednostavnost može zasmetati naprednim korisnicima, i oni će vrlo vjerojatno zamijeniti većinu, ako ne i sve defaultne aplikacije. Sam proces obavljanja zadataka je prilično jednostavan. Operativni sustav je u pozadini i ne smeta vam pri pokretanju aplikacija i radu s njima. Gotovo ga i ne primjećujete. S elementary OS-om nemate osjećaj da se “borite” protiv računala dok obavljate svakodnevne aktivnosti, kao što se to može činiti u radu s drugim operativnim sustavima. Moram priznati da se ni sa čime sličnim nisam dosad susreo. U međuvremenu se nešto izmijenilo i kod open source grafičkog drivera koji koristim, pa moj Asus sada radi na nižoj temperaturi nego ikada prije (specifikacije možete pronaći na kraju teksta).

Nažalost, Freya još uvijek nije potpuno stabilna, i smatram greškom to što je trenutna verzija proglašena stabilnom umjesto “RC” (Release Candidate) verzije. Stabilna verzija se dugo iščekivala, elementary projekt je dobio mnogo više pažnje i samim time su razvijatelji bili izloženi većem pritisku tijekom izrade Freye. Problemi se pojavljuju s vremena na vrijeme, što vam može predstavljati problem ako ne znate engleski. Ako ga pak znate, tu je odlična elementary zajednica na Google+ kojoj se možete obratiti za pomoć.

Ipak moram priznati da je moje ukupno iskustvo korištenja Freye pozitivno. Gledao sam tu djevojčicu kako raste od svoje beta1 verzije do trenutne, a i sam sam sudjelovao u projektu koliko sam mogao. Preveo sam (gotovo) cijeli operativni sustav na bosanski jezik, svoj doprinos sam dao i trenutnom izgledu web stranice projekta, i uvijek sam bio tu da pružim svoje mišljenje ili samo promoviram projekt. Po mom mišljenju, Freya se nalazi pred krajem svojih tinejdžerskih godina i počinje sazrijevati.

O projektu

elementary projekt je dosta specifičan. Provukao se u top 10 distribucija relativno brzo (uzimajući u obzir da je star tek nekoliko godina). Razvijatelji su uspjeli kreirati nešto novo i zanimljivo čak i onima koji prije nisu koristili Linux. Više od dvije trećine preuzimanja Freye vrši se s Windowsa ili OS X-a. Naravno, ovo nam ne govori koliko je elementary projekt pridonio povećanju Linux zajednice, ali je svakako dao svoj doprinos i ostavio trag.

Budući da je elementary projekt postao vrlo popularan, a samim time se povećao i broj očiju koje ga prate, razvijatelji su odlučili da elementary OS izraste iz projekta na kojem rade u svoje slobodno vrijeme u projekt za koji su plaćeni. Zahvaljujući svojim vjernim korisnicima i njihovim mjesečnim donacijama, dva glavna razvijatelja su uspjela kreirati neprofitnu organizaciju putem koje ostvaruju profit za projekt elementary OS-a. Kako se donacije budu povećavale, tako će se povećati i broj stalnih članova elementary razvojnog tima.

Dakako, ova odluka nije prošla sasvim bezbolno, a sam proces je bio okružen kontroverzom, no sada kada je sve riješeno, elementary je s pravom postao najveći indie operativni sustav na svijetu. Ako vam se elementary projekt svidi, savjetujem da mi se pridružite i donirate nešto novca ovom projektu. Čak i ja kao student mogu izdvojiti 10 dolara (oko 70 kuna) mjesečno da pomognem svom najdražem open source projektu.

Instalacija, dogradnja i uređivanje – čin drugi

Nakon instalacije operativnog sustava možda ga poželite još malo urediti u skladu sa svojim potrebama. Za to vam preporučujem elementary-tweaks, dconf-editor i elementary-add pakete.

elementary-tweaks je zbog svoje jednostavnosti u korištenju najpopularniji alat za uređivanje elementary OS-a. Međutim, njegovo korištenje nema bezrezervnu podršku vlasnika elementary OS projekta jer lako može narušiti stabilnost sustava. Ovdje svakako uzmite u obzir i da je autor elementary-tweaksa prije nekoliko tjedana objavio da zbog privatnih obveza odustaje od njegovog daljnjeg razvoja. Od tada je projekt bez podrške sve dok netko drugi ne odluči preuzeti razvoj. Ukoliko se ipak odlučite isprobati i koristiti ga, instalaciju možete obaviti upisivanjem sljedećih naredbi u terminal:

  • sudo apt-add-repository ppa:mpstark/elementary-tweaks-daily
  • sudo apt-get update
  • sudo apt-get install elementary-tweaks

dconf-editor je pak alat koji može izvršiti sve što i elementary-tweaks, no uz to je sposoban i za još mnogo drugih stvari. Međutim, korištenje ovog alata ne preporuča se manje iskusnim korisnicima ili onima koji površno čitaju/gledaju što rade, jer sadrži neke postavke koje se ne bi smjele mijenjati.

ScreenFetsh - Freya by r3bl

ScreenFetsh – Freya by r3bl

S druge strane, dconf-editor je bolji izbor za uređivanje jer je njegovo korištenje u smislu prilagođavanja sustava teže, pa se podrazumijeva da će ga koristiti oni koji znaju u što se upuštaju i koji će znati samostalno popraviti eventualne pogreške i probleme. Ako još niste odustali od dconf-editora, instalacija je jednostavna unošenjem naredbe:

  • sudo apt-get install dconf-editor

elementary-add je najjednostavniji paket koji možete instalirati da biste malo uredili svoj operativni sustav. Paket sadrži ikone za popularnije Linux aplikacije koje svojim dizajnom više odgovaraju dizajnu elementary OS-a. Zadana elementary tema za ikone sadrži samo ikone za aplikacije koje su instalirane po defaultu, pa je ovaj paket nadopunjava.

Već na samom početku razvijanja Freye razvijatelji su zamolili zajednicu da se aktivno uključi u kreiranje aplikacija dizajniranih posebno za elementary OS. Zajednica je poziv prihvatila, pa nam je trenutno dostupno desetak odličnih aplikacija koje su razvili programera nepovezani s elementary projektom. Da biste ih isprobali, posjetite blog Made for elementary te elementary apps projekt. Ovi resursi stvoreni su s ciljem da na jednom mjestu obuhvate sve projekte dizajnirane za elementary OS.

Made for elementary sadrži samo stabilnije aplikacije, dok su u elementary apps listi uključeni i oni projekti koji su tek na početku svog razvoja.

Oni koje zanima više o tweakanju Freye mogu posjetiti i naš forum te temu namijenjenu upravo tome.

 

Zaključak prvi

I kome je zapravo Freya namijenjena? Sudeći po zatvorenosti, trebala bi biti namijenjena početnicima u svijetu “kućnih korisnika” Linuxa koji će distribuciju prihvatiti takvu kakva jest i u tom je obliku svakodnevno koristiti. S druge strane, postavlja se pitanje kako će se isti ti korisnici nositi s povremenim problemima te hoće u potpunosti biti zadovoljni dobivenim.

S činjenicom da je Freya vizualno privlačna (iako je i to individualno) vjerojatno će se složiti većina. Da je brza i da je na prosječno jakom (pa i slabijem od toga) hardveru ugodno obavljati svakodnevne poslove “kućnog korisnika” također nije sporno, no ipak je ne mogu preporučiti kao primarnu distribuciju za svakoga.

Zapravo, moje mišljenje o Freyi je podijeljeno. S jedne strane je zatvorenost sustava dobra stvar za neupućene korisnike ili korisnike kojima treba samo jednostavna i lijepa GNU/Linux distribucija, jer jamči da će OS raditi i biti uvijek onakav kakvog su ga tvorci zamislili bez potrebe za uplitanjem (ili znanjem) korisnika.

S druge pak strane, pojedini bugovi koji se pojavljuju i najčešće nestaju nakon restarta mogu iritirati ili otjerati korisnike, što je šteta. Isto tako, pojedine funkcije (ili nedostatak nekih) također mogu odvratiti neke korisnike od Freye, jer oni nemaju znanja ili volje zagrebati ispod površine i probleme ili podešavanja odrađivati dconf-editorom ili terminalom.

Od iritantnih bugova moram izdvojiti bezrazložno nestajanje sata i datuma iz gornjeg panela koji se privremeno rješavao ponovnim pokretanjem sustava. Trajno sam ga riješio tek uređivanjem “custom” postavki prikaza datuma i vremena (navedeno nisam mogao popraviti ni dconfom). Spomenuo bih i bug koji se manifestira kod pokušaja premještanja mapa ili datoteka na principu povlačenja (drag-and-drop). Događalo se da nakon ispuštanja premještene ikone dobijem vidljiv gornji rub ikone i dupliranu strelicu kursora (desna je lažna), a bug je ili nestao sam od sebe nakon nekog neodređenog vremena, ili bih morao posegnuti za restartom.

 

Dio hardvera na kojem je odrađeno testiranje.

Dio hardvera na kojem je odrađeno testiranje.

Zaključak drugi

Freyu preporučujem korisnicima koji žele isprobati nešto lagano i minimalistično te onima koji se žele fokusirati na rad bez da im operativni sustav stoji na putu. Međutim, ipak je ne bih preporučio ljudima koji se ne snalaze baš dobro s engleskim jezikom, kao ni onima koji očekuju maksimalnu stabilnost sustava. Ako tražite nešto što će vas uvesti u Linux svijet, a spremni ste malo tweakati i hakirati svoj sustav da bi ga unaprijedili ili prilagodili svojim potrebama, onda samo naprijed – Freya je za vas.

Popis hardvera korištenog za recenziju:

desktop:

HP dx7400 (Intel c2q 6600, 8 GB DDR2, VGA nVidia GTX 650, OCZ SSD i WD Black HDD)
no-name PC (AMD X2 5000 BE, 2 GB DDR2, VGA nVidia GT 7600, WD Black HDD)

laptop:

HP ProBook 4530s (Intel i3-2310M, 8GB DDR3, HD 3000, Intel SSD i Seagate HDD)
Lenovo U350 (Intel U2300, 4GB DDR3, VGA Intel X4500M, OCZ SSD i WD Blue HDD)
ASUS X54HR (Intel i3 2350M, 4 GB DDR3 RAM, VGA AMD Radeon HD 7470M, HDD)

 

Autori: Aleksandar Todorović & Dario B.


Korora Linux 22 + Plasma 5 = zanimljiva kombinacija

$
0
0

Kao što možemo shvatiti iz naslova, Korora je distribucija Linuxa bazirana na Fedori (isprva na Gentoou). Neki će sigurno pitati: zašto baš Korora umjesto već dobro poznatih (“velikih”) distri? Zašto Plasma pored drugih, “stabilnih” grafičkih okruženja? Zašto se truditi opisivati nešto što će možda trajati do sljedeće nadogradnje? Možda će nekoga zanimati i zašto Korora nije popularna te kakva je u usporedbi s drugim distrama. To su pitanja koja treba postaviti svaki korisnik – vrijedi li na neku distru potrošiti vrijeme, ili je pametnije u miru “guštati”, tj. raditi ono za što mu i služi računalo?

Kororu Linux sam pronašao na Distrowatchu. Koliko vidim po netu, tu i tamo se nađe koja vijest ili recenzija vezana za ovu distru, a još manje sam primijetio da je netko koristi. Neobično, uzmemo li u obzir da je distra napravljena s idejom da radi “out of the box”.

Pokušat ću objasniti bez previše filozofiranja: Korora je Fedora Remix; odnosno, distra koju skinete, instalirate, nadogradite i koristite. U osnovi je to Fedora s nekim dodatnim paketima. Fedora ipak dolazi potpuno slobodna, takvo je pravilo, pročitajte licencu, što znači da ju svatko može slobodno modificirati i kreirati ovakve “remiks” distre. Razlika između Fedore i Korore je u nekih 5% paketa, odnosno 3% paketa koji nisu slobodni i 2% Kororinih dodatnih paketa. Kao što već rekoh, Korora je OOB (out of the box) distra, što znači da nakon instalacije ne bi trebalo biti potrebno utrošiti masu vremena na osposobljavanje hardvera ili na instalaciju kodeka.

Kod preuzimanja Korore izbor je pao na KDE (Plasma 5); ne pitajte zašto jer ni sam ne znam. Koristim sve i ne favoriziram nijedno radno okruženje, a uostalom, ionako se sve da instalirati i počistiti ono što je nepotrebno. ISO preslika je velika 2.5 GB, a snimam je na USB dd naredbom.

Isprobavanje u Live načinu rada

Live Plasma

Live Plasma

U Live načinu rada isprobajte sve što možete da biste se uvjerili da radi. Ako i dalje niste shvatili smisao Korore, skinite Fedoru pa se uvjerite. Drugim riječima, Korora bi trebala biti jednostavnija i pristupačnija novim korisnicima od Fedore, ali nije pravilo. Sve se svodi na to kako kome odgovara; nije svak’ isti i korisničke potrebe su različite.

Svakako ne zaboravite napraviti mjesta za instalaciju. To možete učiniti pomoću Gparteda, a budući da sam izabrao Plasmu 5 (KDE), poslužiti može i KDE Partition Manager. Odaberite ono u čemu se najbolje snalazite.

Instalacija Korore

Mrsko mi je detaljno opisivati instalaciju jer smatram da je postupak već toliko puta napisan i slikovno objašnjen, ali i dalje se događa da netko ne shvati ili obriše neku važnu particiju. Nego, ovdje ću ipak napisati dvije-tri:

Fedora za instalaciju koristi Anaconda installer, koji je jednim dijelom jednostavan, sve dok se ne dođe do dijela za particioniranje. Kolega s foruma je to najbolje opisao: “Ne možete se osjećati sigurnim”. Prije svega, potrebno je dobro pročitati upute i ne žuriti te pažljivo odabrati na koji disk će se instalirati. U installeru možete naći i (pomalo neprimjetne) opcije za automatsko ili ručno particioniranje, kao i za enkripciju.

Instalacija Instalacija1 Instalacija2 Instalacija3 Instalacija5 Instalacija4 Instalacija6 Instalacija7 Instalacija8

U mom slučaju instalacija Korore nije prošla bez problema. Naime, prije instalacije sam u Gpartedu izdvojio potreban prostor za Kororu (na SSD-u imam instaliran elementary OS) i formatirao ga u ext4 kako bih u instalaciji samo označio ovu particiju i postavio je za /root. Ali ne, instalacija mi ne dopušta da ovoj particiji dodam /root mount point, ali mi zato za /root nudi particiju od druge distre. Stvarno…

Rješenje je bilo obrisati novu particiju i ponovno ju napraviti, ali u samom installeru gdje je odmah postavljam za /root. Slike govore više od riječi. Ovo je i prvi put da /home particiju dijelim s drugom distrom. Swap nisam dodavao (za moje računalo nema potrebe). Ostatak instalacije je opušteniji i na SSD-u traje do 10 minuta. Kasnije sam (zaboravih u instalaciji) u /etc/fstab promijenio default opciju u relatime da bih optimizirao korištenje SSD-a (hvala kolegi Jehonanu s foruma na linku).

Susret s desktopom

Desktop

Desktop

Nakon instalacije i pokretanja sustava dočekat će vas Simple Desktop Display Manager (SDDM). Tu nema ničeg lošeg osim ako ne želite automatsko prijavljivanje. Bilo da ga podešavate kroz postavke ili uređivanjem datoteke /etc/sddm.conf, SDDM ne možete natjerati da se automatski prijavljuje. Problem nije samo prisutan u Fedori već i kod nekih drugih distribucija.

Plasma 5.3 dolazi u ovoj verziji Korore/Fedore, i tako će ostati. Kod Fedore unutar jednog izdanja nema ažuriranja radnog okruženja na novu verziju, pa se Plasma 5.4 očekuje u Fedori/Korori 23. Ipak sve se može nadograditi dodavanjem repozitorija (u nastavku pročitajte kako). U odnosu na druga okruženja, Plasma troši više resursa: oko 500 do 600 MB bez otvorenih aplikacija. Za 4GB RAM-a će ovo biti sasvim neprimjetno u svakodnevnom radu.

Nisam primijetio rušenja prozora ili obavijesti o kakvoj greški (osim kod zatvaranja KInfoCentera, i to samo ponekad). System tray ikonice su na broju i notifikacija za dostupna ažuriranja radi dobro. Da ne zvučim kao fanboy, tu je video pa se možete sami uvjeriti, meni je sve isto.

 

Nadogradnja Plasme na 5.3.95 (5.4)

Dashboard

Dashboard

Nikako ne preporučam ovakvu radnju, ali nisam si mogao pomoći: pored stabilne Plasme 5.3.2 dodao sam repozitorij dvratil-plasma-5-beta (za Fedoru 22) i nadogradio Plasmu na verziju 5.3.95 odnosno 5.4. Osim par novih stvari koje donosi Plasma 5.4, primijetio sam da je sustav nešto brži. Ispravljeni su i mnogi propusti, ali ja se s njima nisam susreo. Najvažnije je da nisam destabilizirao sustav tj. radno okruženje. Međutim, u Dolphinu je i dalje prisutan bug zbog kojeg se ne prikazuju detaljni podaci o datotekama (primjerice EXIF informacije).

Po završetku recenzije, putem nadogradnji stigla je i Plasma 5.4.1.

Koje aplikacije nudi Korora?

Nadogradnja aplikacija

Nadogradnju možete izvršiti na više načina: preko Appera, Yum extendera (DNF), i terminala. Iako je distra namijenjena da olakša korištenje “početnicima”, morat ćete se uhvatiti terminala zbog propusta koji javlja grešku pri preuzimanju nadogradnji (“Error in search for Dependencies”). Bez brige, nije suviše komplicirano. U terminalu kao root pokrenite naredbu dnf update i mirni ste. (DNF me podsjeća na: Did Not Finish 😉 )

Libre Office

Dolazi u verziji 4.4.5.2 u kojoj je i napisana ova recenzija. Ako želite Libre Office verziju 5.X, potrebno ju je ručno skinuti, staru verziju deinstalirati, i instalirati novu. Loša strana tog pristupa je što ćete ubuduće sami morati ažurirati Libre Office na novu verziju.

wget http://download.documentfoundation.org/libreoffice/
stable/5.0.1/rpm/x86_64/LibreOffice_5.0.1_Linux_x86-64_rpm.tar.gz

dnf remove openoffice* libreoffice*

tar -xvf LibreOffice_5.0.1_Linux_x86-64_rpm.tar.gz

cd LibreOffice_5.0.1.2_Linux_x86-64_rpm/RPMS

dnf install *.rpm

Libre Office 5.0.1

Libre Office 5.0.1

Plank dock

Ne dolazi predinstaliran, ali ga možete jednostavno instalirati ako želite ili ako vam treba:

# dnf install plank

Dodajte ga u startup programe, podesite (Plank ikonica), a kasnije možete ukloniti istu ikonicu brisanjem datoteke ~/.config/plank/dock1/launchers/plank.dockitems. Daljnje podešavanje Planka ćete morati odraditi tekstualno, uređivanjem datoteke u navedenoj putanji: ~/.config/plank/dock1/settings.

Problemi: ne radi pomicanje ikonica u docku, tj. dolazi do rušenja Planka. Ako vam to jako smeta, instalirajte drugi dock. Ja sam odabrao Plank zbog minimalne količine zavisnosti (dependencyja).

Chromium

Službeno se ne nalazi u repozitorijima Fedore, a razlog možete pročitati na netu gdje je detaljno objašnjen. Za instalaciju je potrebno učiniti sljedeće:

su -c "wget http://repos.fedorapeople.org/repos/spot/chromium-stable/fedora-chromium-stable.repo -O /etc/yum.repos.d/fedora-chromium-stable.repo"

rpm --import http://repos.fedorapeople.org/repos/spot/chromium-stable/spot.gpg

dnf install chromium

Problemi: kod svakog pokretanja (dok ne odaberete da ne “dosađuje više”), Chromium pita želite li da bude podrazumijevani (defaultni) preglednik. To možete riješiti kroz System Settings→Applications. Ponekad se neke web stranice znaju zamrznuti. U tom slučaju otvorite ili se prebacite u drugi tab, pa se vratite na stranicu koju ste pregledavali. Chromium nema Pepperflash, ali HTML5 uredno radi.

Firefox

Predinstaliran i podrazumijevani web preglednik na Korori. Dolazi s uključenim ekstenzijama: Adblock Plus, DownThemAll i xclear. Flash Player je dostupan u repozitorijima, ali morat ćete ga instalirati sami. Od zamjerki izdvajam samo nešto duže vrijeme pokretanja aplikacije.

Od ostalih aplikacija vrijedi pogledati:
Simple backup system
Firewall
Services
Krusader

Za uređivanje desktopa preporučam:

Pozadina: Lakeside sunrise
Ikonice: masalla
Desktop tema: Blackness (Plasma 5)
Tema prozora: Papirus Dark

Distribucija testirana na sljedećem hardveru:

Toshiba Satellite C660 1MP
Intel Core i3 2310M
4GB RAM-a
SSD Kingstone Hyper X
Boot time: ~ 15 sek

Zaključak

I što reći za kraj?! Iz opisanog iskustva ste vidjeli da Korora ima neke svoje “mušice” kojima uzrok može biti Fedora, Plasma 5 ili nešto treće…no s druge strane, ako niste do sada koristili Fedoru ili još niste isprobali Plasma 5 radno okruženje, onda je Korora dobra i preporučljiva distribucija da jednim udarcem riješite dvije muhe.

Pinguy Builder – povratak Remastersysa

$
0
0

Stariji se korisnici zasigurno s nostalgijom sjećaju jednostavnog programa imenom Remastersys često korištenog za izradu vlastite remastered distribucije.

 

Stariji se korisnici zasigurno s nostalgijom sjećaju programa imenom Remastersys. Radilo se o nadasve jednostavnoj, ali nevjerojatno korisnoj aplikaciji za brzu i laku izradu sigurnosnih kopija i .iso slika vlastite distribucije. Unatoč tomu što je podržan samo za Debian/Ubuntu, u Linux svijetu je postao popularan po sasvim drugoj namjeni: izradi vlastite (remastered) distribucije.

Iako prvotno zamišljen kao program za backup, postupno je postao hvaljen i omražen. Ubuntuovi korisnici su ga obožavali jer su bez pretjeranog truda, čak i s vrlo skromnim tehničkim znanjem, mogli stvoriti svojim potrebama i ukusima prilagođenu distru. “Ali to nije nikakav fork! Promjena pozadinske slike Ubuntua nije nova distra, već remasterizirana verzija!” – često su znali negodovati stariji i konzervativniji korisnici.

Istini za volju, vjerojatno je upravo Remastersys zaslužan za pravu poplavu ubuntoida. Gotovo se svatko mogao pohvaliti autorstvom neke opskurne distre, koja čak ni nema vlastite repoe a podršku da ni ne spominjemo, koju je koristio samo on i možda nekolicina prijatelja. Međutim, većina trendova kratko traje završi i biva zaboravljena. Ipak, poneki eksperimeni kućne radinosti mogu prerasti u ozbiljne i danas respektabilne projekte.

Sasvim neočekivano, razvoj Remastersysa je prekinut, a projekt naglo ugašen. Danas se njegovi tragovi mogu pronaći tek u zabačenim kutcima Interneta ali sjećanja su još uvijek poprilično živa. Upravo tim tragom su krenuli i razvijatelji Pinguy OS-a koji ga koriste za kreranje vlastite distre.
Remastersys je dobio novi fork pod nazivom “Pinguy Builder”. U osnovi se radi o .deb paketu sa skriptom i GUI-em koji kreira instalacijski live CD na temelju vaše distribucije (Debian/Ubuntu). Moguće ju je koristiti za izradu sigurnosne .iso slike vlastitog sustava, koja se može pohraniti ili dalje distribuirati (posebno korisno pri instalaciji na veći broj računala). Ili se jednostavno možemo poigrati i napraviti vlastitu remasteriziranu inačicu Ubuntua.

 

1 Pinguy Builder

Pinguy Builder – instalacija. Skripta automatski preuzima potrebne zavisnosti s neta

 

Pinguy Builder - glavni prozor

Pinguy Builder – glavni prozor

 

Opcija “Backup” omogućava stvaranje sigurnosne kopije instalirane distre u što je uljučen i /home folder, vlastita lozinka, kao i sve osobne postavke. Druga opcija “Dist” će stvoriti backup bez /home foldera ili osobnih postavki. U oba slučaja stvara se instalacijska .iso slika koja se može snimiti na CD/DVD ili instalirati putem live USB-a.

Novi Pinguy Builder se može pohvaliti i novostima:

  • potpuna podrška za EFI,
  • podrška za Ubuntu 14.04 LTS i 15.04,
  • bolja kompresija .iso slike,
  • dodane nove opcije.

Razvijatelji napominju kako Pinguy Builder 3 najbolje radi na Ubuntu 14.x, dok verzija 4 surađuje s Ubuntuom 15.x. Dodatne informacije kao i .deb paket možete pronaći na službenim stranicama.

Nadogradnja UEFI firmwarea uskoro na Linuxu

$
0
0

Linux Vendor Firmware Service (LVFS) korisnicima Linuxa omogućava nadogradnju vlasničkog firmwarea.

 

Četverogodišnjom intenzivnom suradnjom Della, Red Hata, Intela i Canonicala završen je projekt nazvan Linux Vendor Firmware Service (LVFS). Radi se skupu alata i servisa otvorenog koda koji omogućuju nativnu nadogradnju firmwarea na Linux sustavu.

Korištenjem takozvane UEFI Capsule tehnologije (dostupno od UEFI 2.5) krajnjim se korisnicima omogućava brza i jednostavna nadogradnja firmwarea UEFI BIOS-a, ali i ostalog hardvera. Time su lako dostupne dodatne opcije i funkcionalnosti, ispravci bugova, kao i poboljšanje kompatibilnosti s kernelom. U osnovi, LVFS će funkcionirati po uzoru na tradicionalni Driver Manager za očitavanje hardvera, preuzimanje, instalaciju i reinstalaciju firmwarea. Red Hat je već oformio središnji repozitoriji za proizvođače hardvera, razvijatelje i krajnje korisnike koji će koristiti  Linux Vendor Firmware Service.

 

gnome-software1

Gnome Software očitava dostupne nadogradnje. Izvor: https://secure-lvfs.rhcloud.com/users

 

gnome-software2

Gnome Software očitava firmware i dostupne nadogradnje. Izvor: https://secure-lvfs.rhcloud.com/users

 

 

LVFS obuhvaća skup alata:

  • Centralizirani firmware hosting za proizvođače hardvera, razvijatelje i krajnje korisnike;
  • Gnome Software – grafičko sučelje za fwupd;
  • fwupd – firmware daemon koji kreira popis komponenti (D-BUS API) koje je moguće nadograditi, brine o preuzimanju i instalaciji firmwarea;
  • fwupdmgr – komandno-linijski program za fwupd;
  • appstream-glib – upravlja CAB datotekama (sadrže nadogradnje; moguće ih je zasebno preuzeti i pokrenuti dvostrukim klikom miša);
  • fwupdate – upravlja sa UEFI Capsule, sprema ih na disk, te ih pokreće tijekom pokretanja čitavog sustava;
  • podršku za Linux Kernel 4.2+.

 

Iako je čitav projekt još uvijek u testnoj fazi, LVFS moguće je pronaći u novoj Fedori 23, Debianu Unstable i Ubuntu 15.04, a po prvi puta će biti službeno predstavljen u nadolazećem Dell Edge Gateway 5000. Korisnicima Linuxa ovime je po prvi puta omogućena nadogradnja firmwarea bez prisilnog korištenja Windowsa i njegovih alata.

Ovaj projekt otvorenog koda omogućava dugo očekivanu kvalitetnu podršku za vlasnički hardver, kao i veću razinu sigurnosti. Nadogradnje imaju vlastiti sigurnosni potpis, GPG ključ i checksum, a instalacija s root ovlastima uvelike sprječava backdoor pristup.

Za dodatne informacije posjetite službenu web stranicu ili preuzmite izvorni kod.

 

 

Izvori: en.community.dell.com, secure-lvfs.rhcloud.com

Linux Mint hakiran – korisnicima se preporučuje oprez

$
0
0

Clem Lefebvre je na službenom blogu objavio da je hakirana službena stranica, Mint 17.3 Cinnamon ISO modificiran, te se korisnicima preporučuje izniman oprez.

 

Jučer, 20. veljače, hakirana je službena stranica Linux Minta. Mint 17.3 Cinnamon ISO je modificiran, u njega je ubačen backdoor, te je kao takav ponovno postavljen na Mintove poslužitelje. Korisnici koji su navedeno izdanje preuzeli 20. veljače jedini su izloženi, te im se preporučuje izniman oprez. Ostali korisnici koji su ranije preuzeli bilo koje drugo Mintovo izdanje ili “okus” nisu izloženi riziku.

 

Ukoliko ste jučer preuzeli Mint 17.3 Cinnamon ISO, hitno provjerite md5sum:

6e7f7e03500747c6c3bfece2c9c8394f  linuxmint-17.3-cinnamon-32bit.iso

e71a2aad8b58605e906dbea444dc4983  linuxmint-17.3-cinnamon-64bit.iso

30fef1aa1134c5f3778c77c4417f7238  linuxmint-17.3-cinnamon-nocodecs-32bit.iso

3406350a87c201cdca0927b1bc7c2ccd  linuxmint-17.3-cinnamon-nocodecs-64bit.iso

df38af96e99726bb0a1ef3e5cd47563d  linuxmint-17.3-cinnamon-oem-64bit.iso

 

U navedeno izdanje je ubačen backdoor kojeg lako možete pronaći:

/var/lib/man.cy

 

Ukoliko ste jučer preuzeli Mint 17.3 Cinnamon, md5sum vam se ne poklapa ili ste pronašli “man.cy” backdoor, što prije obrišite ISO datoteku. Na sigurno pohranite vlastite podatke, a nakon toga particije na koje ste instalirali navedeni sustav preformatirajte. Ovisno o metodi instalacije, instalacijski USB preformatirajte, a DVD uništite. Preporučuje se i promjena lozinki za web stranice, kao i pridržavanje općih pravila za siguran rad i održavanje računala.

Napad je izveden s IP adrese iz Sofije (Bugarska), a backdoor se spaja na stranicu koja je također hostana u Sofiji. Zasad su poznata imena triju odgovornih osoba, te će biti prijavljeni lokalnim vlastima i tvrtkama zaduženima za sigurnost. Motivi niti razmjeri štete još nisu poznati. Službena stranica Linux Minta, kao i kompromitirani poslužitelji, su ugašeni a pregled i popravci su u tijeku.

Clem je otkrio kako se službena stranica i dosad uglavnom bila izložena DDS napadima. Ovoga puta proboj je izvršen kroz WordPress odakle su hakeri došli do www-data shella.

Iako sve korisnike poziva na oprez, Clem ističe kako su torrent i HTTP poslužitelji potvrđeni kao sigurni. Ukoliko želite preuzeti ISO sliku, učinite to sa HTTP poslužitelja ovdje. I ne zaboravite provjeriti md5 checksum!

 

Nadopuna:

U najnovijoj objavi Clem upozorava sve korisnike registirane na službenom Linux Mint forumu da što prije promijene svoje privatne podatke (korisničko ime, lozinku, e-mail adresu i sl.). Naime, tijekom jučerašnjeg napada hakeri su se uspjeli domoći baze podataka čitavog foruma, zbog čega se korisnicima savjetuje da što prije zaštite vlastitu privatnost i sigurnost.

Podsjetimo, napad se dogodio iskorištavanjem propusta WordPressa čime su hakeri stekli pristup i kontrolu nad glavnim poslužiteljem. Ukraden je www-data, te je kompromitirana ISO slika Minta 17.3 Cinnamon u koju je ubačen backdoor. Izmjenjena ISO slika je postavljena na centralni poslužitelj, te je adresa glavne stranice (kao i backdoor) preusmjerena na zloćudni web server hostan u Bugarskoj (IP: 5.104.175.212). Zloćudni kôd je zapravo trojanac nazvan “TSUNAMI” i ne predstavlja novost. Njegov izvorni kod možete pronaći ovdje.

Kako pobliže doznajemo, na Dark Web stranici za razmjenu ilegalnog sadržaja pojavio se post koji nudi na prodaju “Linuxmint.com shell, php mailer, and full forum dump” za 0.1910 Bitcoina (približno 85$). Ubrzo su, kako se čini, ukradeni podaci i prodani, a dio kôda konfiguracijske datoteke Mintovog foruma je objavljen na Hacker News.

 

LinuxZaSve, s prijateljima okupljenima u zajednicu, zajednički oštro osuđuje napad na Linux Mint. Sve naše korisnike, kolege i prijatelje – bez obzira na razinu poznavanja i korištenja Linuxa i otvorenog kôda – potičemo i usmjeravamo na kreativnost i istraživanje isključivo radi iskrene volonterske međusobne pomoći i razmjene iskustava. Otvoreni kôd promičemo i koristimo za projekte koji će doprijenti svim korisnicima bez iznimke, a stečeno znanje prenosimo drugima.

Linux nije hakerski alat! Znanje treba biti otvoreno i dostupno svima! Zajedno gradimo sigurniji svijet!

 

Izvori: blog.mint.com, news.softpedia.com

Smart card SSH autentikacija

$
0
0

Smart card je mali elektronički sklop s datotečnim sustavom i podrškom za različite kriptografske funkcije. Glavna namjena im je sigurna pohrana privatnog ključa.

 

Ako koristite Linux, gotovo sigurno koristite i SSH za udaljeni pristup nekom računalu, uređaju ili servisu. Za SSH autentikaciju mogu se koristiti kombinacija korisničkog imena i lozinke ili par ključeva, tzv. privatni i javni. Preporuča se autorizacija korištenjem javnog ključa jer je sigurnija. Još veću razinu sigurnosti možemo postići generiranjem i čuvanjem privatnog ključa na kriptografskom uređaju (smart card).

Lozinku je moguće presresti korištenjem keyloggera, a podložna je i brute-force napadu. Kod ključeva nema ovakvih problema. Javni ključ slobodno dijelite okolo. Privatni ključ čuva se u datoteci, dodatno ga je moguće zaštititi lozinkom, a kod autentikacije se nikad ne prenosi na udaljeno računalo. Ovaj članak detaljnije opisuje logiku i način korištenja ključeva, dok ovdje možete pročitati više o njihovom korištenju u SSH kontekstu. U ostatku članka pretpostavlja se da samostalno možete konfigurirati SSH za autentikaciju javnim ključem.

Smart card je mali elektronički sklop s datotečnim sustavom i podrškom za različite kriptografske funkcije. Količina podataka koja se na njima može pohraniti, podrška za različite standarde i opseg funkcija razlikuje se među pojedinim uređajima. Glavna namjena im je sigurna pohrana privatnog ključa. Naime, ključevi se mogu generirati izravno na kartici te se privatnom ključu može postaviti atribut koji ne dozvoljava kopiranje izvan kartice. Kad aplikacije pristupaju privatnom ključu, čine to kroz sučelje te mu nikad ne pristupaju izravno.

Pristup privatnom ključu dodatno je zaštićen PIN-om. Nakon nekoliko (obično 3 ili 5) neuspješnih unosa PIN-a kartica će se zaključati i onemogućiti daljnji pristup privatnom ključu. Otključava se unosom PUK-a tj. koda za otključavanje. Smart card se koristi u većim sustavima i to uglavnom za pohranu digitalnih certifikata za autentikaciju i elektronički potpis, primjerice za e-bankarstvo i državne e-usluge. Uređaj koji možete koristiti na Linux distribucijama novijeg datuma je Feitian ePass2003. Trenutno je dostupan u web shopu proizvođača po cijeni od 70 USD za komplet od 5 komada. Na predstojećoj DORS/CLUC konferenciji, tvrtka Ultima će podijelit 12 uređaja, tako da se svakako unaprijed javite ako želite pribaviti primjerak za testiranje.

 

Feitian ePass2003

Feitian ePass2003. Izvor: http://www.ftsafe.com/product/epass/epass2003

 

 

Driver za ePass2003 sadržan je u paketu OpenSC. Osim njega ćete trebati i PC/SC daemon  za komunikaciju s čitačem/karticom. Daljnje upute za instalaciju odnose se na Linux Mint 17.x, s tim da bi razlike na ostalim distribucijama trebale biti minimalne – drukčiji nazivi paketa i lokacije instaliranih datoteka. Naše iskustvo s ePass2003 uređajem počelo je s ovim blog postom te ovom prilikom zahvaljujemo njegovom autoru!

Instalacija potrebnih paketa:

$ sudo apt-get update
$ sudo apt-get install opensc pcscd

 

Provjera sadržava li instalirani opensc paket ePass2003 driver (aplikacija mora ispisati jednu liniju):

$ opensc-tool –list-drivers | grep epass2003
epass2003        epass2003

 

Ispis priključenih smart card čitača:

$ opensc-tool –list-readers
# Detected readers (pcsc)
Nr.  Card  Features  Name
0    Yes             Feitian ePass2003 00 00

 

Ako aplikacija ne prepoznaje priključeni uređaj, pcscd daemon vjerojatno nije pokrenut. Kod rada s kriptografskim uređajem pcscd mora uvijek biti pokrenut.

Brisanje trenutnog sadržaja na uređaju:

$ pkcs15-init –erase-card
Using reader with a card: Feitian ePass2003 00 00

 

Kreiranje datotečnog sustava prema PKCS#15 standardu:

$ pkcs15-init –create-pkcs15 –profile pkcs15+onepin –label “Ime Prezime”
Using reader with a card: Feitian ePass2003 00 00
New User PIN.
Please enter User PIN:
Please type again to verify:
Unblock Code for New User PIN (Optional – press return for no PIN).
Please enter User unblocking PIN (PUK):
Please type again to verify:

 

Napomene: PIN i PUK mogu sadržavati do 16 alfanumeričkih znakova. Obavezno upisati PUK iako je opcionalan – u protivnom se operacija neće uspješno izvršiti. Pod “Ime Prezime” upišite svoje ime i prezime, tako da kasnije možete prepoznati čiji je uređaj ukoliko imate više istih.

 

Generiranje para ključeva duljine 2048 bita:

$ pkcs15-init –auth-id 1 –generate-key rsa/2048 –key-usage sign,decrypt –label “ime_prezime_ssh01”
Using reader with a card: Feitian ePass2003 00 00
User PIN [User PIN] required.
Please enter User PIN [User PIN]:

 

Pod label upišite nešto smisleno prema čemu ćete kasnije prepoznati za što se ključevi koriste. Opcija –auth-id 1 odnosi se na prethodno kreirani PIN objekt.

Ispis svih objekata pohranjenih na kartici:

$ pkcs15-tool –dump
Using reader with a card: Feitian ePass2003 00 00
PKCS#15 Card [Darko Topolko]:
Version        : 0
Serial number  : 20940C8880028010
Manufacturer ID: EnterSafe
Last update    : 20160509120429Z
Flags          : EID compliant

PIN [User PIN]
Object Flags   : [0x3], private, modifiable
ID             : 01
Flags          : [0x32], local, initialized, needs-padding
Length         : min_len:4, max_len:16, stored_len:16
Pad char       : 0x00
Reference      : 1 (0x01)
Type           : ascii-numeric
Path           : 3f005015

Private RSA Key [darko_topolko_ssh02]
Object Flags   : [0x3], private, modifiable
Usage          : [0x2E], decrypt, sign, signRecover, unwrap
Access Flags   : [0x1D], sensitive, alwaysSensitive, neverExtract, local
ModLength      : 2048
Key ref        : 0 (0x0)
Native         : yes
Path           : 3f0050152900
Auth ID        : 01
ID             : d6eb88c861bdb24f6e196beaf2dc70312a165df2
GUID           : {1d025f0f-fe44-16fb-5cfd-cbae53eb5b73}

Public RSA Key [darko_topolko_ssh02]
Object Flags   : [0x2], modifiable
Usage          : [0xD1], encrypt, wrap, verify, verifyRecover
Access Flags   : [0x0]
ModLength      : 2048
Key ref        : 0 (0x0)
Native         : no
Path           : 3f0050153000
ID             : d6eb88c861bdb24f6e196beaf2dc70312a165df2
DirectValue    : <absent>

 

Ispis javnih ključeva:

$ pkcs15-tool –list-public-keys
Using reader with a card: Feitian ePass2003 00 00
Public RSA Key [darko_topolko_ssh02]
Object Flags   : [0x2], modifiable
Usage          : [0xD1], encrypt, wrap, verify, verifyRecover
Access Flags   : [0x0]
ModLength      : 2048
Key ref        : 0 (0x0)
Native         : no
Path           : 3f0050153000
ID             : d6eb88c861bdb24f6e196beaf2dc70312a165df2
DirectValue    : <absent>

 

Ekstrakcija javnog ključa u obliku koji se može koristiti u datoteci authorized_keys. Upisati ID javnog ključa prikazanog pomoću pkcs15-tool –dump ili pkcs15-tool –list-public-keys:

$ pkcs15-tool –read-ssh-key d6eb88c861bdb24f6e196beaf2dc70312a165df2
Using reader with a card: Feitian ePass2003 00 00
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdpfgIEPWsb07vNgCic7umKRSDn3rbq2wER+SSW5 iIkH3fbZeCNfyXUmQeZgMqZNCLQ8qLzxQIy9PzKOq2ch6hm5E1eYgBpO0/qEFwYuLU0wtjB2ENy3jF4 LHsMKGnEt5Cw2mQupBysu0Iw982EMVCfLIZek6DbUVSCMG2Em5N5aVwTMc5MfIJ3Za1y5ScOClPN0 UZlmfkh9Fm6a5+W2Q8TcZ2YjXVAR4W8jBI5whfzRJazZ9YFaLGHh8usBmVzz4QuW0uYnF5dO7ps4gdi MBuuWusTSLwSQ9uv/0K0RlYJG3mFpuLVS5wBgZOHH1L7Sw2r8jj8EGcig/zEJ68/5Rx

 

SSH ključ dodati u ~/.ssh/authorized_keys na udaljenom računalu. Prijavite se sa SSH:

$ ssh -I opensc-pkcs11.so user@host

 

Kako bi izbjegli upisivanje -I opensc-pkcs11.so svaki put, dodati liniju:

PKCS11Provider opensc-pkcs11.so

… u datoteku ~/.ssh/config (lokalno). Na ovaj će način SSH svaki put kod prijave provjeriti postoji li ključ na kriptografskom uređaju.

 

I to je to!

Dodatni bonus ovako postavljenog sustava jest činjenica da se s istim privatnim ključem možete prijavljivati s više različitih računala, bez da ga morate kopirati na više mjesta. S kriptografskim uređajem možete i puno više. SSH autentikacija jedna je od jednostavnijih primjena.

Prethodno su spomenuti digitalni certifikati. ePass2003 može koristiti XCA za sigurnu pohranu ključeva. XCA je desktop aplikacija za kreiranje i upravljanje X.509 certifikatima. Pomoću nje možete formirati svoj PKI. Certifikate generirane kroz XCA i pohranjene na ePass2003 na Linuxu možete koristiti kao klijentske certifikate za autentikaciju s OpenVPN aplikacijom te s Mozilla Firefox i Google Chrome preglednicima.

 

 

Autor: Darko Topolko

Osnove NAS i SAN sustava (i malo više) – prvi dio

$
0
0

U seriji članka autor Hrvoje Horvat upoznat će nas s osnovama i načinom rada NAS, SAN, ZFS i složenih klasterskih poslužitelja, te će podijeliti brojne korisne savjete iz praktičnog iskustva.

Kolega Hrvoje Horvat član je udruge Open Source Osijek na čijim je mrežnim stranicama tekst izvorno objavljen. Prvi članak donosi osnove NAS i SAN sustava, kao i savjete za njihovo postavljanje.

 

 

Što su NAS sustavi?

NAS (eng. Network Attached Storage) odnosno “mrežno spojena spremišta podataka” osiguravaju nam prostor za spremanje podataka preko mreže. Ovo su zapravo mrežni dijeljeni sustavi za spremanje podataka koji rade na razini datoteka (i, naravno, direktorija) koje pohranjujemo na njih i to putem mrežnih protokola za dijeljenje datoteka.

 

Svako dijeljenje datoteka preko mreže (eng. Network Share), korištenjem nekog od mrežnih protokola koji postoje za tu namjenu možemo nazvati upotrebom NAS sustava.

 

Dijeljeni pristup datotekama preko mreže omogućavaju nam sljedeći mrežni protokoli. Navesti ćemo one najčešće u upotrebi:

  • NFS (Network Files System) – koristi se uglavnom na Linux/Unix operacijskim sustavima (ili ponekad u Windows okruženju). Open source varijanta podrazumjeva korištenje nekog od nfs daemona (servisa).
  • SMB/CIFS (Server Message Block / Common Internet File System) – koristi se uglavnom na Windows ili Linux okruženjima. Koristi se osim za dijeljenje datoteka i za dijeljenje pisača i drugih uređaja, te dodatnih funkcionalnosti, preko mreže.
    • Open source riješenje se zove samba.
    • Windows Share je integriran u sve Windows operacijske sustave s ograničenjem od maksimalno 10 paralelnih (otvorenih) konekcija na Windows dijeljeni direktorij ako se radi o verziji Windowsa koja NIJE: Windows Server: 2003/2003 R2/2008/2008 R2/2012/2012 (R2).
  • AFP (Apple Filing Protocol) – koristi se za dijeljenje datoteka na Mac OS računalima.
  • Istoj kategoriji pripadaju i FTP (File Transfer Protocol) i TFTP (Trivial File Transfer Protocol) protokoli, s time da su oni jednostavniji i nemaju naprednije mogućnosti kao gore navedeni.
  • Često se koristi i WebDAV (Web Distributed Authoring and Versioning) koji je svojom funkcionalnošću negdje između FTP i gore navedenih protokola.
  • Brojni ostali.

 

Najosnovniji primjer upotrebe sustava za koji bi mogli reći da je neka vrsta NAS sustava bi bio klasično dijeljenje nekog direktorija preko mreže iz Windows OS-a. Nešto poput dijeljenja (eng. Sharing) ovog direktorija (D:\BKP) na slici:

 

Windows Sharing

 

 

U slučaju upotrebe na Windows operacijskom sustavu sve se za jednostavno mrežno dijeljenje svodi na odabir željenog direktorija te njegovog dijeljenja preko SMB/CIFS sustava.

Ako govorimo o “samostalnom” NAS sustavu odnosno uređaju pod nekom od varijanti Unix ili Linux operacijskih sustava, ova procedura se u konačnici uglavnom svodi na nekoliko koraka:

  1. Kreiranje nekog RAID polja diskova koje ćemo dalje koristiti kao jedan “logički” disk,
  2. Particioniranje “logičkog” diska koji ćemo koristiti za dijeljenje datoteka,
  3. Formatiranje kreiranih particija (Linux ext3/4, Linux XFS, Windows NFS ili sl. – ovisno o operacijskom sustavu NAS uređaja i našim potrebama),
  4. Mountanje formatirane particije u neki direktorij,
  5. Odabir mountanog direktorija te konfiguracija i aktivacija nekog od mrežnih protokola za dijeljeni pristup preko mreže – pogledajte niže opisane (NFS, SMB/CIFS, AFP ili sl.).

 

 

Osnovne pretpostavke i planiranje za NAS ili SAN sustav

1. Korak: Kod odabira NAS ili SAN sustava odnosno poslužitelja najprije moramo biti svjesni zahtjeva za softverom (operacijskima sustavom). Operacijski sustav za NAS ili SAN može biti:

  1. Specijalizirani open source OS poput:
    • OpenFiler,
    • OpenMediaVault,
    • FreeNAS,
    • Nas4Free,
    • NexentaStor (Nexenta Community Edition),
  2. … ili neko od komercijalnih rješenja za NAS/SAN:
    • NexentaStor (Nexenta Enterprise Edition),
    • TrueNAS,
    • Open-e,
  3. … ili OS za opću upotrebu koji ćemo dodatno konfigurirati prema našim potrebama:
    • Neka Linux distribucija koju želimo prilagoditi našim potrebama,
    • Windows server koji već imamo te ga želimo optimizirati ili prenamijeniti za NAS/SAN sustav,
    • Nešto drugo.

Postoje i gotovi “samostojeći” uređaji koji dolaze zajedno s operacijskim sustavom. Proizvode ih: EMC2, IBM, Dell, NetApp i drugi (oni nisu tema ove priče ).

 

2. Korak: Nakon što smo odabrali operacijski sustav za NAS ili SAN poslužitelj, moramo biti svjesni i njegovih zahtjeva za hardverom:

  • Koji CPU će zadovoljiti naše potrebe,
  • Koliko RAM memorije (i koji tip),
  • Koje mrežne kartice: 1Gbps ili 10Gbps, koji modeli (chipovi) i koliko ih je potrebno (jedna, dvije, tri, …),
  • Koji mrežni preklopnik (switch) odabrati, s kojom verzijom firmware-a (OS-a) i s kojim funkcionalnostima. Za više detalja pogledajte članak “Switching i routing: jučer, danas, sutra”,
  • Koji RAID kontroler, s koliko RAM memorije, BBU i sl. odabrati,
  • Koje tvrde diskove odabrati.

 

Nakon planiranja resursa koji će nam trebati, potrebno je revidirati točku 2.

Budući da govorimo o NAS i SAN sustavima, u nastavnu ćemo se detaljnije fokusirati na dio o RAID kontrolerima i diskovima, jer bi bez njihovog dobrog odabira kasnije u radu često dolazilo do problema ili (što je najgore) gubitka podataka, a tek to bi mogli vrlo skupo platiti ($$$).

 

 

Zbog čega RAID kontroler i tolika pažnja pri odabiru diskova?

Krenimo od diskova. Diskovi se u grubo dijele prema namjeni. U svakom slučaju želimo diskove koji su pouzdani ali i koji su proizvedeni za tzv. serversku namjenu u kombinaciji s RAID kontrolerima. Budite svjesni činjenice da postoje i “serverski” diskovi koji nisu dizajnirani odnosno optimizirani za rad s RAID kontrolerima. Za više detalja pogledajte knjigu “Uvod u Linux i Linux napredno”, poglavlje: “Podjela prema namjeni diskova”.

RAID kontroleri su svakako priča za sebe, ali svakako želimo imati pošteni hardverski RAID kontroler provjerenoga proizvođača. Dodatno, važna je i verzija firmware-a za RAID kontroler u kombinaciji s driverom za operacijski sustav na kojemu ga koristite. U praksi su se čak i kombinacije određenih verzija firmware-a i drivera, kao i kombinacije firmware RAID kontrolera i firmware-a drugih komponenti poslužitelja (npr. matične ploče), pokazale katastrofalnim odabirom.

Zaključak: treba si dati malo truda i proučiti što kupujemo (kao i komentare korisnika) za što konfiguraciju sličnu vašoj: OS, driveri (RAID, LAN, MB, …), firmare, softver, …

Cjenovni opseg “poštenih” RAID kontrolera (ovisno o broju diskova koje možete spojiti na njega), kreće se od minimalno tisuću KN na više. Sve jeftinije od toga, kao i odabir tzv. “integriranih RAID” kontrolera na matičnim pločama (osim ako su u pitanju prave serverske matične ploče od 5.000+ KN), nemojte niti pomišljati koristiti. Za više detalja pogledajte poglavlje “hardverski RAID”.

 

Rješenje prvo: Integrirana RAID rješenja

U ovim “integriranim” kombinacijama dobivate upravljački program (driver) i pripadajući softver, koji:

  • je loše dokumentiran ili
  • se jako rijetko održava ili
  • je pun grešaka,
  • u slučaju katastrofe nema definirane korake (što i kako) ili su oni nejasni (a uglavnom i ne rade).

Kod rješenja ovog tipa zapravo ne postoji pravi hardverski RAID kontroler nego se većina ili gotovo sve funkcionalnosti RAID kontrolera odrađuju unutar upravljačkog programa (drivera) koji se pretvara da je RAID kontroler. On operacijskom sustavu prijavljuje RAID polje diskova o kojem se brine kao jedan fizički disk – slično kako bi to napravio i pravi RAID kontroler.

Na kraju sve je zapravo prepušteno navedenom softveru (driveru) i operacijskom sustavu, pa što bude. Nakon nekog vremena obično se dogodi situacija: “Nešto ne radi. A kako da vratimo svoje podatke…?”. E, pa lijepo sam vam rekao.

Na kraju priče s krivim odabirom tehnologije ili uređaja uvijek završite sa slanjem diskova u neku od tvrtki specijaliziranih za povrat podataka. Ova zabava će vas obično koštati znatno više nego da ste odmah kupili možda i najskuplje komponente koje postoje na (našem) tržištu.

Povrat odnosno spašavanje podataka se često naplaćuje po GB, pa cifre vrlo brzo mogu narasti na desetke tisuća KN.

 

Rješenje drugo: Logical Volume Manager

Zaboravimo na “integrirane RAID” kontrolere. Prihvatljivija opcija je upotreba tzv. “Logical Volume Managera” unutar operacijskog sustava (govorimo o Linuxu). U Linuxu se radi o Logical Volume Manageru verzije 2 (LVM2). Za više detalja o LVM2 pogledajte poglavlje LVM2. I ovdje se radi o softverskom RAID-u odnosno njegovoj funkcionalnosti. Ipak, ovo je puno sigurnije i stabilnije rješenje od onoga koje dobivamo s upotrebom “Integriranih RAID kontrolera” na matičnim pločama za stolna računala (tj. neserverskim matičnim pločama). Ovo je dokazano rješenje koje koristi velika zajednica ljudi, a koje se razvija s otvorenim kodom čime se svaka novootkrivena greška vrlo brzo popravlja. Uz to, dokumentacija je vrlo detaljna te postoje dobro definirane procedure u slučaju havarije (što i kako napraviti u pojedinom slučaju).

 

Zbog čega je ipak bolji hardverski RAID kontroler i pripadajuće RAID polje?

Upravo stoga što će vam na budućem NAS ili SAN sustavu biti pohranjeni važni podaci. Stoga ne želite da se sve snima na samo jedan tvrdi disk već na više njih i to u RAID polju koje vam osigurava najbolji odnos:

  • sigurnosti podataka (koliko kopija podataka želite – na dva, tri ili više tvrdih diskova istovremeno),
  • brzine rada,
  • brze zamjene neispravnog diska i povratka u normalan rad,
  • lakoće proširenja kapaciteta RAID polja.

Dodatno, želite RAID kontroler jer nije pametno prepustiti nekom traljavom programčiću (mislim na “Integrirana RAID rješenja”) da vam odrađuje ovako važne zadatke pohranjivanja vama osjetljivih i za život tvrtke važnih podataka. Istodobno, želite iskoristiti hardversku snagu pravog RAID kontrolera koji ne opterećuje sustav (CPU/RAM) pošto ima svoj specijalizirani CPU i pripadajuću RAM memoriju. Dakle, želite ozbiljan zadatak oko RAID-a prepustiti tvrtki koja RAID kontrolere proizvodi profesionalno, kao i njihov pripadajući firmware/softver. Neka najbolji proizvođač specijaliziranog hardvera i softvera zaradi na onome što radi najbolje.

 

Odabir RAID polja

Kao što je i odabir dobrog RAID kontrolera važan, važno je i pravilno odabrati RAID polje, ovisno o vašem budžetu i potrebama. Sada ponovno bacite pogled na RAID polja u već navedenoj knjizi, u poglavlju: “Koja su najčešća RAID polja u upotrebi i koje su im prednosti i mane“. Ovdje donosimo samo nekoliko često korištenih RAID polja):

 

odabir-raid-polja

 

Na kraju, zbog čega tolika priča o diskovima, RAID kontrolerima i RAID poljima?

Kada smo kreirali neko RAID polje (na RAID kontroleru, po mogućnosti) sljedeće na redu je upotreba tog RAID polja odabirom nekog mrežnog protokola za NAS (NFS, SNB/CIFS, AFP ili dr.) ili SAN, preko kojeg dijelite podatke preko mreže (vrlo jednostavno 😀 ).

 

 

A što je SAN sustav?

SAN (Storage Area Network) sustavi s druge strane ne nude mrežno dijeljenje datoteka, već nam osiguravaju mrežni pristup tzv. “Block-based” mediju. To u praksi znači da SAN sustavi preko mreže praktično dijele svoje diskove ili polja diskova vidljiva klijentskoj (drugoj) strani kao “običan tvrdi disk”. Nadalje, takav disk se sastoji od blokova podataka kao i bilo koji lokalni ATA, SATA, SAS ili neki drugi disk. Za više detalja o diskovima pogledajte knjigu “Uvod u Linux”, poglavlje o diskovima.

Za ovakvo mrežno dijeljenje praktično “sirove” površine diska, potrebi su mrežni protokoli koji nam osiguravaju ovakav pristup. Neki od SAN protokola su:

  • Fibre Channel,
  • iSCSI,
  • ATA over Ethernet (AoE),
  • HyperSCSI.

Nakon što se klijent preko nekog od gore navedenih SAN protokola spoji (na površinu diska), takav disk se mora prvo particionirati i formatirati kao da se radi o lokalnom disku odnosno disku spojenom na vaše lokalno računalo.

 

 

Zbog čega uopće koristiti NAS ili SAN sustave?

Zašto bi uopće koristili ovakve sustave?

  • Zbog potrebe za izradom sigurnosnih kopija vaših podataka (backup), na centralni mrežni uređaj (obično NAS):
    • koji bi morao (i obično je) biti znatno sigurniji jer u pravilo snima podatke na više diskova istovremeno (obično koristi neko RAID polje),
    • i ima sve ostale komponente kvalitetnije i pouzdanije od “običnog” računala.
  • Zbog centraliziranog pohranjivanja i upotrebe. Dakle želimo centralizirano mjesto za pohranu:
    • Svih podataka (datoteka) s kojima radimo,
    • Virtualnih računala, što je preduvjet za bilo koji rad u klasteru u slučaju potrebe za redundancijom (otpornosti na kvar pojedinog poslužitelja ili njegovog održavanja odnosno nadogradnje).
  • Zbog pohranjivanja sigurnosnih kopija virtualnih računala i drugih podataka (pr. dokumenti, slike, …) i to dnevno, tjedno, mjesečno, polugodišnje ili godišnje.

 

NAS i SAN sustavi, osim čiste pohrane podataka, imaju (i moraju imati) i cijeli niz drugih naprednih mogućnosti koje su vrlo važne za ovu namjenu odnosno upotrebu.

 

Koje opcije bi najminimalnije morali imati NAS/SAN sustavi?

Praćenje:

  • Performansi sustava,
  • RAID kontrolera i svih njegovih polja,
  • Svakog pojedinog diska (performanse ali i što je još važnije grešaka u radu),
  • Servisa/daemona,
  • Mreže i mrežnih komponenti.

Napredne opcije:

  • Firewall,
  • Naprednu konfiguraciju mreže:
    • VLAN-ovi,
    • Agregacija/Bonding – i to nekoliko mogućnosti i protokola,
  • Mogućnost replikacije podataka na sekundarni NAS/SAN sustav,
  • Izradu “snapshota” – u zadanim vremenskim okvirima i ručno a koja je po mogućnosti vidljiva i direktno u operacijskom sustavu klijenata (npr. kao Windows “Previous Versions”),
  • Optimizacija svake važnije komponente sustava,
  • Prava pristupa: kreiranje korisničkih grupa kao i pojedinačnih korisnika, uz mogućnost integracije s Active Directory ili LDAP servisima.

 

Sve ove “napredne” opcije i parametri vrlo su važni u realnim radnim uvjetima. Naime, svaka mreža i IT sustav su specifični i imaju specifične potrebe. Većina IT sustava je otvorena i za mnoge optimizacije (jer ih obično nitko i nije optimizirao, barem ne na profesionalan način). Mnogi će se zapitati da li je ovo stvarno potrebno. U praksi (s kojom sam se sam susreo) reći ću: DA.

Kreće se od optimizacije:

  • Operacijskog sustava,
  • Do mrežne razine (uz pretpostavku da imate pravu mrežnu opremu) koja je preduvjet za bilo kakav imalo ozbiljniji IT sustav. Ovdje se radi o mrežnim parametrima,
  • Preko optimizacije mrežnih protokola i protokola za NAS ili SAN sustav,
  • Do optimizacija na razini ispod NAS ili SAN sustava (prema RAID razini).

 

Pogledajte i logičku shemu NAS i/ili SAN sustava na slici:

 

 

Zaokružujemo dosad naučeno

Krenimo od RAID kontrolera

  • RAID kontroler ima svoj centralni procesor i specijalizirani procesor (obično su obije funkcionalnosti integrirane u jednom chipu). Specijalizirani (dio) procesora se zove RAID ASIC i on je zadužen za RAID polja.
  • RAID kontroler ima i svoju ROM i RAM memoriju kao i disk kontroler na koji se zapravo spajaju diskovi.
  • RAID kontroler ima svoj “minijaturni” operacijski sustav, niže razine a koji je inicijalno pohranjen u ROM memoriji i iz koje se učitava. Unutar tog “minijaturnog” operacijskog sustava se nalaze metode za pristup svim diskovima spojenim na njega kao i sve potrebno za kreiranje RAID polja unutar kojega će diskovi raditi.

 

Diskovi i njihova veza s RAID kontrolerom, te veza s Linuxom (operacijskim sustavom)

  • Promatrajmo diskove koji su u konačnici spojeni na RAID kontroler kao na jednu komponentu koja komunicira s ostatkom računala odnosno operacijskim sustavom i to preko upravljačkog programa (driver) za taj RAID kontroler.
  • Operacijski sustav preko upravljačkog programa za RAID kontroler vidi samo polja diskova koja su kreirana od strane RAID kontrolera,i to kao jedan jedini disk. Ako smo – kao na slici – kreirali RAID 10 polje unutar kojega se nalaze četiri (4) tvrda diska, operacijski sustav (u ovom primjeru je to Linux), vidjeti će jedan jedini tvrdi disk, koji je zapravo cijelo RAID 10 polje diskova. Taj “logički” disk se s točke operacijskog sustava sastoji od svih dijelova od kojih se sastoji bilo koji “normalan” tvrdi disk (trake, cilindri, klasteri i sektori).
  • Nadalje, taj “logički” disk je potrebno particionirati te kasnije formatirati s nekim datotečnim sustavom.
    • Svi programi dalje koriste taj datotečni sustav za pohranjivanje datoteka, što je i slučaj s programima za dijeljenje datoteka preko mreže (NAS) : NFS, SMB/CIFS, AFP, …
    • Što se tiče sustava koji pristupaju podacima na razini blokova (SAN sustavi), oni disku pristupaju na razini blokova podataka tj. ispod razine datotečnog sustava.

 

 

U čemu je problem sa standardnim NAS ili SAN sustavima?

Što kada se pokvari ovakav NAS ili SAN sustav odnosno poslužitelj? Ukoliko niste imali još jedan sustav na koji ste izrađivali sigurnosne kopije – ostajete bez svih podataka. Gubitak svi podataka važnih za poslovanje vaše tvrtke – koliko vam je to uistinu važno???

 

 

Autor: Hrvoje Horvat

Članak preuzet, uređen i objavljen uz izričito dopuštenje autora.

Izvor: Open Source Osijek

Osnove NAS i SAN sustava (i malo više) – drugi dio

$
0
0

U seriji članka autor Hrvoje Horvat upoznat će nas s osnovama i načinom rada NAS, SAN, ZFS i složenih klasterskih poslužitelja, te će podijeliti brojne korisne savjete iz praktičnog iskustva.

 

Kolega Hrvoje Horvat član je udruge Open Source Osijek na čijim je mrežnim stranicama tekst izvorno objavljen. Prethodno smo govorili o osnovama NAS i SAN sustava, te upoznali važne savjete za njihovo postavljanje. U drugom dijelu bavimo se kompleksnijim klasterskim sustavima, kao i ZFS datotečnom sustavu. Na kraju donosimo i praktičan primjer za vježbu.

 

 

Sljedeći korak: Klasterski i/ili redundantni NAS sustavi

Što nam omogućavaju ovakvi sustavi? Osim sigurnosti, jer se sada svi podaci mogu zapisivati na dva ili više uređaja istovremeno, dolazimo i do njihovih ograničavajućih faktora, a to su:

  • Omogućavaju horizontalno skaliranje (nadogradnju) ali uz više troškove – znatno više od cijene samog drugog uređaja.
  • Ograničeni su na proširenje prostora tj. kapaciteta (proširenje dodavanjem diskova ili dodatnih uređaja). Pri proširenju dodavanjem dodatnih uređaja (ako je to uopće moguće jer za svaki model odnosno seriju redundantnih NAS uređaja postoji ograničenje do koliko se mogu proširivati) – cijene lete u nebo.
  • U konačnici daju nam redundanciju (sigurnost od gubitka podataka) uz ekstra cijenu.
  • Uz veću cijenu dobivamo i veću brzinu rada.
  • To su sve uglavnom rješenja koja su zaštićena i zatvorenog dizajna od strane proizvođača (EMC2, IBM, …).

 

Redundantni NAS sustavi

Redundantni sustavi su nešto jednostavnijeg dizajna jer se ispred njih logički nalazi sustav koji osigurava pristup jednoj jedinoj virtualnoj IP adresi kojoj klijenti i pristupaju (postoje i drugačije implementacije, ali ova je najčešća).

U pozadini se redundantni NAS sustav brine da se svi podaci uredno kopiraju s prvog (NAS-1) na drugi (NAS-2) NAS sustav. U slučaju kvara prvog (NAS-1) sustava, drugi (NAS-2) preuzima njegovu funkciju i svi podaci su sačuvani. Ovakvi sustavi su često izvedeni sa samo dva NAS sustava i rade na principu: Active-Standby (jedan je aktivan, a drugi je pričuva).

Kako logički izgledaju ovakvi sustavi? Donosimo shemu:

 

 

 

Klasterizirani NAS Sustavi

NAS sustavi koji se nalaze u klasteru (grozd) su obično znatno kompleksnijeg dizajna koji uključuje i razne dodatne hardverske i softverske komponente. Svi klijenti u pravilu pristupaju vršnoj klasterskoj komponenti, koja je često izvedena samo u softveru, a brine se za raspodjelu podataka unutar klastera na pojedine NAS uređaje.

Sama replikacija tih (odnosno svih) podataka između pojedinih NAS sustava se često izvodi i u softveru i na specijaliziranom hardveru (na slici bi to odgovaralo donjem sloju). Zbog ovakvog, složenog dizajna i potrebe za posebnim hardverom i njihova cijena je poprilično veća od redundantnih NAS sustava. Klasterizirani NAS sustavi logički izgledaju ovako:

 

 

 

Softverska rješenja

Postoje i mnoga open source softverska rješenja koja nam omogućavaju osnovnu redundanciju ili klasterizirane NAS sustave. Neka od njih su:

  • GlusterFS: Omogućava osnovne i nekoliko naprednih razina redundancije:
    • mirror – poput RAID 1 između dva NAS sustava (poslužitelja) – min. 2 poslužitelja,
    • stripe – poput RAID 0 između dva NAS sustava (poslužitelja) – min. 2 poslužitelja,
    • mirror + stripe – poput RAID 10 između dva para NAS sustava (poslužitelja) – min. 4 poslužitelja (1. i 2. u RAID 1, 3. i 4. u RAID 1, oba para poslužitelja (1., 2. + 3., 4.), vršno u RAID 0, što zajedno čini RAID 10),
  • pNFS (Parallel NFS – od verzije NFS 4.1+): paralelni/distribuirani NFS – stabilna (produkcijska verzija) je još u izradi,+
  • OCFS2 (Oracle Open Source): ima slične mogućnosti kao GlusterFS.

Svaki od njih ima svoje prednosti i mane kao i ciljanu upotrebu (za koju je i razvijan ili se pokazao kao vrlo dobar).

 

Dilema: redundantni ili klasterizirani SAN sustavi?

Slično kao i za redundantne ili klasterizirane NAS sustave – osim sigurnosti, jer se sada svi podaci mogu zapisivati na dva ili više uređaja istovremeno – ovdje imamo sljedeće mogućnosti i ograničenja:

  • Omogućavaju veće horizontalno skaliranje (nadogradnju), ali uz znatno više troškove – znatno više od cijene za NAS sustave.
  • Ograničeni su na ekspanziju prostora tj. kapaciteta (proširenje dodavanjem diskova ili dodatnih uređaja). Pri proširenju dodavanjem dodatnih uređaja (ako je to uopće moguće jer za svaki model odnosno seriju redundantnih NAS uređaja postoji ograničenje koliko ih je moguće proširivati) – cijene lete u nebo.
  • U konačnici daju nam redundanciju (sigurnost od gubitka podataka) uz ekstremno visoku cijenu i vrlo kompleksan dizajn.
  • Uz veću cijenu dobivamo i veću brzinu rada.
  • To su sve uglavnom rješenja koja su zaštićena i zatvorenog dizajna od strane proizvođača (EMC2, IBM, …).

Klasterizirani SAN sustavi logički izgledaju slično poput klasteriziranih NAS sustava, ali su znatno kompleksniji (i samim time skuplji):

 

 

Softverska rješenja za SAN i klasterske SAN sustave

I u ovoj kategoriji imamo nekoliko open source rješenja koje možete proučiti, a vrlo su česta u upotrebi – obično u kombinaciji s drugim elementima tj. komponentama (ovisno da li se radi o SAN ili klasterskom SAN rješenju):

  • DRBD8 (Distribuirani – replicirani “Block Device”) – “Distributed Replicated Block Device”: – praktično RAID1 (mirror) preko mreže prema principu: Primari poslužitelj → Sekundarni poslužitelj. Potrebna su dva poslužitelja (nije za sve primjene!),
    • DRBD9 (u aktivnom razvoju): omogućava rad s više poslužitelja, višestruke replikacije i sl.
  • iscsid (open-iscsi iSCSI initiator) servis/daemon za Linux (sam po sebi nije redundantan već pruža osnovnu iSCSI funkcionalnost),
    • device-mapper-multipath – DM-Multipath (“Device Mapper Multipathing”) servis/daemon koji omogućava redundanciju (ili load balancing) prema iSCSI uređajima (SAN storage-ima; ostaje pitanje kako sinkronizirati dva ili više SAN storage-a) – koristi se najčešće kod active/passive SAN sustava,
    • ALUA (“Asymmetric Logical Unit Assignment”) nudi load balancing prema SAN storage-u (ostaje isto pitanje sinkronizacije SAN storage-a) – koristi se za active/active SAN sustave.

 

 

ZFS – negdje između

Za početak ukratko o ZFS-u i tvrtki Sun Microsystems. ZFS je razvila tvrtka SUN Microsystems, danas u vlasništvu tvrtke Oracle. Ideja je bila riješiti dosad navedene probleme, uvesti mnoga poboljšanja i mogućnosti koje su do tada bile dostupne samo kao specijalizirana rješenja ili uopće nisu postojala, te sve integrirati u jednom “proizvodu”. ZFS je prema svojoj funkcionalnosti zapravo kombinacija:

  1. Naprednog RAID kotrolera odnosno “Logical Volume Managera” i
  2. Datotečnog sustava s naprednim sustavom kontrole (ACL) odnosno “Access Listama” za prava pristupa.

 

Izvorno je bio razvijan unutar tvrtke SUN Microsystems kao zatvoreni kod, unutar njihovog UNIX operacijskog sustava Solaris 2005. godine. Već sljedeće godine je prebačen u open source pod CDDL licencom unutar projekta OpenSolaris, te je postao sastavni dio Solaris UNIX-a v.10 sredinom 2006. godine.

Naravno, nakon što ih je kupio Oracle nakon samo nekoliko mjeseci čitav izvorni kod ZFS-a se više nije održavao od strane Oraclea. Dakle, Oracle je prestao s razvojem OpenSolarisa pa je zajednica morala sav kod prebaciti u novi projekt imena Illumos (tu se nalazio i izvorni kod ZFS-a). Zajednica koja je stajala iza projekta Illumos preuzela je zadnju verziju dostupnog koda te ga nastavila razvijati. Nakon nekog vremena je pokrenut i projekt OpenZFS koji je prihvatila još veća zajednica programera i korisnika, kao i sve veći broj tvrtki. Svi zajedno su nastavili s razvojem open source verzije ZFS-a koja se razvija i danas.

Kao i većina programa ili sustava koji su izašli iz tvrtke SUN Microsystems, ZFS je razvijan od strane inženjera za inženjere, na najbolji mogući način, kao nedostižni uzor svim ostalim tvrtkama (ili barem za 99.9999% njih).

 

Borba s open source licencama

Budući da je ZFS razvijan pod CDDL licencom (koja nije kompatibilna s Linux GPL licencom pod kojom se razvija Linux kernel) već od početka javnog razvoja (krajem 2005. i početkom 2006. godine) postalo je jasno da se ZFS ne smije direktno implementirati u Linux kernel. Za Linux je stoga osmišljeno privremeno rješenje: upotreba preko FUSE frameworka unutar kojega su se smjeli pokretati programi s drugim licencama. Problem je bio u tome što se FUSE izvršava na višoj razini iznad kernela te je samim time znatno sporiji. Ipak, ovo je kakav-takav početak.

Istovremeno s ovom borbom krenulo se u ponovni razvoj ZFS-a od nule te je 2013. razvijena prva stabilna verzija (v.0.6.1). Iste je godine pokrenut i projekt OpenZFS. Godine 2016. ZFS je uključen u Linux Ubuntu 16.0.4.

Ostali open source UNIX operacijski sustavi (poput onih koji su razvijani s BSD licencom – FreeBSD, NetBSD, OpenBSD i dr.) nisu imali problema s korištenjem ZFS-a, koji je na njima vrlo brzo zaživio. Nakon godina korištenja, testiranja i popravljanja smatra se jednom od najboljih implementacija u open source operacijskim sustavima. OpenZFS projekt također nudi implementaciju ZFS-a za Mac OS X.

ZFS je nastao u želji da se riješe problemi koje niti najnapredniji RAID kontroleri nisu mogli riješiti. Osim rješenja problema, plan je dodati i neke napredne mogućnosti koje su većini korisnika bile poželjne i dobrodošle. Neki od problema koji su poznati, a ZFS ih rješava:

  • Problemi s RAID5 i RAID6 poljima (pogledajte WIKI),
  • Problem kada želimo zamijeniti neispravni tvrdi disk novim diskom (koji na većini RAID kontrolera mora biti identičan onome koji se mijenja (npr. po broju glava/cilindara/sektora),
  • Problemi odnosno komplikacije kod proširenja RAID polja ovisno o RAID polju,
  • Problem u slučaju da nam se RAID kontroler pokvario te ga moramo zamijeniti s novim (ovo je ponekad nemoguće jer možemo izgubiti sve podatke),
  • Problem kada nam se, primjerice pokvari matična ploča te moramo prebaciti sve diskove i RAID kontroler na novi hardver (ovo ponekad može poći po zlu),
  • Problem koji nastaje s vremenom – podaci na površini tvrdih diskova postaju nekonzistentni a RAID kontroleri nisu toga svjesni sve dok ne naiđu na problematični dio površine diska. Ovaj problem se naziva “Data decay” ili “Data rot”. On je znan i kao degradacija podataka na površini diska, a tek najnapredniji RAID kontroleri imaju mogućnost korekcije (disk-scrubbing) ovakvih grešaka, ali samo do određene granice. Sličan problem nastaje i uslijed grešaka u firmware-u diska ili RAID kontrolera, “fantomskog” zapisivanja (podatak nije stvarno zapisan na površinu diska), grešaka pri zapisivanju ili čitanju, zbog pristupa prema/od krivih bokova sa površine diska i dr.

 

Dodatne funkcionalnosti ZFS-a :

  • Komprimiranje podataka “u letu”, prema konfigurabilnom tipu (algoritmu) i razini kompresije. S obzirom na dostupne algoritme za ovu namjenu i brzine, ali i mogućnosti modernih CPU-a, komprimiranje i dekomprimiranje podataka “u letu” je gotovo neprimjetno. ZFS trenutno podržava sljedeće algoritme za komprimiranje: LZJB, LZ4, ZLE i GZIP.
  • ZFS je i tzv. “Copy On Write” i “transakcijski” datotečni sustav što znači da se operacije snimanja rade transakcijski (poput transakcija u SQL bazama podataka). To znači da se svaka operacija zapisivanja završava tek kada je potvrđeno uredno zapisivanje (kada je transakcija uredno završila). Performanse su i dalje zadržane naprednim modelom transakcija te uvođenjem posebnog ZIL log-a za operacije snimanja. Ovaj “Copy On Write” model uvodi i:
    • mogućnost izrade tzv. “snapshota” odnosno snimke stanja diska/podataka u vremenu te mogućnost povratka na bilo koji trenutak kada je izrađen bilo koji od “snapshot”,
    • mogućnost izrade “klonova” odnosno verzije “snapshota” na kojoj se može i zapisivati,
  • mogućnost naprednih ACL-a (sigurnosnih postavki/prava na datotečni sustav, ali i na NFS share direktno),
  • … te cijeli niz drugih funkcionalnosti

 

 

ZFS u radu

Nakon što smo instalirali ZFS, na njega dodajemo diskove i kreiramo ekvivalente RAID poljima slično kao što ih dodajemo u neki hardverski RAID kontroler (što se konfiguracije tiče). Na taj način moguće je kreirati ekvivalente gotovo svim RAID poljima:

  • RAID 0 ( ovdje se naziva stripe),
  • RAID 1 ( ovdje se naziva mirror),
  • RAID 5 ( ovdje se naziva RAID-Z ili RAID-Z1),
  • RAID 6 ( ovdje se naziva RAID-Z2),
  • Nešto poput RAID 6 ali s tri paritetna diska umjesto dva – naziva se RAID-Z3,
  • RAID 10,
  • … i još mnogo toga.

Jedina iznimka je što sve navedeno radi bez grešaka i problema koje možemo imati na bilo kojem RAID kontroleru, a posebno ako nismo prethodno testirali sve scenarije u slučaju nekog kvara. Uz to, na današnjem hardveru to sve radi ekstremno brzo, a sve je moguće i dodatno drastično ubrzati uvođenjem:

  • L2ARC-a za ubrzavanje operacija ćitanja (read) i /ili
  • ZIL log-a za ubrzavanje operacija pisanja (write)

Za obije navedene metode (L2ARC i ZIL log) mogu se koristiti zasebni SSD diskovi koji dodatno mogu biti i u nekom ekvivalentu RAID polja kako bi se dodatno dobilo na brzini i/ili pouzdanosti.

 

Iz opisanih primjera postaje jasan odabir ZFS-a (povezan s NFS-om, SMB/CIFS ili nekim drugim NAS sustavom za dijeljenje datoteka) kao naprednog NAS sustava.

 

Jedna od naprednih stvari oko ZFS-a je i u tome što se na bilo kojem ZFS polju diskova (ekvivalent RAID polju) može kreirati poseban “Block device” koji se može koristiti kao iSCSI logički uređaj (disk). Taj logički disk je samo potrebno proslijediti nekom od iSCSI “serverskih” servisa/daemona. Ovime dobivamo upotrebu ZFS-a kao SAN sustava.

Potencijalna mana upotrebe ZFS-a leži u tome što nije trivijalan poput korištenja RAID kontrolera ili kreiranje nekog RAID polja. U svakom slučaju potrebna su vam neka naprednija predznanja. ZFS-ove mnogobrojne opcije i funkcionalnosti početnicima mogu izgledati komplicirane, ali su profesionalcima definitivno vrlo važne.

Na kraju, sigurno ne želite da vam NAS ili SAN sustav “složi” netko onako usput, za sat-dva, uz svoj svakodnevni posao koji obično nema veze s ovom temom, jer bi mogli zažaliti kada nešto krene po zlu. Namjerno nisam napisao “ako” već “kada” jer je uvijek pitanje vremena kada će doći do problema i dali ćete ih biti u stanju riješiti te koliko vremena i novaca će vam biti potrebno za tu “igru”. O ZFS-u su napisane knjige i knjige te više nećemo ulaziti dublje u ovaj najbolji “Volume Manager” i datotečni sustav svih vremena. O njemu detaljnije u nekom od slijedećih postova.

 

 

Proces učenja

Ukoliko tek krećete s učenjem, prvo si dajte nekoliko dana da bi dobro savladali:

  1. osnove Storage tehnologija te napredne mogućnosti,
  2. osnove rada RAID kontrolera te njihove mogućnosti, način rada i dodatne opcije (uz njihovo razumjevanje).

Na kraju dodajte još koji dan za proučavanje foruma koji se bave ovom tematikom, kao i foruma od strane proizvođača s pitanjima i odgovorima vezanim za pojedine (konkretne) modele RAID kontrolera koji vam je ušao u użi izbor (ako ste odlučili da čete koristiti RAID kontroler a ne ZFS).

Kada završite prvu fazu učenja i nakon što ste kupili RAID kontroler, slijedi novo učenje:

  • proučite napredne parametre i testirajte ih (istovremeno testirajte i performanse sustava ovisno o promjeni parametara),
  • testirajte razne scenarije havarija za barem nekoliko RAID polja (pogledajte dolje za ZFS) i povrata podataka, mjerite i vrijeme koje potrebno da se sve vrati na “staro stanje” – i vrijeme potrebno za “recovery” je ponakad ključno za konačan odabir vrste RAID polja (RAID 1, RAID 5, RAID 6, RAID 10, …),
  • sve dobro i detaljno dokumentirajte (ovo ćete najviše cijeniti kad vam se dogodi prva veća greška – višestruko će se isplatiti dani i dani testiranja i dokumentiranja).

Ako ste krenuli prema ZFS-u tada krenite s proučavanjem osnova na WIKI ZFS info. Proučite si i pripremite upute iz nekoliko izvora te odvojite još par tjedana za upoznavanje i isprobavanje te smišljajte razne scenarije havarija (i smislite/pronađite najbolje riješenje). U nastavku donosimo primjer za vježbu.

Kreirajte jedno ZFS polje:
a.Mirror (Ekvivalent RAID 1).
0. Kreirajte share (NFS ili SMB/CIFS), dodjelite ovlasti i dobro ih naučite (proučite kako se dodjeljuju, nasljeđuju, ne nasljeđuju i sl.), Zapišite određene podatke i pratite performanse kod zapisivanja i čitanja (s različitim parametrima).
1. Izvadite jedan disk iz ZFS polja, pa ga vratite.
     2. Ponovite 1. korak, ali prije vraćanja diska ga obrišite.
3. Zamijenite mjesta diskovima (prvi na mjesto drugog i sl.).
4. Izvadite sve diskove, reinstalirajte cijelo računalo pa vratite diskove i pokušajte importirati staro ZFS polje
b. Obrišite postojeće ZFS polje i kreirajte novo (Pr. RAID-Z). Ponovite sve točke: 0-4.
c. Obrišite postojeće ZFS polje i kreirajte novo (Pr. RAID-Z2). Ponovite sve točke: 0-4.
d. Obrišite postojeće ZFS polje i kreirajte novo (Pr. RAID-10 : 2 x “mirror” u “stripe”). Ponovite sve točke: 0-4.

Napravite što više scenarija te:

  • sve isprobajte (testirajte i performanse) i dokumentirajte,
  • isprobavajte rad s osnovnim postavkama, pa sve probajte optimizirati (za svaki scenarij) – testirate i stabilnost i izdržljivost ovisno o scenariju i opcijama koje ste mijenjali – uz:
    • restart poslužitelja,
    • restart servisa/daemona,
    • namjerno stopirane servise/daemone (uz ručno pokretanje – naknadno).

U ovim koracima/scenarijima ćete naučiti najviše, te se pribliżiti produkcijskoj primjeni i znanju o ovim sustavima.

 

 

Autor: Hrvoje Horvat

Članak preuzet, uređen i objavljen uz izričito dopuštenje autora.

Izvor: Open Source Osijek


Osnove NAS i SAN sustava (i malo više) – treći dio

$
0
0

U seriji članka autor Hrvoje Horvat upoznat će nas s osnovama i načinom rada NAS, SAN, ZFS i složenih klasterskih poslužitelja, te će podijeliti brojne korisne savjete iz praktičnog iskustva.

 

Kolega Hrvoje Horvat član je udruge Open Source Osijek na čijim je mrežnim stranicama tekst izvorno objavljen. U posljednjem članku govorimo o ograničenjima klasterskih sustava, kao i odgovoru na praktične probleme (CEPH).

 

 

Problemi klasterskih NAS i SAN sustava

Kao što smo vidjeli u prethodnom članku, klasterski NAS i SAN sustavi imaju svoje limitirajuće faktore. Kod većine je to cijena ali i ograničenja skalabilnosti. Naime veći sustavi često trebaju sve veći i veći kapacitet pohrane podataka, koji postaje ili preskup u startu ili zahtjeva vrlo velika ulaganja kod proširenja. I na kraju krajeva svi oni opet imaju svoje limite, najviše sa strane proširenja.

Kod najvećih igrača poput cloud providera pružanje usluge pohrane velike količine podataka pr. za spremanje virtualnih računala i sl. je svakodnevni posao. Proširivost ovakvih sustava je krucijalna. Rani odgovor na ovu problematiku je bio razvoj (i kasnija upotreba) sustava koji uopće ne rade na način na koji rade tradicionalni klasterski NAS ili SAN sustavi.

 

Object storage

I rodio se “Object storage”, koji podatke “promatra” i pohranjuje kao objekte, za razliku od tradicionalnih sustava kod kojih postoji neka struktura datoteka i direktorija (odnosno klasičan datotečni sustav) kod NAS sustava. Ovo je drugačije i od SAN sustava koji rade s blokovima podataka koji se spremaju u sektore na disku (logičkom ili fizičkom).

Kao što RAID kontroler “razlama” neku datoteku na male blokove podataka koje dalje raspoređuje na diskove, ovisno o RAID polju, tako i ovi sustavi “razlamaju” podatke na Tzv. objekte (uz pripadajuće metapodatke), koje onda raspoređuju na poslužitelje u klasteru.

 

Objektni “storage” trebao bi nam nuditi, skalabilni (proširivi) sustav otporan na greške. Ovakvi sustavi su se počeli znatnije razvijati od 1995. godine iako su neki radovi i ideje nastali i znatno ranije. Prvo komercijalno riješenje je razvila tvrtka “Centera Technology” koju je odmah kupila tvrtka “EMC²” te je 2002. izbacila na tržište pod tržišnim nazivom “EMC Centera”. Ova linija proizvoda se i danas razvija.

Smatra se da se u razvoj ove tehnologije od strane neovisnih investitora u prvim godinama uložilo oko 300 milijuna dolara (ova cifra je rasla sve više). Ne računajući ulaganja tvrtki poput : DataDirect Networks, Centera, Atmos, HDS, EMC2, HP, IBM, NetApp, Redhat i drugih a kasnije i od strane cloud providera poput: Amazon AWS, Microsoft (Microsoft Azure), Google (Google Cloud Storage) i drugih.

Pogledajmo listu nekoliko visoko skalabilnih, redundantnih “Object storage” sustava dostupnih pod nekom od open source licenci:

  • CEPH (info)
  • Lustre (info)
  • LizardFS (info)
  • Hadoop Distributed File System (info)
  • Moose File System (info)
  • Quantcast File System (info)
  • i dr.

 

Kod većih sustava, kao i kod sustava kod kojih korisnici NE žele kupovati super skupi hardver i softver za “Object Storage” sustave, jedno od open source rješenja je “CEPH” o kojemu ćemo govoriti dalje u tekstu.

 

 

CEPH je distribuirani objektni sustav za pohranu podataka (eng. storage) koji je dizajniran za postizanje odličnih performansi, te sustav koji je visoko dostupan i pouzdan. Osim toga on je krajnje skalabilan odnosno proširiv do razine exabyte-a.

Ovo je sustav koji je zbog svog dizajna otporan na greške i kvarove cijelih poslužitelja i/ili pojedinačnih diskova ili grupe diskova, a u većim implementacijama, cijelih ormara punih poslužitelja pa čak i cijelih podatkovnih centara a samim time i desetcima, stotinama ili tisućama diskova. Sve ovisno o konfiguraciji i raspoloživoj opremi.

Razvio ga je Sage Weil kao temu za doktorski rad na sveučilištu “University of California, Santa Cruz”. Razvoj se nastavio u tvrtki “Inktank”. Navedenu tvrtku je kupio “RedHat” 30. travnja 2014. godine (za 175 milijuna $ u gotovini). Tvrtka “Red Hat” ga nastavlja razvijati do danas (kao i zajednica koja ga koristi). Projekt i dalje planira ostati open source. Naravno, vrlo brzo nakon učlanjenja u obitelj “Red Hat” svi važniji proizvođači hardvera počeli su nuditi sustave koji su certificirani za CEPH (npr. Supermicro, HP, DELL i mnogi drugi).

Osim navedenog hardvera, CEPH se može koristiti i na bilo kojem hardveru koji imate a na kojem se može pokretati bilo koja RedHat ili Debian bazirana distribucija Linuxa, imalo novije generacije. Dakle dostupni su RPM i Debian paketi. Osim toga dostupan je i izvorni kod CEPH-a, pa je sve moguće kompajlirati i za druge distibucije Linuxa. CEPH klijent se već standardno nalazi unutar Linux kernela. Server je dostupan ionako kao open source.

Osim navedenog, CEPH je trenutno integriran s dvije platforme za virtualizaciju:

  • Open Stack
    • Integriran je sa: Nova, Cinder i Glance za “Block storage”,
    • Integriran je sa Keystone i Swift za “Object storage”,
  • Proxmox VE
    • “Block storage” za virtualna računala i za Linux kontejnere.

Koriste ga i najveći igrači, poput:

  • Amazon AWS – prema nekim informacijama, koristi se za neke dijelove S3 Storage sustava,
  • Facebook – za neke dijelove sustava,
  • CERN – prema podacima od prošle godine – koriste ga za ukupno 1+ PB (za spremanje podataka),
  • DreamHost (Web hosting provider):
    • 2+ PB za S3,
    • 3+ PB kao “Block Device” – za virtualke,
  • … i mnogi drugi (mnogi i ne žele iznositi što točno koriste iz sigurnosnih razloga).

 

CEPH iako radi s objektima na najnižoj razini, na vršnoj se može koristiti za tri različite “upotrebe” i to:

  1. Kao “Block Device” i to ako se koristi kao “Rados Block Device” (RBD) – vidljiv dalje kao “Block Device” ili logički disk koji se koristi za opću upotrebu (pr. za spremanje diskova virtualki i sl.).
  2. Kao “Object Storage” preko “RADOSGW”-a, a koji je “S3” i “Swift” kompatibilan – najčešće se koristi za snimanje/čitanje datoteka bilo kojeg tipa preko web-a (korištenjem “put” ili “get” metoda).
  3. Kao “Filesystem” tj. direktno kao datotečni sustav, preko “CEPHFS” – može se “mountati” kao običan datotečni sustav.

Pogledajte i malo više detalja :

 

 

 

Odabirom pojedinog modela (“CEPH Block Device”, “CEPH Object Stoage” ili “CEPH FIlesystem”) moramo koristiti i dodatne servise odnosno funkcionalnosti koje su nužne za ovakav rad. Prema tome potrebno je detaljnije se upoznati sa zahtjevima i načinom implementacije te konfiguracije svakoga od njih.

 

 

Prednosti CEPH-a

Osnovne prednosti CEPH-a (i u kombinaciji s Proxmox VE platformom za virtualizaciju) su:

  • (Relativno) jednostavan setup i management iz naredbene linije i grafičkog sučelja Proxmox VE.
  • “Thin provisioning” (minimalno zauzeće stvarnog diskovnog prostora s podacima).
  • Izrada snapshota podataka (datoteka) “u letu” (dok se radi na njima).
  • Automatsko popravljanje grešaka u radu (kod ispada diska, poslužitelja i sl.).
  • Ne postoji niti jedna komponenta sustava koja nije redundantna (zalihost).
  • Sustav je skalabilan (proširiv) do razine Exabyte-a.
  • Moguća je konfiguracija više segmenata (eng. Ceph Pools) polja za pohranu podataka, te razina performansi/replikacije za svaki segment.
  • Svi podaci unutar polja su replicirani, čineći cijelo polje otpornim na kvarove.
  • CEPH je moguće instalirati i na pristupačan hardver.
  • Nema potrebe za RAID kontrolerima (“zabranjena” je njihova upotreba – kao i kod ZFS-a kod kojega je to izričito ZABRANJENO!).
  • CEPH je razvijan kao “open source” prema licenci LGPL 2.1.

 

 

Kako se podaci distribuiranju unutar cijelog CEPH clustera?

Koristi se tzv. CRUSH algoritam i pripadajuća “CRUSH” tablica (koja je distribuirana na više poslužitelja), a zadužen je za distribuciju, replikaciju i redistribuciju podataka unutar CEPH clustera. CRUSH je dizajniran da omogućava raznoliku upotrebu, ovisno o veličini implementacije. U skladu s tim postoje “CRUSH” tipovi koji opisuju fizičku poziciju CEPH-a unutar cijelog CEPH clustera. Drugim riječima definiramo fizičku hijerarhijsku strukturu svakog elementa unutar hijerarhije:

  • root (predstavlja vršnu komponentu cijelog CEPH-a – nazovimu ju “cijelom planetom”),
  • region (predstavlja prvu nižu hijerarhiju – recimo kontinent),
  • datacenter (predstavlja pojedini podatkovni centar),
  • room (predstavlja “sobu” unutar podatkovnog centra),
  • pod (predstavlja logičku podjelu unutar jedne “serverske” sobe) – može predstavljati i jedan dio podatkovnog centra koji može biti podjeljen na više ovakvih potencijalno nezavisnih (što se tiče mreže, napajanje, klimatizacije i sl.) cjelina,
  • pdu “Power Distribution Unit” odnosno podjela prema izvoru napajanja (u podatkovnim centrima ih imamo više pa je ovo dobrodošla dodatna razdioba),
  • row (predstavlja jedan red s ormarima punim poslužitelja),
  • rack (predstavlja jedan ormar s poslužiteljima),
  • chassis (predstavlja jedno kućište unutar kojega može biti više poslužitelja – misli se na “Blade” učilišta),
  • host (predstavlja jedan poslužitelj),
  • osd (predstavlja, u konačnici, pojedinačni disk.

Pogledajmo kako to izgleda:

 

 

 

Osim toga, u svakoj kategoriji u hijerarhiji može biti i više elemenata na istoj razini – poput primjera na slici dolje:

 

 

 

Ovakav hijerarhijski model nam omogućava stvarno raznolike scenarije upotrebe. Stoga CEPH može biti implementiran od najmanjih sustava (npr. minimalno tri poslužitelja s diskovima) do sustava koji imaju tisuće poslužitelja s diskovima i raspoređeni u velikom broju podatkovnih centara. Pogledajmo nekoliko mogućih scenarija:

1. Dva podatkovna centra, svaki s par poslužitelja:

Izvor: http://cephnotes.ksperis.com/blog/2015/02/02/crushmap-example-of-a-hierarchical-cluster-map

Vidljivo je da unutar svakog podatkovnog centra (datacenter) imamo dva poslužitelja (host) od kojih svaki ima po tri tvrda diska (osd).

 

2. Prošireni scenarij u kojemu isto imamo dva podatkovna centra ali sada imamo poslužitelje s običnim (tvrdim diskovima) i poslužitelje sa SSD diskovima. Poslužitelji s “običnim” diskovima su u jednoj “grupi” a oni s SSD diskovima u drugoj “grupi”:

Izvor: http://cephnotes.ksperis.com/blog/2015/02/02/crushmap-example-of-a-hierarchical-cluster-map

 

2.a Logička shema dolje prikazuje i inicijalizaciju tzv. Pool-a. U CEPH terminologiji Pool je ono što bi u RAID-u bilo RAID polje diskova. Moguće je imati više “Pool”-ova, svaki sa svojom konfiguracijom. Pri tome, svaki pojedini Pool može biti za svoju namjenu: brzina, pouzdanost, vrijeme odziva, georeplikacija…

Izvor: http://cephnotes.ksperis.com/blog/2015/02/02/crushmap-example-of-a-hierarchical-cluster-map

 

U primjeru na slici u svakom podatkovnom centu imamo poslužitelje sa SSD i poslužitelje s običnim tvrdim diskovima.

  • Vršno Pool “hdd” koristi sve poslužitelje koji imaju obične diskove.
  • Vršno Pool “ssd” koristi sve poslužitelje koji imaju SSD diskove.

Kod kreiranja Pool-a (to je korak koji možete vidjeti u tekstu o radu CEPH-a) odabiremo koliko replika će imati, kao i druge parametre.

 

 

Kako se zapisuju podaci na CEPH cluster?

Nakon što je definirana hijerarhijska struktura za CEPH cluster (CRUSH) te kreiran ekvivalent RAID polja koji se prema CEPH terminologiji naziva Pool sve je spremno za rad (to je opisano negdje od koraka ”CEPH pools“). Pojednostavljeno, svaka datoteka koja se zapisuje razlama se na manje blokove koji se onda u konačnici zapisuju odnosno distribuiraju na dostupne poslužitelje i njihove diskove. Dakle, ako smo za određeni Pool na kojem radimo, kod kreiranja odabrali da je broj replika (prema CEPH terminologiji “CEPH Pool Size”) jednak tri, to znači da se podaci zapisuju na odredišni poslužitelj a potom na još druga dva poslužitelja. Tako da ćemo u ovom slučaju isti podatak imati sveukupno na tri mjesta.

Veličina bloka je standardno 4 MB ali se može promijeniti do razine više MB – ovisno o vrsti podataka koje zapisujemo ili čitamo. To znači da je za neke primjene ova veličina zadovoljavajuća a za neke je ova veličine premalena jer se zapisuju ili čitaju podaci koji zahtijevaju dohvaćanje većih blokova podataka odjednom. Promjenom veličina bloka možemo poboljšati performanse i smanjiti opterećenje sustava – zbog smanjenja broja operacija dohvaćanja velikog broja malih objekata.

Ulazno/izlazne operacije prema diskovnom sustavu kod pisanja ili čitanja se zovu IOPS-i. Klasični (magnetski) odnosno “mehanički” diskovi su znatnije pogođeni ovim operacijama od SSD diskova. Dakle SSD diskovi u prosjeku mogu podnijeti desetke, stotine i tisuće puta više ulazno/izlaznih operacija u sekundi, od mehaničkih/magnetskih diskova.

 

Proces distribucije podataka

Podaci se distribuiraju na cijeli CEPH cluster, sve njegove poslužitelje i njima dostupne tvrde diskove, te se istovremeno radi replikacija, svakog bloka podataka na drugi poslužitelj odnosno disk na njemu. Sve prema tome kako je konfigurirana hijerarhija za CRUSH te koliko replika smo odabrali za određeno CEPH polje odnosno Pool. Proces zapisivanja (i dodatno replikacije) radi se transakcijski (pogledajte ZFS i transakcijski model) – zbog konzistentnosti podataka.

Kod procesa čitanja se također prema klasterskoj tablici i CRUSH algoritmu zna (određuje/izračunava) koji blok podataka je završio na kojem poslužitelju, i na kojem disku na njemu, te se počinje s čitanjem blokova podataka – sa svih poslužitelja i svih diskova. U konačnici sve se svodi na to da se podaci zapisuju na sve poslužitelje te se kod čitanja također čitaju sa svih njih. Ovime se znatno povećavaju performanse: što više poslužitelja to je brže zapisivanje ili čitanje.

Što u slučajevima kada se primjerice:

  • poslužitelj gasi (zbog kvara, održavanje ili bilo kojeg razloga),
  • dodaje se novi poslužitelj,
  • dodaju se novi diskovi u postojeće poslužitelje ili se neki diskovi vade

… tada CEPH radi tzv. redistribuciju podataka. Pogledajmo sliku upotrebe CEPH-a na Proxmox VE platformi za virtualizaciju:

 

 

 

Na slici su vidljiva samo dva poslužitelja 225x i 224x (iako su u testu bila tri (i 223x)) od njih svaki ima po 8 tvrdih diskova:

 

posluzitelj

 

 

Pogledajte stupac “Used” i to postotke (kreću se od 0.27 do 0.31). Kod dobro balansiranog sustava, postotak zauzeća (upotrebe) svih diskova mora biti podjednak. Za to su zaduženi automatizmi o kojima ćemo malo kasnije.

Dodavanjem novog diska, vađenjem jednog od njih ili dodavanjem/izbacivanjem cijelog poslužitelja sa svim diskovima CEPH kreće u redistribuciju svih podataka. To znači da ako smo recimo dodali novi poslužitelj s osam diskova (detaljnije se radi i o koeficjentu svakog diska ovisno o njegovom kapacitetu i drugim parametrima) podaci se preraspoređuju unutar cijelog klastera i svih diskova, tako da svi diskovi na svim poslužiteljima budu podjednako zauzeti. Ovo je vrlo važno jer se nakon dovršetka redistribucije podaci tada počinju zapisivati ili čitati i s tog novog poslužitelja ili novog diska, ravnomjerno koristeći sve resurse (poslužitelje i diskove) klastera.

Za redistribuciju kao i za replikaciju podataka, koristi se (preporuča) zasebna mreža – da se ne opterećuje “radna” mreža.

Prema CEPH preporukama, potrebno je imati dvije zasebne mreže:

  1. “Public Network” – preko nje čitamo i pišemo podatke na CEPH,
  2. “Cluster Network” – preko nje se odrađuju sve ostale radnje poput redistribucije i replikacije podataka.

 

Logička shema je vidljiva na slici:

 

Opis:

  • Podaci se spremaju kao objekti,
  • Objekti se nalaze unutar Pool-a,
  • Standardna veličina objekta je 4MB,
  • Objekti se grupiraju u “Placement Grupe” (PG). Placement Grupe su distribuirane preko više OSD-ova (diskova),
  • OSD-ovi se koriste za stvarnu distribuciju (“read” i “write” operacija) objekata na tvrde diskove,
  • “CRUSH” tablica/konfiguracija se koristi za kreiranje i kasniju upotrebu i distribuciju objekata (podataka) unutar svakog pojedinog Pool-a za cijeli CEPH klaster. (Moguće je imati i više Pool-ova s različitim konfiguracijama).

Pool promatrajte kao RAID polje.

 

Iako se podaci u konačnici zapisuju kao objekti, odnosno najmanji blok podataka je jedan objekt, standardne veličine 4MB, objekti se prvo grupiraju u tzv. “Placement” grupe. Ove “Placement” grupe prema tome povezuju niz objekata koji su dalje raspoređeni na niz OSD-ova. Pohrana objekata na OSD-ove znači pohranu na niz tvrdih diskova, raspoređenih na više poslužitelja – ovisno o Pool-u i hijerarhijskoj strukturi definiranoj u CRUSH tablici/konfiguraciji.

Prisjetimo se da “CRUSH maps” tablica/konfiguracija definira fizičku topologiju cijelog CEPH klastera koju koristi CRUSH algoritam za određivanje (izračun) točnih pozicija na koje će se podaci (u konačnici objekti) i njihove replike spremati odnosno čitati.

 

Sve operacije čitanja i pisanja se zapravo rade na razini svake pojedine “Placement” grupe a ne na razini svakog pojedinog objekta. U protivnom bi rad na razini svakog pojedinog objekta uz dohvaćanje metapodataka za svaki objekt drastično usporilo cijeli sustav. “Placement” grupe rješavaju problem s performansama, jer se transakcije događaju na razini PG-a, kao i pohranjivanje ili baratanje s pripadajućim metapodacima, koje su definirani za cijelu placement grupu a n pojedini objekt u njoj. CEPH kod čitanja ili pisanja radi na razini “placement” grupa i njihovih metapodataka (koji ih opisuju), i to transakcijski.

Osim poboljšanja performansi, uvođenjem “Placement” grupa, poboljšala se i skalabilnost (proširivost) cijelog CEPH sustava. Odnos između broja objekata i broja “Placement” grupa se može okvirno izračunati ili utvrditi testiranjem. Prema preporukama, osnovna formula za izračun je:

Za što bolji odabir odnosno izračun broja “Placement grupa” potrebo je uzeti i druge parametre (o tome kasnije).

Možemo promatrati “Placement” grupe (PG) kao segmente unutar svakog logičkog Pool-a odnosno polja (objekata) na koje se logički “spaja” svaki CEPH klijent za čitanje ili pisanje na CEPH klaster. CEPH, vršno gledano, sprema podatke unutar Pool-a, koji predstavlja logičku grupu PG-ova. Pool se brine i o tome koliko je primjerice replika potrebno izraditi kod svakog zapisivanje podataka. CEPH može raditi i “snapshot” Pool-a, u bilo kojem trenutku – kao “snimku stanja u vremenu”.

 

 

CEPH Block Device (Rados Block Device – RBD)

Mi ćemo se dalje u tekstu fokusirati na upotrebu “CEPH Block device”-a. Prema tome, druga dva modela (“CEPH Object Storage” i “CEPH Filesystem”) više nećemo spominjati.

Potrebne funkcionalnosti (CEPH Roles) za RBD

Kao što smo rekli za svaki od CEPH modela, potrebne su određene funkcionalnosti na strani CEPH poslužitelja u CEPH klasteru. Za upotrebu CEPH-a kao “Block device”-a tj. kao RBD-a, potrebne su nam dvije funkcionalnosti odnosno “uloge” poslužitelja. To prema definiciji znači da moramo imati poslužitelje od kojih je svaki zadužen samo i isključivo za jednu ulogu:

  • uloga Monitor poslužitelja (eng. Monitor Node),
  • uloga OSD poslužitelja (ovo su poslužitelji na kojima se nalaze tvrtdi diskove koje ćemo koristiti u CEPH klasteru).

Preporuka za najosnovniju upotrebu kao CEPH RBD bila bi:

  • minimalno 3 poslužitelja s ulogom “Monitor”,
  • minimalno 3 poslužitelja s ulogom “OSD”.

 

Mi ćemo, s obzirom da imamo samo tri poslužitelja s diskovima (koje želimo koristiti kao CEPH kalster za “Block device”) te stoga što što ne tražimo ekstra/turbo brz/proširiv/… sustav, napraviti slijedeće.

Uloge poslužitelja:

  • Poslužitelj 1 : OSD i MONitor
  • Poslužitelj 2 : OSD i MONitor
  • Poslužitelj 3 : OSD i MONitor.

Dakle, svaki poslužitelj će imati i OSD i MONitor ulogu. S ovime smo na malo zaobilazan način osigurali da imamo i tri OSD-a i tri MONitora.

 

Zbog čega minimalno tri (3) poslužitelja za klaster?

Većina klastera u radu rade na principu ”Quoruma“, dakle tri je najmanji broj poslužitelja u kojemu minimalna većina (dva) poslužitelja sudjeluju u dogovaranju i provjerama rada. Ovdje se radi o sustavu “glasovanja” i izbora što znači da svaki poslužitelj ima jedan glas za glasovanje. Ako su samo dva poslužitelja u sustavu glasovanja izbori su nemogući. Prema tome za sustav glasovanja je potrebno minimalno troje.

 

Quorum pojednostavljeno

U ovakvim minimalnim klasterima s tri poslužitelja, u svakom trenutku moraju biti aktivna i funkcionalna dva (2) poslužitelja. Ovo ne mora čak značiti da je jedan poslužitelj ugašen već možda ne radi kako treba, pa daje pr. krive rezultate (ili ih ne daje uopće) tada se ta zadnja dva pokušavaju sustavom “glasovanja” dogovoriti. Ovakav sustav “Quoruma” se koristi i kod klasterskih sustava za virtualizaciju pr. Proxmox VE cluster.

Zamislimo tri poslužitelja koja imaju “Cluster Map” tablicu s pripadajućom verzijom tablice i njen hash/checksum koji govori o tome da li je integritet tablice narušen.

Primjer:

Prva dva poslužitelja kažu da im je zadnja verzija v.234 te HASH : A348F3609D a treći poslužitelj tvrdi da je njegova zadnja verzija v.252 te HASH : 35D56FAB5D. Dogoditi će se to da će prva dva nadglasti treći iako ima veći broj verzije (što bi značilo da je novija) te se on IZBACUJE iz klastera te se više ne uzima u obzir koje slijedeće provjere (sve dok i on ne bude imao sve iste “podatke” kao i preostala dva). Obično kod ovakvih sustava postoje tzv. “Izbori” za klaster “Mastera”, a koji se događaju svakih nekoliko sekundi (pr. svakih 15. sekundi). Dakle u jedinici vremena unutar koje se događaju izbori (ili reizbori) za “Mastera” tj. “Primarnog” poslužitelja, svaki poslužitelj ima određeni prioritet:

  • Prvi poslužitelj – prioritet 1,
  • Drugi poslužitelj – prioritet 2,
  • Treći poslužitelj – prioritet 3.

Ako se recimo onaj s najmanjim brojem prioriteta bira za “Master”-a (tj. “Primarnog”) , tada će “Prvi poslužitelj” postati “Master” ako je sve u redu s njegovim verzijama i integritetom. Ako nije tada će “Master” postati onaj s prioritetom 2 tj. “Drugi poslužitelj” itd. Dakle svakih recimo 15. sekundi se odabire novi “MAster”.

“Master” je obično zadužen za vrlo važne operacije odlučivanja – koji će poslužitelj biti izbačen iz klastera te će on to i fizički napraviti (obično zapisati u datoteku u kojoj je lista aktivnih poslužitelja u klasteru). Ova funkcionalnost je ne zahtjevna prema resursima ali kao što je vidljivo, vrlo važna. “Master” osim toga radi još nekoliko resursno ne zahtjevnih zadaća – ovisno o vrsti i tipu klastera.

Ovo znači da ako primjerice restartamo cijeli klaster (recimo zbog nadogradnji sustava), da to radimo oprezno. Prvo jedan poslužitelj, pa kada je on potpuno funkcionalan nakon restarta, drugi, pa kada je drugi nakon restarta funkcionaln, tek onda treći.

 

 

MONitor uloga u CEPH clusteru

  • MONitor uloga mora biti instalirana na minimalno tri poslužitelja. Ona se brine o:
  • tome koji poslužitelji u CEPH klasteru su živi OSD poslužitelji i koji su sve dostupni diskovi (OSD-ovi).
  • Pohranjuje i održava 5 “tablica/konfiguracija”:
    • Monitor map – tablica s MONitor poslužiteljima,
    • OSD map – tablica s OSD poslužiteljima/diskovima,
    • PG map – tablica s PG (Placement Group)- grupama za pohranu objekata,
    • CRUSH map – “CRUSH” hijerarhijska tablica/konfiguracija,
    • MDS map (za MDS ulogu [koristi se samo za S3 ili Swift tj. za upotrebu kao “Object Storage”]).

 

OSD = Object Storage Daemon. Servis (daemon) je to zadužen za rad s objektima i njihovu distribuciju te u konačnici snimanje na tvrdi disk. Jedan OSD daemon (servis) je zadužen za jedan tvrdi disk. Dakle, OSD poslužitelj koji ima osam (8) tvrdih diskova, ima i pokrenuto osam (8) OSD daemona (servisa).

 

 

OSD uloga u CEPH clusteru

Ovu ulogu moraju imati minimalno tri (3) poslužitelja. OSD uloga je zadužena za:

  • Spremanje objekata na lokalni datotečni sustav (u konačnici na “OSD” tvrtde diskove ) i omogućavanje pristupa objektima preko mreže.
  • Za replikaciju objekata koji se zapisuju na konkretni OSD (Daemon/servis) odnosno tvrdi disk. Dakle, radi replikaciju objekata koji završe zapisani na OSD (Tvrdi disk) prema drugom OSD (tvrdi disk) – ovisno o “Cluster Map”-i i drugim parametrima (tj. o Pool-u ili ekvivalentu RAID polja koje se rsprostire na poslužitelje i diskove u CEPH klasteru).
  • Za korištenje journaling mehanizama kod zapisivanja podataka na OSD (disk) prema transakcijskom modelu. Svaka operacija zapisivanja  na CEPH sustav se radi transakcijjski s privremenim zapisivanjem transakcije na “Journaling” particiju. Kod visoko optimiziranih sustava, koriste se “Serverske” verzije SSD diskova za “Journaling”.

 

Pogledajmo kako logički izgleda cijeli CEPH, sada kada smo se upoznali sa svim važnijim elementima.

 

 

U gornjem dijelu slike je vidljiv izgled jednog OSD poslužitelja s pet tvrdih diskova. Svaki tvrdi disk mora imati minimalno jednu particiju, koju možemo formatirati s nekim od predloženih datotečnih sustava (xfs – preporuka, ext4 ili btfrs). Dodatno, potrebna nam je još jedna particija (ili zaseban disk ili polje diskova s dodatnom particijom za “Journaling”). U konačnici, na postojeću particiju koja je namjenjena za CEPH, na datotečni sustav kreira se struktura direktorija u koju se spremaju CEPH objekti kao i njihovi pripadajući metapodaci.

U donjem dijelu slike je vidljiva pozicija svakog pojedinog OSD poslužitelja (s svim njegovi “OSD” diskovima) te pozicije svih MONitor poslužitelja. Dakle vidljiv je CEPH sustav sa ukupno 30 poslužitelja i to:

  • tri CEPH MONitor poslužitelja i
  • 27 CEPH OSD poslužitelja.

 

Sada zamislimo upotrebu u kojoj imamo poslužitelje za virtualizaciju, koji koriste ovakav CEPH sustav (sa svih 30 poslužitelja) kao disk storage sustav, dakle za spremanje virtualnih diskova virtualki. Pogledajmo sliku kako to izgleda sa strane virtualnog računala odnosno platforme za virtualizaciju prema CEPH sustavu (od gore do dolje):

 

 

Ovdje je vidljiv način pristupa CEPH “Block device”-u tj. logičkom “blok” uređaju odnosno disku koji predstavlja cijeli CEPH cluster. Na primjeru su dvije česte platforme za virtualizaciju: OpenStack i Proxmox VE. Platforma za virtualizaciju za svako virtualno računalo koje koristi virtualni tvrdi disk (koji je zapravo “blok uređaj” tj. logički tvrdi disk od cijelog CEPH klastera), koristi QEMU (i Linux KVM).

QEMU i Linux KVM su zaduženi za sve potrebne funkcionalnosti da bi se virtualizacija uopće mogla koristiti. Dakle oni simuliraju sve virtualne komponente svakog pojedinog virtualnog računala (matična ploča i njen BIOS, CPU, mrežna kartica i njen BIOS, disk kontroler i njem BIOS, pripadajući virtualni tvrdi disk, …).

Qemu kao Hipervizor ima nadalje metodu za korištenje svakog pojedinog virtualnog diska koji se zapravo nalazi unutar CEPH klastera (kao “Block device”). QEMU se tada spaja kao klijent na CEPH klaster i to na točno određeni CEPH Pool te njega koristi kao da je “polje diskova” na nekom SAN sustavu (jer govorimo o upotrebi CEPH-a kao “Block device-a” tj. kao RBD).

A sada pogledajmo kako to izgleda sa strane “CEPH Block Device”-a odnosno blok uređaja, kao krajnje komponente, koja na kraju stvarno pristupa CEPH klasteru za čitanje ili zapisivanje podataka. Ovdje zapravo QEMU kao CEPH klijent pristupa CEPH polju:

 

 

Klijent 1 piše ili čita na ili sa CEPH RBD

  1. Kod procesa čitanja ili pisanja na “Block device” tj. CEPH RBD ,klijent koji žali nešto zapisati ili pročitati iz CEPH clustera koji koristi kao blok uređaj (logički kao tvrdi disk), prvo kontaktira CEPH klaster i to MONitor poslužitelje i od njih traži “CLuster Map” tablicu/konfiguraciju.
  2. CEPH cluster MONitor poslužitelj(i) mu šalju traženu tablicu/konfiguraciju.
  3. Na osnovi tablice/konfiguracije koju je dobio, klijent pomoću CRUSH algoritma traži od OSD poslužitelja i OSD diskova podatke za čitanje ili traži pisanje. Do točnih OSD poslužitelja i točno određenih OSD diskova je pomoću CRUSH algoritma izračunao koji su te od njih i traži/šalje podatke.
  4. S OSD-ova dobiva odgovor na traženi zahtjev (čitanje ili pisanje).

Klijent 2 piše ili čita na ili sa CEPH RBD – ponavlja se proces kao i za prvog klijenta.

 

 

 

Autor: Hrvoje Horvat

Članak preuzet, uređen i objavljen uz izričito dopuštenje autora.

Izvor: Open Source Osijek

Switching i routing: jučer, danas, sutra (prvi dio)

$
0
0

U nizu članka autor Hrvoje Horvat upoznat će nas s osnovama i načinom rada switcheva (preklopnika) i routera (usmjernika), te će podijeliti brojne korisne savjete iz praktičnog iskustva.

 

Tijekom prošle godine održali smo predavanje  na temu “Kako odabrati ”pravi” mrežni uređaj i u čemu su razlike”, a ovom prilikom ću se nadovezati na to predavanje te pokušati objasniti problematiku s kojom se susreću proizvođači mrežne opreme a koja se prenosi do samih korisnika (vas). Dalje u tekstu većim djelom ćemo govoriti o preklopnicima (switchingu) a manjim djelom o usmjerivačima (routing-u)

 

U čemu je problem?

Sjetimo se da su i preklopnici (switchevi) i usmjerivači (routeri) uređaji koji se sastoje od sličnih dijelova kao i svako računalo. Dakle imaju matičnu ploču, CPU, RAM, neku vrstu diska (uglavnom flash memoriju), operacijski sustav, upravljačke programe (drivere) i određeni softver. Doduše njihov operacijski sustav je malo drugačiji od onoga na koji smo naviknuli no ipak ne toliko koliko se čini. Trebamo biti svjesni činjenice da i obični “glupi” switch  u pozadini odrađuje nekoliko funkcionalnosti ili “vrti“ nekoliko mrežnih protokola od kojih neke i primjenjuje na svaki paket na mreži. Na gigabitnim mrežama to znači milijune paketa u sekundi. Zapravo si možemo i trebamo postaviti sljedeća pitanja koja su si postavili i proizvođači kod razvoja mrežnih uređaja.

Što  je važno:

  • Odabir operacijskog sustava uređaja – koji je sigurniji, stabilniji i/ili brži, koji ima bolju podršku, što je sa upravljačkim programima za sav hardver – za koji OS proizvođači hardvera češće izdaje optimizacije i ispravke grešaka, …
  • Dobar odabir programskog jezika u kojemu će se razvijati novi uređaj te njegove mogućnosti,
  • Kako razvijati softver (i tko ga razvija),
  • Testiranje – je li uređaj stvarno (i kako) testiran,
  • Optimizacija – koliko znanja treba imati da bi se radile optimizacije i da li su moguće (i u kojoj mjeri),
  • Podrška – što je s podrškom, koliko je ažurna,
  • Dokumentacija samog softvera i konačnog programskog rješenja (uređaja), kolika je zajednica ljudi koja koristi uređaje određenog proizvođača, da li postoje predavanja, knjige, i drugi materijali na internetu i koliko su dobro napisani i sl.

 

Vratimo se switchevimaswitch je zapravo malo računalo kojemu je svaki port zapravo jedna mrežna kartica. Postoje različite mrežne kartice.

Od običnih “desktop” (poput ove na slici):

 

… do posebnih kategorija mrežnih kartica koje možemo nazvati “serverskim” poput ove na slici dolje:

 

Osim toga, ni “serverske” kartice nisu sve iste, kao niti njihovi upravljački programi. Neke od njih možda uredno rade, ali imaju dosta loše upravljačke programe. Neke odrađuju samo standardne stvari, dok neke od jačih podržavaju cijeli niz dodatnih funkcionalnosti kojima rasterećuju centralni procesor (CPU). Neke od jačih “serverskih” danas standardno same odrađuju sljedeće funkcionalnosti:

  • TCP Offload (Checksum/Large send), UDP
  • 802.1Q
  • 802.1p (QoS)
  • 802.3ad, Fast Ether Channel i Gigabit EC
  • 802.3* (z, ab, u, x) – flow controll
  • Kriptiranje/Dekriptiranje
  • I/O virtualizaciju (u kombinaciji sa SR-IOV), …

Razlike mogu biti u cijeni, brzini, podržanim funkcionalnostima, upravljačkim programima (driverima, njihovoj stabilnosti i brzini; loš driver = loša mreža), podršci, dokumentaciji, …

Sada nam postaje jasno kako nije nevažno koju mrežnu karticu treba odabrati ako želimo siguran, pouzdan i brz rad računala ili poslužitelja na mreži. Razlike u praksi znaju biti drastične. Počevši od razlika u cijeni od nekoliko desetaka ili stotina kuna (a nekada i tisuća KN), preko (ne)nestabilnosti, pa sve do brzine rada. Vrlo je čet slučaj da korisnici kupe sve mrežne komponente, kao i pasivni dio mreže (kablovi, utičnice, patch paneli) koje prema standardima podržavaju brzinu deklariranu poput “1Gbps”, a u praksi je brzina nešto malo veća od “100Mbps”. Pitam se zbog čega???

 

 

OS i softver (firmware) switcha

Softver, kao i sam operacijski sustav, te svi upravljački programi (za hardverske komponente switcha) odnosno njegov odabir i sam razvoj drastično utičnu na pouzdanost, izdržljivost i stabilnost jednog takvog uređaja. Zapravo ovaj utjecaj je drastično veći nego li je to slučaj kod našeg osobnog računala ili nekog poslužitelja.

Ovdje se radi o uređajima koji moraju raditi besprijekorno, bez obzira koliko ih puta palili ili gasili (zbog nestanaka struje, uslijed nadogradnje ili sl.), nevezano koliko milijuna mrežnih paketa u sekundi morali obraditi, te koliko se zapravo desetaka mrežnih protokola u svim mogućim ili nemogućim kombinacijama izvodi na vašem switchu. Isto tako, nije svejedno da li je u određenoj konfiguraciji switcha konfiguriran protokol A, B i C ili neki četvrti. Ili su u upotrebi samo protokoli A, C, i D.

 

 

Testiranje, testiranje i testiranje i još malo testiranja i na kraju još pokoje testiranje

Samo testiranje uređaja – koje bi trebala odraditi tvrtka koja ga je i proizvela – uopće nije trivijalno, te podiže cijenu finalnog proizvoda (ako je za sve faze razvoja bilo potrebno 1000 vremenskih jedinica, sigurno je da će faza testiranja zahtijevati minimalno još toliko – ovo je moj osobni stav).

Temeljito testiranje se svodi na ispitivanje svih mogućih kombinacija protokola ili funkcionalnosti koje određeni uređaj podržava i to u kombinacijama svih mogućih i nemogućih mrežnih protokola koji moraju biti u upotrebi i koji moraju prolaziti kroz mrežni uređaj koji se testira. To znači da, primjerice, switch podržava ARP protokol (koji i mora podržavati a koji je samo jedan u nizu protokola) testiranje mora uključiti ponašanje u radu u kojemu su na točno određenoj hardverskoj verziji switcha na točno određenoj verziji softvera (operacijski sustav, upravljački programi i sve ostalo) spojena računala koja generiraju promet (i to u varijantama: na svim portovima, samo na nekim portovima, neka se moraju uključivati i isključivati, …). Dakle, riječ je o vrlo velikom broji mogućih scenarija koje treba detaljno ispitati.

Promet koji se generira mora biti točno definiran, te je potrebno testirati razne mrežne protokole u raznim kombinacijama. Prema TCP/IP setu protokola definirano je 65536 mogućih mrežnih protokola od kojih je važno testirati njih maksimalno tisuću (1.000). U praksi je pitanje je li uopće testirano najviše nekoliko desetaka protokola – a pitanje je da li i toliko – kod “entry level” proizvođača (u pravilu najjeftiniji uređaji) koje neću imenovati.

Osim toga, budući da se testira ARP protokol, potrebno je testirati sve scenarije ponašanja ARP protokola – i one dozvoljene (definirane standardima), kao i one nedozvoljene koji bi mogli utjecati na sigurnost i/ili stabilnost ili pojedinog porta na switchu ili cijelog uređaja. Naime, nije dovoljno testirati samo standardne ARP pakete već i one za koje je potrebno “ručno” kreirati ARP pakete koji namjerno sadrže vrijednosti ili parametre koje ne bi smjeli sadržavati. Zaključno, samo za testiranje ARP protokola potrebne su stotine mogućih scenarija.

Sljedeći test bi bilo uključivanje drugog protokola ili funkcionalnosti – primjerice logiranje poruka na vanjski syslog poslužitelj. Zvuči banalno, ali sada je potrebno ponoviti sve prethodne scenarije testiranja uz dodatne scenarije specifične za syslog protokol. Pri tome se smijemo zaboraviti na dozvoljene i nedozvoljene opcije, parametre ili oblike mrežnih paketa za protokole koje testiramo.

Ako uključimo još jednu funkcionalnost – primjerice često korišten Spanning Tree protokol, sada ponovno moramo sve testirati s dodatnim stvarima vezanim za Spanning Tree, ali i u varijantama sa ARP protokolom i sa ili bez syslog funkcionalnosti. Ovime smo zasigurno došli do tisuća mogućih scenarija.

Sjetimo se da i “najslabiji” switchevi podržavaju desetak protokola ili funkcionalnosti kao i činjenice da samo za isti hardverski model uređaja proizvođači imaju nekoliko verzija operacijskog sustava (nazovimo ga “firmware”). Potrebno je sve testirati pojedinačno, i to za sve modele uređaja koji se prodaju. Mislim da smo sada možda došli i do milijuna scenarija koje je potrebno testirati. Možete se pitati je li sve to nužno potrebno? Moj odgovor je: “DA”.

U praksi sam nebrojeno puta susreo da samo određene kombinacije uključenih funkcionalnosti i mrežnih protokola nekada uzrokuju zasebne probleme, a u nekim kombinacijama sve radi. Ili u jednoj verziji firmwarea radi nešto što u drugoj (čak i novijoj) više ne radi ili uzrokuje probleme, na čije otklanjanje nekada možete potrošiti dane i dane, da bi na kraju shvatili da nije problem u ničemu drugom nego u switchu/routeru odnosno problematičnom firmwareu (OS-u).

 

Formula za uspjeh:

Potrošeni dani x sati x broj ljudi = bolje/jeftinije kupiti *provjereni* uređaj

* Kada kažem provjereni, mislim na konkretnog proizvođača, točan model i verziju softvera (firmware/OS) provjeren u okruženju u kojemu se koriste svi mrežni protokoli i postavke koje i vi želite koristiti.

 

U konačnici, previše je mogućih kombinacija koje ne bi htjeli sami testirati na svojoj mreži za koju želite da radi kako treba, pa je uglavnom jeftinije uložiti nešto malo više u opremu pouzdanijih proizvođača, i to po mogućnosti točnog modela i verzije firmwarea za koji znate da radi kako treba (sa svim onim funkcionalnostima i protokolima koji vam stvarno trebaju). Ne treba se 100% pouzdati niti u najveće brand name proizvođače – i njima se događaju greške, no ipak su mnogo pouzdaniji od nekih koje ću nazvati “bezimeni“.

 

 

Detaljnije o switchevima

Za razliku od računala, switchevi nemaju “klasične” mrežne kartice nego tzv. “Switching chipove” koji zapravo na jednom chipu imaju nekoliko integriranih mrežnih kartica od 4, 8,12, 24, 48 ili više portova. Ovdje je još izaženija razlika u odnosu na “obične” mrežne kartica i to za iste funkcije. Naime, postoji čitv niz switching chipova od raznih proizvođača s ogromnim razlikama:

  • različitih su performansi,
  • različitih funkcionalnosti koje podržavaju,
  • njihovi upravljački programi se razvijaju samo  za određeni OS ili za više njih (pitanje je  i stabilnosti i dr.).

Što se samih switcheva ili routera tiče (kao gotovih proizvoda) neki proizvođači koriste Linux dok drugi određene specijalizirane varijante UNIX operacijskih sustava. I odabir operacijskog sustava, kao i pripadajućih upravljačkih programa, utječe na pouzdanost, sigurnost i performanse konačnog rješenja. Primjerice, “Cisco” koristi BSD UNIX za Cisco IOS* , dok “Juniper” koristi FreeBSD UNIX za njihov JunOS* (*IOS i JunOS su operacijski sustavi proizvođača Cisco i Juniper, namijenjeni switchevima i routerima).

Osim toga, switchevi imaju i CPU i RAM memoriju poput “običnih” računala, koji također utječu na performanse. Stoga razlikujemo:

  1. Standardne “Layer 2” switcheve koji rade na OSI sloju 2, te prema tome odluku o preklapanju (za svaki mrežni paket) donose na osnovi MAC adresa,
  2. Tzv. “Multilayer“ switcheve, odnosno switcheve koji odluke o preklapanju svakog paketa donose na osnovi analize OSI slojeva 2, 3 i 4.

 

 

Layer 2 switching – klasična upotreba switcheva (preklopnika).

U današnjim mrežama za međusobno umrežavanja/spajanje računala, poslužitelja i ostale mrežne opreme koriste se switchevi koji standardno rade na OSII sloju 2 (Layer 2) – barataju sa MAC adresama. Spajanjem bilo kojeg računala ili uređaja na neki port na switchu, sam switch prvo mora saznati njegovu MAC adresu te ju spremiti u svoju internu tablicu koja sadrži par:

Source MAC adresa <-> port (interface) na switchu

To je i sva logika koja je potrebna za uspješno preklapanje. Naime kada spojimo računala A i B na switch, primjerice:

Računalo A (MAC 00:01:02:A1:11:11) <-> port (interface) 1

Računalo B (MAC 00:01:02:B2:22:22) <-> port (interface) 2

switch nakon nekoliko trenutaka izgradi gore navedenu tablicu koju primjenjuje na svaki paket koji mu dođe.

 

 

Layer 3 (Routing)

U slučaju routinga (usmjeravanja) koji se događa na OSI sloju 3 (IP adrese) uređaji odluku za usmjeravanje paketa donose na osnovu IP adresa – zapravo para:

IP adresa i njena pripadajuća maska mreže (netmask).

Tablica na osnovu koje se odrađuje usmjeravanje (praktično isti postupak kao i preklapanje [switching] ali na OSI sloju 3) se zove “Routing tablica” koju uređaj također mora imati. Dakle, slična priča ali na drugom OSI sloju, i još malo kompleksnija zbog routing protokola i mogućnosti dinamičkih promjena routing tablica pomoću routing protokola (RIP, OSPF, BGP, …).

Uređaji koji se bave usmjeravanjem u načelu zovemo usmjerivači (routeri), ali postoje i preklopnici (switchevi) koji mogu odrađivati i taj dio posla. Ovakve switcheve nazivamo “Multilayer switchevi”, tj. switchevi koji rade na više OSI slojeva (2, 3 i 4). Ovakvi switchevi vrlo su važni u današnjim mrežama jer nam daju mogućnost da uredno segmentiramo lokalnu mrežu a da to ne unese velika usporavanja koja bi uveli klasični routeri.

 

 

Prisjetimo se TCP/IP komunikacije

Svaki paket mora imati (uz ostale podatke):

  1. Source i Destination MAC adrese, te
  2. Source i Destination IP adrese.

Budući da se radi o Layer 2 switchu, on gleda svaki paket i to samo dio sa Source MAC adresom i Destination MAC adresom. Pojednostavljeno to radi ovako (računalo A šalje paket na računalo B):

  1. Switch pogleda Source MAC (to je MAC od računala A) i vidi da ga već ima u tablici (ako nema, zapamti ga sada na portu na koji je spojen), te pogleda i Destination MAC adresu (to je MAC od Računala B).
  2. Switch provjerava svoju tablicu i gleda da li ima MAC adresu od računala B, ako ima gleda na kojem je portu (interfaceu) i paket šalje na taj port (interface).
  3. Ako nema MAC adresu od računala B, pokuša ju saznati slanjem pripadajuće ARP poruke te ju (MAC adresu) zapamti i izgradi si novu tablicu. Ovkva MAC tablica na switchu se naziva i CAM tablica (Content Addressable Memory) tablica. Sada kada switch ima u CAM tablici i Source i Destination MAC adrese od ovog (i svakog) paketa od računala A, tada on svaki paket pojedinačno paket prebaci/preklopi na interface na kojem se nalazi spojeno računalo B. Ovaj se korak ponavlja za svaki pojedini paket na mreži.

 

 

Autor: Hrvoje Horvat

Članak preuzet, uređen i objavljen uz izričito dopuštenje autora.

Izvor: Open Source Osijek

Switching i routing: jučer, danas, sutra (drugi dio)

$
0
0

U nizu članka autor Hrvoje Horvat upoznat će nas s osnovama i načinom rada switcheva (preklopnika) i routera (usmjernika), te će podijeliti brojne korisne savjete iz praktičnog iskustva.

U dizajnu switcheva u pravilu postoje dva pristupa:

  1. CPU + Switching chip ili
  2. CPU + Switching chip + ASIC.

Već kod standardnih switcheva (koji odluke o preklapanju donose na OSI sloju 2), funkcionalnosti koje su implementirane uswitching chipovenisu dostatne za sve operacije koje jedan switch treba podržavati, već su uglavnom implementirane najrudimentarnije funkcije. Čak i kontrolu za dobar dio  mrežnih protokola mora odraditi CPU. Važnost odabira dobrog “switching chipa” je krucijalna budući da dobar dio njih već u nižoj srednjoj klasi nudi dobar dio funkcionalnosti implementiran u sam chip. Time se rasterećuje CPU koji ionako nije sposoban za obavljanje tih zadataka na gigabitnim brzinama.

I ovdje imamo veliku raznolikost. Prva varijanta: više manjih i slabijih switching chipova povezanih preko zajedničke sabirnice (slika dolje).

 

Ovakav dizajn mnogi koriste jer drastično snižava cijenu. Problemi su uglavnom sporost sabirnice te samim time komunikacija između switching chipova. U ovom slučaju sve ide donekle brzo u komunikaciji između portova 1- 4, u komunikaciji između portova 5-8, te između portova 9-12. U slučaju da komunikacija treba ići između portova koji su na različitim switching chipovima – nastupa problem odnosno usporavanja.

Dodatna je mana u tome što se u ovoj (najgoroj) varijanti ugrađuju switching chipovi koji nemaju gotovo nikakve funkcionalnosti osim onih najosnovnijih. Ispravno bi bilo da ih proizvođači niti ne omogućavaju, no u praksi nailazimo na uređaje koji podržavaju cijelu gomilu funkcionalnosti i protokola ali koriste ovakav dizajn u kojemu na kraju većinu toga mora odraditi CPU pa se uređaj počinje ponašati užasno usporeno.

Druga varijanta je upotreba naprednijih switching chipova, koji podržavaju više funkcionalnosti kao i neke mrežne protokole, a uz to pokrivaju veći broj portova zbog čega komunikacija ne mora ići preko još uvijek spore sabirnice. Taj je model vidljiv na slici:

 

Problem oba ova modela je još uvijek odabir prilično slabih switching chipova te prebacivanje previše funkcija na CPU (naravno, preko iste sabirnice). Najčešći je odabir CPU-a za switcheve iz područja ARM ili MIPS arhitekture procesora, koji za vrlo nisku cijenu i malu potrošnju energije nude solidne karakteristike. Nažalost, u svijetu u kojemu su potrebne analize i obrade svakog pojedinog mrežnog paketa – dakle switchinga (Layer 2) ili routinga (Layer 3 i 4), pogotovo na gigabitnim brzina, ovi procesori ne nude zadovoljavajuće brzine obrade paketa. Stoga mnogi odabiru procesore sa što više jezgri.

Dodatni problem je i u tome što recimo specifikacija koja govori da se koristi ARM procesor na 1GHz ne znači zapravo ništa. Da malo razjasnim: ARM nije model ili tvrtka koja u  konačnici proizvodi procesore. Tvrtka ARM zapravo dizajnira procesore. Dakle, bilo koji proizvođač može kupiti licencu za ARM dizajn i arhitekturu procesora te ga i izraditi. I tih ARM licenci (dizajna) ima cijelo čudo:

  • Cortex-A (A72, A57, A17, A15, A53, A35, A7, …,
  • arhitekture ARM v7, ARM v8, …),
  • Cortex-R (R4,R5,R7, …),
  • Cortex-M (…).

Postoji samo nekoliko velikih proizvođača koji izrađuju ARM procesore (a postoji na desetke onih za koje ih izrađuju) prema ARM licenci i prema željama onih koji ih naručuju (uključite ovo, isključite ono, dodajte ovu funkcionalnost, izbacite onu, …). U tome zapravo leži dio problema. Neki procesori imaju mnoge dobre funkcionalnosti ali su malo skuplji, dok neki imaju samo najosnovnije ali su jeftiniji… ne moram dalje pričati. Uostalom, pogledajmo “proizvođače” ili  proizvođače ARM procesora za pametne telefone –  lista je dugačka.

Gruba računica govori da prosječan ARM Cortex-A procesor takta 1GHz po moći obrade mrežnih paketa jednak je Pentium 3 procesoru radnog takta 300MHz.

 

 

Preporuka za routing

Ako pogledamo Multilayer funkcionalnosti (vrijedi za routere ali i multilayer switcheve), neke generalne preporuke za CPU snagu su (na osnovi samo dva interface-a – WAN i LAN):

  • CPU: Pentum 4 klasa, 2GHz, 100-500Mbps (ovisno što se sve treba procesirati), možemo zaključiti:
    • 6 x ARM CPU na 1 GHz = 1 x Pentium 3 CPU na 2 GHz (budimo jako optimistični pa recimo da je Pentium 3 = Pentium 4).
    • Dakle 6 x ARM 1Ghz je dovoljno za max 2 mrežna interfacea brzine procesiranja između 100Mbps i 500Mbps.
    • Za 1Gbps u najboljem slučaju to znači 12 x ARM 1GHz CPU za 1Gbps propusnosti između dva mrežna interface-a.

Budući da 1Gbps omogućava “Full duplex” rad, to znači da nam je za popunjavanje pune propusnosti 2 mrežna interfacea koja oba rade u “Full duplex” načinu rada potrebna propusnost od 4Gbps. To znači 12 x ARM 1GHz x 4 =  48 Core ARM CPU na 1GHz.

Ako uzmemo u obzir da su switchevi koji se najčešće koriste, minimalno sa 24 x 1Gbps porta, to bi značilo da bi morali imati 576 Core ARM CPU na 1GHz. To je računica u slučaju da switching chip ne odrađuje veći dio funkcionalnosti – što je i slučaj kod niže do niže srednje  kategorije ovih chipova. Ako i ovdje budemo optimistični pa kažemo da switching chip odrađuje 50% potrebnih funkcionalnosti tada nam je za sve navedeno potrebno “samo”  288 Core ARM CPU na 1GHz.

Ovakav pristup zapravo i imaju neki od proizvođača switcheva odnosno multilayer switcheva ali pri tome nisu došli niti blizu broja CPU jezgri koje bi bile potrebne za brzine o kojima smo govorili.

 

 

Sabirnica

Pri svemu ovome nisam niti spominjao brzinu sabirnice između switching chipa i CPU-a, koja bi morala moći podnjeti sve ove brzine, kao i brzine memorijske sabirnice, te u konačnici RAM memorije koja bi to morala također moći podnjeti. Probajmo kratko analizirati i to:

  • Switch sa 24 x 1Gbps portova mora imati minimalnu unutarnju propusnost od 48Gbps (zbog full duplexa).
  • Brzina od 1Gbps = znači maksimalno 125MB/s.
  • Full duplex 1Gbps je maksimalno 250 MB/s.
  • U ovom slučaju 48Gbps = 125 MB/s * 48 = 6.000 MB/s = 5.8 GB/s.

Sjetimo se samo da recimo Intel Skylake arhitektura sa pripadajućim Z170 chipsetom ima maksimalnu propusnost sabirnice između CPU-a i “Southbridgechipseta (DMI v.3.0) od nekih 4 GB/s. U ovom slučaju niti Intelova 6 generacija Pentium 4 procesora (i5-6xxx ili i7-6xxx) nema dovoljnu propusnost za takvo što. Memorisjka sabirnica u ovom slučaju ima propusnost od 34 GB/s pa bi ona zadovoljila ali nedostaje brzine prema “Southbridge” dijelu na koji je spojena mreža. Za više informacija o arhitekturi računala pogledajte ovdje.

Probajmo sada “odokativno” izračunati koji Intel Pentium 4 CPU bi bio potreban za to:

  • Ako je 2GHz jedan CPU core dovoljan za 500Mbps obrade, trebaju nam 2 CPU core za 1Gbps odnosno 4 CPU core za 1Gbps full duplex.
  • Dakle, trebalo bi nam samo 96 CPU core Intel Pentium 4 na 2GHz, ako imamo CPU na 4GHz tada bi nam trebalo samo 48 CPU core Intel Pentium 4 i još 1.8GB/s brža sabirnica prema “Southbridgechipsetu i mrežnim karticama.

Mislim da je sada sve jasno. Osim toga, koliko god procesor bio brz, baratanje mrežnim paketima će se i dalje događati unutar granica milisekundi. Pozitivno je da ipak određeni postotak obrade paketa uspije odraditi switching chip ali na kraju sve ovisi o proizvođaču koji je točno model switching chipa odabrao (odnosno koliko je bio spreman platiti – mada su često razlike u cijeni smiješne – razlika od 1$ na milijun primjeraka je milijun $). Samo ću reći da postoje proizvođači i “proizvođači”. Čak ovisi i o seriji tj. modelu uređaja gdje proizvođač za relativno malu razliku od nekoliko stotina KN ili malo više nudi poprilično više (ili manje).

 

Postoji  li rješenje?

Zbog ovih ograničenja većina “jačih” proizvođača počela je tražiti rješenje koje stvarno može riješiti ovaj problem vrlo loše propusnosti switcheva (i jačih verzija routera). Rješenje je implementacija tzv. ASIC chipova. Ova ideja zapravo nije nova – u širokoj upotrebi je barem desetak, samo što je u današnje vrijeme postalo široko dostupno (i relativno jeftino).

 

 

 

Autor: Hrvoje Horvat

Članak preuzet, uređen i objavljen uz izričito dopuštenje autora.

Izvor: Open Source Osijek

OHOHO, drveni PC!

$
0
0

Još jedan dokaz da se Linux može instalirati (i) na dasku. Imali smo čast testirati drveni PC. Sa nekoliko distribucija smo ga pokušali slomiti, ali nije se dao.

 

Ovih dana, krajem sezone godišnjih odmora, došlo nam je u ruke novo računalo. Ne radi se o običnom PC-u, kanti kakvih smo se nagledali, već drveni PC sa svim komponentama potrebnim za ugodan rad na računalu. Nakon prvobitnih hardverskih testova, naši eksperti potvrđuju tezu da je stvoren za svakoga (baš kao i Linux).

Tvrtka OHOHO.pro j.d.o.o. iz Koprivnice ustupila nam je jedan neobičan PC na testiranje. Dobio sam priliku poigrati se sa ovim strojem, što me jako veseli, a nadam se da će biti vremena i za zaviriti “ispod haube”. Naime, pronašao sam neke šrafe na dnu kućišta, pa sumnjam da ću odoljeti da ga ne otvorim.

Prvi pogled otkriva zanimljivo kućište, a unutar kutije nalazi se:

  • Četverojezgreni Athlon 5350 procesor,
  • Matična ploča Asrock AM1,
  • 4GB RAM-a i
  • tvrdi SSd disk kapaciteta 120 GB.

Dimenzije kućišta su 22 x 22 x 10 cm (malo veće od mobitela kakvh mnogi imaju).

 

drvena_kutija

 

 

Stražnja strana sadrži sve moguće in/out konektore, čak i HDMI.

 

zadnja_strana

 

Zanimljivo je i napajanje (cigla) 12V DC kao kod prijenosnika. Standardni 5/5.2 mm priključak često se koristi i za druge uređaje. Može se napajati i iz akumulatora automobila, ali ipak je sigurnije koristiti priloženo napajanje. Potrošnja se kreće od 10W u ler-gasu do nekih 40W u punom pogonu.

 

 

Ubuntu, Mint, Manjaro… svi voze na OHOHO PC

Mala, zgodna drvena kutija zadovoljava sve potrebe čak i zahtjevnijeg korisnika. Mint 18 besprijekorno radi na tom stroju. Prije nego sam ga htio “pregaziti” svojim Manjarom, malo sam se poigrao i ugodno me iznenadio brzinom i niskim temperaturama. Ipak, odlučio sam ga zadržati i uz njega instalirati Manjaro. Potvrđeno je da je i Ubuntu isto tako savršeno plesao po njegovom SSD-u.

Osobno ću se ipak zadržati na Manjaru. Manjaro ko Manjaro, ne bih puno o njemu, jer smo već dosta pisali o njegovoj superiornosti prema drugim distribucijama. Savršena distra za svakog korisnika kao i za svako računalo. Tako i za OHOHO.

 

Archey&Screenfetch

 

 

Čitati i pisati može svaki PC, ali pleyati full HD filmove, baš i ne. Upravo to sam vidio kod ovog “Pinokia”. Instalirao sam mpv player i probao zavrtiti neke “teške” video formate. Ostao sam bez teksta: nema trzanja, prekida, smrzavanja i ostalih gadosti koje mi je znao prirediti moj laptop, koji je – usput rečeno – mnogo skuplji od ovog drvenog ljepotana.

Manjaro se boota za svega 30-ak sekundi. Mint je nešto brži, pretpostavljam zbog toga što je prvi instaliran. Navodno, SSD brže čita bliže sektore.
Standardne aplikacije kao što je Chrome, GIMP, LibreOffice, Thunderbird i mnoge druge, otvara munjevitom brzinom. Instalirao sam i Kodi. Čini mi se da je dvostruko brži od mog laptopa. Ekipa koja je prije mene testirala ovu drvenu kutiju, kaže da neke aplikacije otvara prije nego se pusti lijeva tipka miša. Ja bih bez pretjerivanja dodao, da na pr. moj file manager iskače pri samoj pomisli na lijevi klik, što dokazuje i ovaj mali test:

$ time thunar
real 0m0.481s
user 0m0.083s
sys 0m0.017s

Dobro, možda sam malo pretjerao. Ipak se radi o nekim milisekundama, što nekome možda predstavlja vječnost, ali mene apsolutno zadovoljava u svakodnevnim aktivnostima.

Namještaj po mjeri

Po defaultu trebao sam ga smjestiti u radnu sobu, ali dopao se još nekim ukućanima, pa je ipak završio u dnevnom boravku. Veći dio testiranja obavio sam upravo u toj prostoriji (javno), demonstrirajući silu ovog stroja svima koji su se našli u boravku. I oni su, kao i ja ostali zapanjeni brzinom i kvalitetom u obavljanju svakodnevnih radnji na računalu.

WP_20160824_12_57_59_Pro u_boravku

 

Zaključak (moji dojmovi):

U igri sa ovim strojem stavio sam se u kožu običnog malog korisnika, početnika ne bi li otkrio moguće poteškoće u radu. Nisam naišao na nikakve prepreke. Sve je radilo odmah po spajanju i uključivanju. Nakon turbo-brzog bootanja i munjevitog otvaranja standardnih aplikacija, milina je tipkati i klikati, a uz to slušati dobru glazbu. U isto vrijeme, na drugom monitoru se može vrtjeti i neki film.

Sve radi out of the box. Nije potrebno nikakvo posebno predznanje i ne treba nadograđivati hardver. Toplo preporučam ovu drvenu kutiju svakom korisniku. Još jednom zahvaljujemo tvrtki OHOHO.pro j.d.o.o. koja nam je dozvolila da se poigramo sa ovom neobičnom kutijom.

Cijena osnovnog (testiranog) modela je 1600 kn, dok je mnogo snažnije konfiguracije prema vašim potrebama moguće složiti u dogovoru s proizvođačem. Službena stranica proizvođača ovog kućišta još je u razvoju, ali zainteresirani mogu pronaći kontakt podatke i naručiti jedno ovakvo računalo.

 

 

 

Switching i routing: jučer, danas, sutra (treći dio)

$
0
0

U nizu članka autor Hrvoje Horvat upoznat će nas s osnovama i načinom rada switcheva (preklopnika) i routera (usmjernika), te će podijeliti brojne korisne savjete iz praktičnog iskustva. U završnom dijelu autor objašnjava kako prevladati hardverska ograničenja, te implementirati otvoreni kod.

 

 

ASIC (Application Specific Integrated Circuit)

ASIC chipovi su specijalizirani chipovi koji imaju hardverski implementirane sve potrebne funkcionalnosti koje bi inače morao obrađivati CPU. U praksi se pokazalo da se upotrebom ASIC chipova u odnosu na klasični CPU dobivaju poboljšanja performansi minimalno 500, a vrlo često čak i do 1000 puta. Možemo povući paralelu s hardverskim dekodiranjem video sadržaja koji danas s lakoćom obavlja bilo koja grafička kartica dok je prije nekoliko godina to sve (trzavo) morao odrađivati CPU. Dakle, ASIC chipovi rade kompletan switching ili routing:

  • na osnovi MAC adresa (Layer 2),
  • na osnovi IP adresa (Layer 3),
  • na osnovi portova (Layer 4),
  • Traffic forwarding (obrada i prosljeđivanje paketa),
  • QoS (Quality of Service),
  • ACL lookup  (Access liste),
  • Route Processing (obrada routing funkcionalnosti),
  • STP (Spanning Tree Protocol), …

 

Osim toga, jače verzije ASIC chipova imaju implementirane gotovo sve mrežne protokole koje susrećemo u switchevima, kao i većinu mrežnih protokola koje susrećemo u klasičnim routerima. U slučaju upotrebe kod multilayer switcheva radi se o implementiranim gotovo svim protokolima koje uređaj podržava.

Pogledajmo fotografiju Cisco 3750G switcha (24 x 1Gbps + 4 x 1Gbps SFP):

cisco-3750g

 

Na slici gore je Cisco 3750G (switch sa 24 x 1Gbps + 4 x 1Gbps SFP) – vidljivo je da jedan ASIC+SRAM odrađuje samo 4 x 1Gbps te je na njega spojen jedan PHY koji je zadužen za ta četiri 1Gbps porta, koja završavaju na RJ-45 konektoru – pogledajte desnu stranu – i sve tako do 6-tog ASIC, SRAM i PHY.

Sedmi ASIC+SRAM nema svoj PHY (krajnje lijeva strana) jer sve završava na SFP portovima u koje se uključuju SFP moduli koji imaju svoj PHY (jer mogu biti optički ili električni sa RJ-45 konektorom). SFP moduli se često nazivaju i transceiveri.

Slika ispod prikazuje optički SFP+modul (sa LC optičkim konektorom) tvtke “HP” (J9150A) i jedan SFP+ (isto optički 10Gbps, sa LC konektorom), tvrtke Cisco (SFP-10G-SR):

 

 

 

Donja slika prikazuje Cisco 1000Base-T (1Gbps sa RJ-45):

 

 

Malo zanimljivosti

Molim da malo bolje pogledate gornji desni dio gornje slike Cisco switcha Catalyst 3750 (zumirana slika – dolje):

 

Radi se o tome da Cisco za svaku generaciju uređaja ima kodno ime. Budući da je ovo bio prvi model koji je koristio “Stackwise” tehnologiju koja omogućava povezivanje do osam switcheva u prsten – prsten koji ih povezuje – kodno ime mu je bilo “Lord of the Rings”.

… One Ring to rule them all, One Ring to find them,
One Ring to bring them all …

 

A sada pogledajmo i referentnu arhitekturu jedne novije generacije Cisco 3750G Multilayer switcha:

 

Vidljivo je da ASIC ima CAM i TCAM dio kao i vrlo brzu SRAM memoriju za širu upotrebu unutar chipa, te da je povezan sa switching chipom. Jedan ovakav ASIC podržava spajanje do 24x1Gbps PHY (Physical Layer) chipova koji su zaduženi za sam mrežni medij (interface).

PHY mogu biti za bakar (RJ-45 konektor), optiku (bilo koji tip konektora za optiku) ili SFP port u koji se uključuje SFP adapter koji može biti ili za “bakar” ili optika. Dakle, PHY chip je u konačnici taj koji sve pretvara u električne signale ili optičke impulse za slanje na mrežu.

CAM dio (Content Addressable Memory)  je zapravo tablica u kojoj se zapisuju i pretražuju mapiranja MAC adresa –> port na switchu, na osnovu koje se radi switching na OSI sloju 2.

TCAM dio (Ternary Content Addressable Memory) je zapravo tablica sa mapiranjima na višim OSI slojevima (OSI 3) dakle ovdje se spremaju routing tablice i sl.

CAM i TCAM se nalaze u posebnoj superbrzoj memoriji ASIC chipa ili u starijoj generaciji kao zaseban chip, koja omogućava nevjerojatno brzi pristup i pretraživanje navedenih tablica.

Vidljivo je da starija generacija Cisco 3750G ima ASIC i ASIC RAM (CAM i vjerojatno TCAM) uz pripadajući PHY i switching chip  – samo za 4 x 1Gbps, dok novija generacija koristi mnogo snažnije ASIC chipove koji su u stanju “odraditi” do 24 x 1Gbps na chipu (nažalost nemam fotku nove generacije Cisco 3750, ali je sve jasno iz priložene logičke sheme). Jedina slaba točka ovog dizajna je međuveza između ASIC chipova odnosno propusnost sabirnice koja ih povezuje.

Nagađa se da Cisco i (drugi) veliki igraći zapravo koriste “Mesh” topologiju između ASIC chipova, preko koje su ASIC chipovi povezani sabirnicom velike propusnosti. Time se ubrzala komunikacija između njih i komunikacija prema centralnoj sabirnici. Mana ovog dizajna je u tome što se sada za recimo ovakav switch u primjeru koristi 10 portni (zamišljeni) ASIC koji koristi 6 portova za međusobno spajanje a samo 4 porta za spajanje prema PHY i na kraju fizičkim interfaceima (portovima). U konačnici, u dizajnu na slici imamo 4 ASIC chipa sa 10 x 1Gbps portova (svaki) što je ukupno 40 x 1Gbps od kojih je upotrebljivo za spajanje (na vanjske portove) samo 16 x 1Gbps. Prema svemu sudeći međuveze između svakog ASIC-a bi u ovoj konfiguraciji trebale biti još veće (u ovom slučaju  dvostruko ili još više).

Za ono što bi bio “Non blocking” dizajn minimalno isto toliko portova koliko ih svaki ASIC propušta van (na mrežne portove) bi morala biti i veza prema svakom susjednom ASIC-u. Pogledajmo i ovakav dizajn (slika dolje):

 

switch-asic-mesh

 

U svakom slučaju, bilo koji dizajn koji uključuje ASIC chipove omogućava postizanje vrlo velikih brzina procesiranja mrežnih paketa i to brzinama koje su neizvedive za standardne centralne procesore (CPU).

Dakle, switchevi koji imaju implementirane ASIC chipove, sve operacije i protokole (koje ASIC podržava) odrađuju 1000 puta brže od bilo kojeg CPU-a. U praksi to znači da će sve operacije koje ASIC obradi – poput switchinga ili routinga biti obrađene unutar granica nekoliko mikrosekundi za razliku od routinga koji se inače na “običnim uređajima” u najboljem slučaju uspije obraditi unutar nekoliko milisekundi – dakle točno tisuću (1000) puta sporije.

Ponoviti ću: razlika je tisuću puta brža obrada paketa!!!!

 

Pogledajmo i što nam kaže Cisco IOS (Cisco operacijski sustav), na nekoliko Catalyst serija switcheva. Sada ćemo ono što možda izgleda kao teorija pogledati na stvarnim Cisco switchevima i to na:

  • Catalyst 2960 [Layer 2, 10/100] (“najslabija” serija),
  • Catalyst 3560G [Multilayer, 10/100/1000] (Layer 2, 3, 4) – prvi Multilayer switch,
  • Catalyst 3750G [Multilayer, 10/100/1000] (Layer 2, 3, 4) – sličan kao 3560 samo što ima mogućnost “stackiranja” do 8 switcheva preko specijalne međuveze vrlo visoke brzine (32+Gbps),
  • Catalyst 3850 [Multilayer 10G] (Layer 2, 3, 4) – s novim Cisco ASIC-om.

Koristiti ćemo naredbu koja će prikazati vezu između ASIC chipa i interfacea na switchu odnosno koji interface je spojen na koji ASIC chip.

Naredba (ovisno o platformi) je:

sh platform pm interface-numbers

sh platform pm if-numbers

Izlistanje je malo duže tako da ću izvući samo važne detalje:

WS-C2960-24TC-L

Fa 0/1 – 24     ASIC 0     (portovi 10/100 Mbps)
1

Fa 0/1 – 24     ASIC 0     (portovi 10/100 Mbps)

Gi 0/1 – 2     ASIC 0    (portovi 10/100/1000 Mbps)
1

Gi 0/1 – 2      ASIC  0    (portovi 10/100/1000 Mbps)

 

WS-C3560G-24TS

Gi 0/1 – 4     ASIC 1
1

Gi 0/1 – 4      ASIC 1

Gi 0/5 – 8      ASIC 0
1

Gi 0/5 – 8      ASIC 0

Gi 0/9 – 12    ASIC 3
1

Gi 0/9 – 12     ASIC 3

Gi 0/13 – 16     ASIC 2
1

Gi 0/13 – 16     ASIC 2

Gi 0/17 – 20     ASIC 6
1

Gi 0/17 – 20     ASIC 6

Gi 0/21 – 24     ASIC 5
1

Gi 0/21 – 24     ASIC 5

Gi 0/25 – 28     ASIC 4
1

Gi 0/25 – 28     ASIC 4

 

WS-C3750G-48TS

Gi1/0/1 – 4          ASIC 6
1

Gi1/0/1 – 4          ASIC 6

Gi1/0/5 – 8          ASIC 5
1

Gi1/0/5 – 8          ASIC 5

Gi1/0/9 – 12         ASIC 8
1

Gi1/0/9 – 12         ASIC 8

Gi1/0/13 – 16        ASIC 7
1

Gi1/0/13 – 16        ASIC 7

Gi1/0/17 – 20        ASIC 4
1

Gi1/0/17 – 20        ASIC 4

Gi1/0/21 – 24        ASIC 3
1

Gi1/0/21 – 24        ASIC 3

Gi1/0/25 – 28        ASIC 10
1

Gi1/0/25 – 28        ASIC 10

Gi1/0/29 – 32        ASIC 9
1

Gi1/0/29 – 32        ASIC 9

Gi1/0/33 – 36        ASIC 2
1

Gi1/0/33 – 36        ASIC 2

Gi1/0/37 – 40        ASIC 1
1

Gi1/0/37 – 40        ASIC 1

Gi1/0/41 – 44        ASIC 12
1

Gi1/0/41 – 44        ASIC 12

Gi1/0/45 – 48        ASIC 11
1

Gi1/0/45 – 48        ASIC 11

Gi1/0/49 – 52 (SFP portovi)        ASIC 0
1

Gi1/0/49 – 52 (SFP portovi)        ASIC 0

 

WS-C3850-12S-S  (ovdje je bilo malo teže povezati ASIC -> port)

(10Gbps portovi)         ASIC

Te1/0/1  –  12        1
1

Te1/0/1  –  12                1

 

 

Rezimirajmo

Što se događa na kojem sloju i kojom brzinom za switcheve koji koriste ASIC:

  • Layer 2 switch: sve se odrađuje na osnovi MAC adresa. Svi Layer 2 protokoli koji su podržani u ASIC-u odrađuju se  brzinom hardvera (tzv. “Wire Speed”) – dakle 1000 puta brže nego na “običnim” switchevima.
  • Layer 3 switch: sve operacije preklapanja tj., ovdje govorimo o routingu (usmjeravanju) se odrađuju na osnovi IP adresa. Sve se odrađuje brzinom hardvera, kao i svi mrežni protokoli koji su podržani od strane ASIC-a.
    • Layer 4: dodaje se mogućnost rada na transportnom sloju (TCP/UDP portovi) – možemo reći da je ovaj sloj “Application aware” – svjestan aplikacija.

 

 

Stvarna mjerenja

Zbog potrebe da se uvede red u stvarne pokazatelje odnosno stvarnu propusnost switcheva, postoji nekoliko pokazatelja na koje treba obratiti pažnju.

 

Za početak što je Gbps i Mpps?

Oznaka Gbps (gigabita u sekundi) označava ukupnu propusnost switcha koju dijele SVI portovi. Ovo je tzv. “Fabric” ili “Bus” brzina. Minimalna brzina koju uređaj mora imati je jednaka zbroju brzina svih interfacea uređaja.

Dakle, ako imamo switch sa 24 x 1Gbps, pošto uređaj na gigabitnoj brzini mora moći raditi u “Full Duplex” načinu rada to znači da 24 x 1Gbps mora moći podnijeti 24 x 2Gbps = 48Gbps. To znači da uređaj mora moći obrađivati pakete propusnošću od 48Gbps.

Napomena: mnogi proizvođači samo pozbrajaju i pomnože sve navedeno bez stvarnih mjerenja – da bi rezultati bili bolji.

Pogledajmo usporednu tablicu nekoliko modela i proizvođača switcheva za 24 x 1Gbps switcheve, kako za Layer 2 , tako i za Layer 2/3/4 switcheve (donja granica bi morala biti 48Gbps):

sw-tablica-1

 

Oznaka Mpps (milijuna paketa u sekundi) označava broj paketa koji se mogu obraditi u jednoj sekundi, a ovise o veličini paketa. Većina ozbiljnih proizvođača navodi najmanje pakete (64 bajta), koji su i najzahtjevniji za obradu. Oni manje “ozbiljni” navode puno veće pakete da bi im rezultati izgledali drastično bolji.

Kada gledamo rezultate mjerenja, trebamo tražiti broj Mpps za 64-bajtne pakete! Za brzinu 1 Gbps uz 64-bajtne pakete znači da je potrebno 1.488 Mpps (1.488 milijuna paketa u sekundi).

Za 1Gbps brzinu kako smo došli do 1.488 Mpps?

  • 1Gbps = 1,000,000,000 bps
    • 8 bitova = 1 bajt, a mi moramo sve pretvoriti u Bps = 1,000,000,000 / 8 = 125,000,000 Bps

Zanimaju nas 64-bajtni paketi. Za Ethernet:

  • 8 bajta je “Frame Header”,
  • 12 bajta je standardni minimalni razmak između mrežnih paketa tj. okvira (Interframe Gap).

Dakle, za najmanji paket od 64 bajta uz njega ide i 8 bajta “Frame Header”, te slijedi 12 bajta razmak koji mora ići između svakog paketa na mreži (za 1Gbps – prema osnovnom standardu je to 12 bajta).

Tako dobivamo: 125,000,000 Bps / (64+8+12) = 1,488,095 pps (paketa u sekundi) = 1.488 Mpps (milijuna paketa u sekundi).

Prema tome, 24 portni gigabitni switch mora imati minimalnu propusnost: 24 x 1Gbps (1.488 Mpps) (duplex) = 36Mpps.

 

Pogledajmo sada karakteristike nekoliko switcheva i modela raznih proizvođača, dostupnih kod nas, koje sam uzeo u razmatranje.
Napomene: ovdje je donja granica “ozbiljnosti” odnosno “upotrebe” koja se očekuje od 24 x 1Gbps switcha minimalno 36Mpps. Sve preko toga je nepotrebno osim:

  • ako uređaj ima dodatnih SFP ili sličnih portova: svaki dodatni 1Gbps SFP dodaje potrebu za povećanjem propusnosti od  1.488 Mpps ili
  • ako se koristi i kao platforma za jače modele switcheva koji, primjerice, ima dvostruko veći broj portova ili dodatne SFP ili SFP+ portove.

 

propusnost-switcheva

 

Što to znači za switcheve iz ove kategorije koji nisu u stanju isporučiti minimalno 36Mpps? Switch koji je, primjerice, u mogućnosti isporučiti samo do 10Mpps punom brzinom može “opskrbiti” maksimalno do 7 x 1Gbps.

Dakle, ako imamo do maksimalno sedam (7) mrežnih uređaja (računala/poslužitelja i sl.) spojenih na switch sve će raditi dovoljno brzo, ali već spajanjem osmog (8) uređaja dolazi do usporavanja. Naime, platili smo switch sa 24 x 1Gbps a dobili smo sedam (7) portni switch s dodatnih 17 portova. Ovo nekada nije loše – ako je on cijenom vrlo prihvatljiv kao router i switch, na kojemu neće ukupno biti puno mrežnog prometa (u ovom slučaju ne više od ukupno 10Mpps) ali u većini primjena je to pristup/uređaj koji treba izbjegavati, što zbog buduće potrebe porasta brzine ili broja spojenih novih (dodatnih) uređaja.

Na kraju pogledajmo i cijene svih navedenih uređaja:

sw-tablica-3

 

Svi odabrani uređaji su odabrani na osnovi dostupnosti (u našim trgovinama) i stanja koje sam često zatekao u upotrebi. Točan odabir proizvođača i modela ne želim komentirati u ovom članku. Konačna preporuka i odabir bi bili ovisni o svim parametrima koje sam do sada naveo te o praktičnom iskustvu za točno određenog proizvođača, za točno određenu seriju i model (po nekada i za točno određenu verziju firmwarea).

Ovo možda zvuči smiješno, ali doživio sam slučajeve u kojima određene novije verzije firmwarea ispravljaju stare greške i otvaraju nove koje nikako da se zatvore. Bilo je i slučajeva gdje proizvođači navode listu grešaka za koje znaju ali ih godinama (ili nikad) ne isprave. Do te je dokumentacije malo teže doći jer se baš ne reklamira. Bilo je i slučajeva u kojima ne radi određena kombinacija protokola ili postavki koja bi po svakoj logici morala raditi a i radi inače (ali baš na određenom modelu ne radi – što shvatite nakon pola dana surfanja i pretraživanja interneta). Postojali su i slučajevi u kojima sam proizvođač nudi kao rješenje da se u slučaju upotrebe protokola A, B i C zajedno u određenoj konfiguraciji ne koriste određeni portovi na switchu

 

 

Na granici 1Gbps i više (10/40/100 Gbps)

Prednost ali i mana ASIC (Application-specific integrated circuits) je u njihovom dizajnu. Implementira se hardverska podrška (zapravo hardverska akceleracija) za svaki pojedini mrežni protokol ili funkcionalnost. Ovo osnovno obilježje ASIC-a daje mu iznimnu brzinu, koja je nedostižna klasičnim procesorima (CPU), ali je i mana jer dodavanje novog mrežnog protokola ili nove funkcionalnosti znači potrebu da se projektira i proizvede posve novi ASIC chip. Ovo u praksi znaci potrebu za kupnjom novog uređaja.

Nove generacije ASIC-a su programabilne verzije ASIC chipova koje rješavaju ovaj problem. Odnosno oni su neovisni o mrežnom protokolu ili funkcionalnosti ali zadržavaju ekstremne brzine obrade mrežnih paketa. Pojam “Programabilni ASIC ” često možemo vidjeti pod nazivom “Software Defined Networking” (SDN) – ako govorimo o ASIC chipovima.

S obzirom na to da je važnost ASIC-a jasna, mnogi veliki proizvođači poput tvrtki “Cisco” i “Juniper” ulagali su i ulažu u razvoj svojih ASIC rješenja. U toku 2009. godine tvrtka “Juniper” obavila je da će u periodu od tri godine uložiti nekoliko stotina milijuna dolara u razvoj ASIC chipova nove generacije, a slično je i s tvrtkom “Cisco”.

Juniper je nakon toga 2013. godine izbacio na tržište prvi switch s njihovim novim programabilnim ASIC-om. Radi se o modelu EX9200 (nazivi su im  “I-Chip” i “Trio chipset”). Cisco je početkom iste godine također krenuo s upotrebom svog ASIC riješenja pod  nazivom UADP  “Unified Access Data Plane” koji je prvo ugrađen u Cisco Catalyst 3850 seriju 10Gbps switcheva.

Cisco 3850 koristi UADP ASIC koji podržava do 24 x 10Gbps portova. Dakle, modeli sa do 24 porta imaju jedan UADP ASIC dok modeli sa 48 portova imaju 2 UADP ASIC-a. Kasnije je izašla nova serija 3650 (10/100/1000 Mbps) koja također koristi UADP ASIC.

Zbog vrlo skupog razvoja svojih rješenja i “Cisco” i “Juniper” u određenim (“slabijim”) modelima uređaja koriste ASIC chipove specijaliziranih proizvođača ASIC-a poput tvrtki “Broadcom”, “Marwell” i “Fulcrum microsystems” (2011 ih je kupio Intel) a koje nude svoja ASIC rješenja i drugim proizvođačima mrežne opreme (poput tvrtki Brocade, HP, DELL i drugih).

Na zahtjevnijim platformama oba proizvođača (Cisco i Juniper) uz upotrebu “univerzalnih” ASIC-a poput gore navedenih, koriste i svoja rješenja ili ih kombiniraju sa svojima da bi dobili sve potrebne funkcionalnosti i brzinu u odnosu na konačnu cijenu proizvoda. Proizvođači poput tvrtki “Cisco” i “Juniper” na svojim najzahtjevnijim platformama najčešće koriste svoja rješenja koja prema njima nude najveće performanse (u ovoj kategoriji se baš i ne pita previše za cijenu).

S obzirom na činjenicu da tvrtka “Broadcom” drži 65% tržišta ASIC-a, pogledajmo i što oni nude. Osvrnimo se na proizvode koji pokrivaju gornji segment tržišta (10Gbps  i 40Gbps). Trenutno su najviše u upotrebi:

  • Trident [BCM56840] (pojavio se u 2010. godine; podržava do 48 x 10Gbps na jedom ASIC chipu). Koriste ga:
    • Juniper (QFX3500),
    • Cisco (Nexus 3064),
    • Dell Networks (bivši Force 10) – S4810,
    • HP (5900 AF 48XG),
    • IBM (BNT RackSwitch G8264),
    • … i još nekoliko manjih proizvođača.
  • Trident+ [BCM56840 (+)] (podržava do 64 x 10Gbps na jednom ASIC chipu). Koriste ga:
    • Cisco (Nexus serija switcheva),
    • Juniper (QFX3500 serija switcheva),
    • Dell (kupnjom tvrtke “Force 10” u toku 2011. godine).
  • Trident II XGS [BCM56850] (2012. god.; za 10Gbps i 40 Gbps) – Novija verzija ASIC-a koja podržava 32 x 40G porta ili 104 x 10G sve na jednom ASIC chipu. Switching propusnost ovog ASIC-a je 1280 Gbps. Koriste ga:
    • Cisco (Nexus 9000),
    • Dell Networking S6000,
    • … i nekoliko manjih proizvođača.
  • Tomahawk (2014. god.) – Najnoviji član obitelji.
    • Ima switching propusnost od 3200 Gbps (3.2Tbps),
    • Jedan chip podržava do 128 x 25Gbps portova,
    • Ovo je prvi programabilni ASIC tvrtke Broadcom (ovu tehnologiju Broadcom zove “BroadView”).

 

Definitivno možemo reći da se sve više ide prema modelu u kojemu po jedan ASIC i switching chip podržavaju dovoljan broj portova za cijeli switch. Ovim dizajnom se rješava problem sporosti sabirnice između više ASIC chipova, koja postaje sve veći problem na sve većim brzinama (10G/40G/100G). Prema ovom modelu referentni dizajn bi izgledao ovako:

switch-asic-10gplus

 

 

Što je tu Open Source?

Kao što smo prethodno spomenuli, svaki router i switch se sastoje od gotovo istih komponenti kao i računala. Najveća razlika je u switching chipu i ASIC-u. Nakon što je Broadcom ponudio ASIC (+ switching chip) generacije Trident II, stvari su se drastično promijenile. Upravljački programi za ovaj ASIC – i za Linux postali su dostupni. Bilo je samo pitanje vremena kada će se netko sjetiti napraviti svoj switch (praktično računalo) sa spojenim ovim ASIC-om i dobili ste nevjerojatno snažnu platformu. Ostaje napraviti svoju distribuciju Linuxa i optimizirati postojeće mrežne servise da znaju iskoristiti snagu ovog novog hardvera. Došli smo do OpenSource Switcha koji se, barem u teoriji, može natjecati sa proizvođačima poput Cisca, Junipera i ostalih.

Sredinom 2014. godine se pojavila tvrtka “Pica8” koja je napravila upravo to – uzeli su bootloader od  “Open Network Install Environmenta” (koji razvija tvrtka “Cumulus Networks”), a koji je dio “Open Compute Projecta”, te dodali i druge komponente Linuxa kao i potrebne mrežne servise. Time je nastala njihova distribucija Linuxa koja se zove PicOS. Vrlo brzo nakon toga uslijedila je dobra podrška i za “Trident”, “Trident+” i za najnoviji “Tomahawk”.

Ovdje je važno postaviti pitanje kojem je hardveru sve to namijenjeno (ipak neće svatko kod kuće sastavljati svoj 10Gbps switch)? Bez brige, oni nude i “prazne”switcheve. Ubrzo su se pojavili i ostali čije distribucije Linuxa se isto mogu instalirati na ove switcheve:

  • Cumulus Networks (Open Network Install Environment),
  • Vyatta (kupila ih je tvrtka “Brocade”),
  • On.Lab ONOS.

Ubrzo su se pojavili i ostali proizvođači mrežne opreme koji nude svoj hardver za switcheve na koji možete sami instalirati svoj OS. Od tog trenutka se otvorilo novo područje u kojemu će vjerojatno sve veći broj proizvođača nuditi svoj i nadam se OpenSource softver za switcheve. Poslovni model davanja svega u Open Source nije nimalo stran. U tom svijetu se živi od podrške – primjerice tvrtka “RedHat” godišnje od podrške zarađuje preko dvije milijarde dolara! Pogledajmo trenutnu listu kompatibilnog hardvera za PicOS.

Jedino što je ostalo upitno je “masivno” testiranje, ali s obzirom na tendenciju da sve završi u potpunosti kao open source projekt koji će s vremenom sigurno prihvaćati sve veća zajednica ljudi (a siguran sam i raznih tvrtki). Kvaliteta će se na taj način vrlo lako uzdići iznad bilo kojeg close source rješenja.

Još jedna je vrlo važna zajednička stvar kod svih ovih rješenja je podrška za “OpenFlow” protokol. On je dostupan za sve važnije operacijske sustave a dolazi uz “Open vSwitch”  koji je i integriran (instaliran) u sva gore navedena rješenja. “OpenFlow” je vrlo važan protokol za široku upotrebu i primjenu SDN rješenja (kako open source, tako i proprietary rješenja). Njega su do danas prihvatili svi važniji proizvođači mrežne opreme, poput:

  • Alcatel-Lucent,
  • Big Switch Networks,
  • Brocade Communications,
  • Radisys,
  • Arista Networks,
  • Pica8,
  • NoviFlow,
  • Huawei,
  • Cisco,
  • Dell (Force10),
  • Extreme Networks,
  • IBM,
  • Juniper Networks,
  • Digisol,
  • Larch Networks,
  • Hewlett-Packard,
  • NEC,
  • MikroTik i dr.

 

 

Autor: Hrvoje Horvat

Članak preuzet, uređen i objavljen uz izričito dopuštenje autora.

Izvor: Open Source Osijek

Viewing all 66 articles
Browse latest View live