Úvod k OpenAFS

Transkript

Úvod k OpenAFS
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Úvod k OpenAFS
Michal Švamberg
Západočeská univerzita v Plzni
7. listopadu 2010
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
1/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Obsah
1
Úvod
2
Klienti a uživatelé
3
Servery
4
Administrace
5
Projekty
6
Praktické zkušenosti
7
Závěr
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
2/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Co je AFS
Andrew File System (Andrew project na CMU) je distribuovaný
souborový systém s architekturou klient – server. Původně od
Transarc Corporation (nynı́ IBM Pittsburgh Labs), IBM poskytla
zdrojové kódy od AFS v podobě OpenAFS (rok 2000), dále
udržovala komerčnı́ variantu DCE/DFS, která je k dispozici pod
LGPL od roku 2005.
Pro
vı́ce storage serverů
jednotný jmenný prostor
nezávislý na umı́stěnı́
cache u klienta
bezpečnost a škálovatelnost
RO replikace
klienti pro různé OS
Michal Švamberg svamberg @civ .zcu.cz
Proti (na něčem se pracuje)
vyžaduje kerberos
vlastnı́ UID, GID a ACL
nenı́ plně POSIX, nemá /dev/
nepodporuje hardlinky
zatı́m použı́va DES a fcrypt
nemá RW replikaci
kernelový modul, SMB/CIFS
OpenAFS
3/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Architektura klient-server
Klient Linux: afsd + kerberos, cache na ext2/3
OS X: afsd + diskcache
Windows: local SMB/CIFS server
...
Server bosserver: manager serverových procesů
DB: ptserver, vlserver, buserver
Backup: butc, cron
File: fileserver
Linux: XFS (ext3, reiserfs)
OpenSolaris: ZFS
...
Komunikace na portech 7000-7010 (RxOSD 7011, 7012) UDP.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
4/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Závěr
Podmı́nky provozu
Minimum NTP (max 5 minut rozdı́l)
DNS (servery musı́ být registrované)
Kerberos KDC (MIT nebo Heimdal)
AFS databázové servery
AFS souborové servery
Vhodné DHCP, TFTP, PXE pro snadnou správu klientů
Rozšiřitelné Active Directory
LDAP
NIS
Instalace vyžaduje několik speciálnı́ch kroků, je vhodné postupovat
podle některých ze step-by-step návodů, napřı́klad:
http://www.debian-administration.org/article/610/OpenAFS_installation_o
http://www.scode.org/afs/openafs-install.txt
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
5/28
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Základnı́ pojmy
AFS celosvětově dostupný distribuovaný souborový systém
volume je konečný adresářový strom; nejmenšı́ entita, kterou
lze v AFS spravovat
AFS cell (buňka) administrátorsky nezávislá část AFS poskládaná
z jednotlivých volumů
Kerberos realm doménové jméno velkýmy pı́smeny
ZCU.CZ
cell name je realm malými pı́smeny označujı́cı́ AFS buňku
zcu.cz
ticket časově omezené pověřenı́ od kerberosu
principal je unikátnı́ identita, která může zı́skat ticket
[email protected]
token časově omezené pověřenı́ pro AFS na základě ticketu
AFS klient náležı́ ke své AFS buňce, ale má přı́stup k ostatnı́m
OpenAFS je jedna z implementacı́ AFS
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
6/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Cesta v AFS stromu
AFS cesta: /afs/zcu.cz/software/i386 linux26/usr/lib
/afs kořen AFS vytvořený klientem, ukazuje na root.afs
root.afs obsahuje přı́pojné body (mount points) pro klienty,
klient může přidat dalšı́ dle souboru CellServDB
root.cell kořenový volume dané AFS buňky
@sys klient nahradı́ hodnotou z přı́kazu fs sysname
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
7/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Co je to volume
Volume je konečný adresářový strom, který může obsahovat:
soubory
symbolické linky
hardlinky ve stejném adresáři
adresáře
mountpointy na jiné volumy
Volume nemůže obsahovat:
unixové sokety
pojmenované roury
a dalšı́ speciálnı́ soubory (zařı́zenı́ z /dev)
Volumy mohou být přesouvány mezi servery, bez toho aniž by to
mělo na uživatele vliv.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
8/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Typy volumu
RW pro čtenı́ i zápis, je nejdůležitějšı́
jen jedna kopie
max. 22 znaků v názvu volumu
může mı́t nastavenou kvótu
RO pouze pro čtenı́, aktualizuje se na přı́kaz z RW
vı́ce kopiı́ na vı́ce serverech, max. 1 shodně s RW
název s přı́ponou .readonly
BK pouze pro čtenı́, aktualizuje se automaticky z RW
jen jedna kopie (snapshot) na stejném mı́stě jako RW
název s přı́ponou .backup
vytvářenı́ definuje administrátor
V systému se mohou vyskytnout i dalšı́ typy volumů, použı́vá je
AFS při administrátorských operacı́.
Každému jménu volumu odpovı́dá čı́selný identifikátor.
Replikace (release volumu) je synchronizace RO volumů vůči RW
volumu. Je prováděna na přı́kaz uživatele/administrátora.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
9/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Závěr
vos examine root.cell
root.cell
536871323 RW
227 K
eurynome2.zcu.cz /vicepa
RWrite 536871323 ROnly 536871324 Backup 876057893
MaxQuota
5000 K
Creation
Thu Aug 18 13:45:47 2005
Copy
Mon Mar 6 13:15:23 2006
Backup
Mon Mar 6 13:15:26 2006
Last Update Tue Mar 23 14:19:53 2010
1457 accesses in the past day (i.e., vnode references)
RWrite: 536871323
ROnly: 536871324
number of sites -> 8
server eurynome2.zcu.cz partition /vicepa RW Site
server ezop.fpe.zcu.cz partition /vicepa RO Site
server harpia.zcu.cz partition /vicepa RO Site
server elektra3.zcu.cz partition /vicepa RO Site
server eurynome2.zcu.cz partition /vicepa RO Site
server eurynome.zcu.cz partition /vicepb RO Site
server fennel.fek.zcu.cz partition /vicepa RO Site
server dce.zcu.cz partition /vicepf RO Site
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
10/28
On-line
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Typy mountpointů
RW-mountpoint %volumename
fs mkmount <dir> <volumename> -rw
vždy směřuje na RW kopii volumu
advisory RO-mountpoint #volumename
fs mkmount <dir> <volumename>
směřuje na RW pokud se odkazujeme z RW
směřuje na RW pokud nejsme v RO
směřuje na RW pokud RO neexistuje
mandatory RO-mountpoint #volumename.readonly
fs mkmount <dir> <volumename>.readonly
vždy odkazuje na RO
backup mountpoint #volumename.backup
fs mkmount <dir> <volumename>.backup
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
11/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Závěr
cd /afs; fs lsmount ‘ls -A‘
’ics.muni.cz’ is a mount point for volume ’#ics.muni.cz:root.cell’
’kiv.zcu.cz’ is a mount point for volume ’#kiv.zcu.cz:root.cell’
’ruk.cuni.cz’ is a mount point for volume ’#ruk.cuni.cz:root.cell’
’world’ is not a mount point.
’zcu.cz’ is a mount point for volume ’#root.cell’
’.zcu.cz’ is a mount point for volume ’%root.cell’
Poslednı́ mountpoint vytvářı́ tzv. RW strom, kde jsou všechny
volumy odkazovány na RW kopie (pokud to nenı́ vynuceno
mandatory RO-mountpointem). V ostatnı́ch bude AFS klient
preferovat RO volumy.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
12/28
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Autentizace uživatele
kinit <principal> vytvořenı́ pověrovacı́ho lı́stku (ticket)
klist vypsánı́ obsahu lı́stku
kdestroy zrušenı́ pověřenı́
aklog vytvořenı́ tokenu z Kerberos lı́stku
tokens vypsánı́ tokenů
unlog zrušenı́ tokenů
AFS má vlastnı́ databázi uživatelů, která umožňuje:
nezávislost na uživatelı́ch v OS
vztah ke Kerberos databázi uživatelů
sdružovat uživatele do skupin a také skupiny skupin
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
13/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Práva
Oprávněnı́ (ACL) se aplikujı́ na adresář, předcházı́ právům OS.
i insert files
d delete files
r read files
w write files
l list directory (lookup)
k lock files
a administer (upravovat práva, vytvářet mountpointy)
Zkratky práv:
read rl
write rlidwk
all rlidwka
none - (odebránı́ veškerých práv)
Práva se nastavujı́ v RW volumu, pro změnu v RO je nutný release.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
14/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Cache Manager
je součástı́ klienta, úkolem je zlepšit rychlost
lze cachovat na disk (jen vybrané FS), do paměti nebo vůbec
ověřenı́ práv provádı́ fileserver (možné bezpečenostnı́ riziko)
umožňuje rozumnou práci i při potı́žı́ch s konektivitou
potı́že s NAT (plynou z použitı́ callbacků a UDP protokolu)
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
15/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Servery
bosserver ”hlı́dá”běh ostatnı́ch serverů (bos)
ptserver udržuje databázi uživatelů a skupin, ověřuje
přı́stupová práva (pts)
vlserver databáze volumů s jejich umı́stěnı́m (vos)
fileserver instance spravuje volumy na souborovém systému (bos)
fs – poskytuje data, stará se o soubory (fs)
volserver – udržuje informace o volumech (vos)
salvager – kontrola konzistence dat (bos)
Databázové servery (ptserver, vlserver) je vhodné mı́t replikované v
počtu 3, servery mezi sebou provádı́ volbu, master je s nejnižšı́ IP
adresou. To samé platı́ pro kerberos, kde se master určuje
konfiguracı́.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
16/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Komunikace mezi klientem a servery
PRDB: Protection DataBase, VLDB: Volume Location DataBase
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
17/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Uživatelé a skupiny
Základnı́ pojmy k uživatelům:
server odkazuje na server spravujı́cı́ uživatele a skupiny
users principal nebo IP adresa
groups skupiny jsou vlastněné systémem nebo uživatelem
supergroups skupina skupin
práva lze nastavit pouze na úrovni adresářů
IP nelze vložit přı́mo, musı́ být uloženo ve skupině
Předdefinované skupiny:
system:administrators
system:backup
system:anyuser
system:authuser
system:ptsviewer
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
18/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Zálohovánı́
buserver spravuje backup databázi (obdoba vlserver, ptserver)
butc proces obsluhujı́cı́ uložné zařı́zenı́ pro zálohovánı́
backup uživatelské rozhranı́ pro ovládánı́ zálohovánı́
vos dump vytvořenı́ zálohy volumu (nezávisle na AFS-backup)
vos restore obnova volumu ze souboru
Pro zálohovánı́ dat AFS je nutné zachovat minimálně informace
o právech a nezapomenout na mountpointy. Běžné zálohovacı́
nástroje toto nepodporujı́.
vos release vypropagovánı́ změn z RW do RO kopiı́
vos copy okopı́rovánı́ volumu na jiné mı́sto pod novým jménem
vos backup vytvořenı́ .backup volumu z RW
vos backupsys vyvolánı́ hromadného updatu .backup volumů
vos convertROtoRW vytvořenı́ RW volumu z RO kopie
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
19/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Zůstat v suchu a teple
Limity na které je vhodné myslet:
max velikost /vicep oddı́lu 2 TB
max velikost volumu 2 TB
max velikost souboru 2 GB (pouze pro Windows do verze 1.5.3)
max počet souborů v adresáři 64tis, doporučováno 16-24tis
max ACL záznamů v adresáři 20
max délka názvu volumu 22
Tyto limity nejsou hraničnı́, většinu lze v současné době překročit
nebo se na jejich úpravách pracuje. Tyto jsou však doporučeny pro
produkčnı́ prostředı́.
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
20/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Když to nefunguje
date
kinit/klist
aklog/tokens
bos status
vos listvldb
vos listvol
vos examine
fs whereis
fs examine
translate et
rxdebug
udebug
cmdebug
/etc/services
afsmonitor
kontrola správného času
zı́skat a zkontrolovat Kerberos lı́stek
zı́skat a zkontrolovat AFS token
kontrola běžı́cı́ch instancı́
výpis obsahu Volume Location DataBase
seznam volumů na fileserveru
informace o volumu z VLDB i fileserverů
na kterém serveru je uložen soubor
status souboru
překlad čı́selných chybových kódů
debug Rx protokolu
debug Ubik protokolu (synchronizace databázı́)
zı́skánı́ informacı́ z cache manageru (klient)
seznam portů nejen k AFS, nebo manuálové stránky
sběr informacı́ z fileserverů a cache managerů
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
21/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Projekty
autentizace přes GSSAPI, zlepšenı́ šifrovánı́
přechod na protokol TCP/IP
DAFS (on demand připojenı́ volumů k fileserveru)
ACLs pro každý soubor
...
RxOSD
umožňuje soubory ve volumu rozmı́stit přes vı́ce úložišt’
politika (pravidla) určuje typ a parametry rozloženı́
stripe/mirror
projekt přidává dalšı́ 2 servery (databázový a souborový)
nastavenı́ lze ovládat přı́kazem osd
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
22/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
RxOSD - testovacı́ prostředı́
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
23/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Konfigurace testu
dstat -n -N total,eth0,eth1 -d -D total,sda,sdb,sdc,sdd
běžı́ na Domain-0
ukládá informace o provozu na discı́ch a sı́ti
iozone -s 1G -r 128k -c -t 1 -F fileI3ITvM -i 0 -i 1 -i 2
spuštěno na AFS klietech
vytvořı́ 1GB soubor v určeném adresářı́ (volume)
testy: write/rewrite, read/re-read and random-read/write
parallel-ssh -h clients.txt -p 100 -t 86400 ’<iozone command>’
distribuuje přı́kaz iozone na klienty
zı́skáme čas jednotlivých klientů
time <parallel-ssh command>
zı́skáme celkový čas testu, všichni klienti musı́ dokončit test
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
24/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Závěr
RxOSD - čas potřebný pro dokončenı́ úkolu
110
Legend
Non-OSD
OSD, stripes=2
100
90
Time [minutes]
80
70
60
50
40
30
20
10
0
5
10
15
Number of clients
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
20
25
30
25/28
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Závěr
OpenAFS na Západočeské univerzitě v Plzni
Statistika:
počet účtů v PRDB:
počet RW volumů:
AFS-DB a KRB servery:
AFS-FS servery:
diskový prostor:
počet klientů:
počet administrátorů:
41800+ (a dalšı́ch 400+ skupin)
43400+
3x Solaris 9 (SPARC)
11x GNU/Linux Debian Lenny
6,3GB (volno 2,8GB)
1000+ (Win, Unix, Linux, Mac OS, . . . )
2, dohromady cca 1/10 úvazku
AFS použı́váme pro:
konfiguračnı́ soubory
softwarové úložiště
instalaci desktopů (Win/Linux) a serverů (Linux)
podporu projektů (přidělenı́ prostoru extra prostoru uživateli)
uživatelské adresáře ($HOME)
webové servery
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
26/28
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Odkazy
http://www.openafs.org
http://docs.openafs.org/index.html
http://afs2010.civ.zcu.cz/desc.php?name=tutorial-I
http://www.dia.uniroma3.it/~afscon09/docs/wiesand.pdf
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
27/28
Závěr
Úvod
Klienti a uživatelé
Servery
Administrace
Projekty
Praktické zkušenosti
Poděkovánı́
www.cesnet.cz
www.zcu.cz
www.linuxalt.cz
www.openafs.org
Michal Švamberg svamberg @civ .zcu.cz
OpenAFS
28/28
Závěr

Podobné dokumenty

Crossdressing

Crossdressing Crossdressing a pohlaví chtěl/a bych vyzkoušet crossdressing + už jsem ho zkoušel/a

Více

Administrace UNIXu

Administrace UNIXu de-facto přı́mé: block-level přı́stup speciálnı́ SCSI (dřı́ve) – problém s délkou kabelu do 25m (možnost stavět jen malé clustery do 4 uzlů) SAN/iSCSI (dnes) – disky ve speciálnı́m rack...

Více

Souborové systémy v cloudu

Souborové systémy v cloudu Jiné přístupy (SAN/NAS magie, replikace, vzdálená úložiště & marketplace, . . . )

Více

Upravte si Windows na dalších 200 způsobů Autor

Upravte si Windows na dalších 200 způsobů Autor 206 – aktuální čas a jméno uživatele v příkazovém řádku Operační systém Windows můžete ovládat nejen z grafického prostředí. Stejně dobře ho totiž můžete ovládat také pomocí příkazového řádku. Do n...

Více

Globální navigační satelitní systémy a jejich využití v praxi

Globální navigační satelitní systémy a jejich využití v praxi to, že tento výpočet neumožňují firemní softwary. Nevýhodou je také to, že přesné efemeridy určené např. centrem IGS jsou k dispozici s několikadenním zpožděním. [5]

Více

Distribuované systémy

Distribuované systémy • sdílené aplikace (ICQ, sdílené tabule) Napster • centrální server -> problém z hlediska škálovatelnosti a chyb • při hledání je použit seznam od všech uživatelů -> odpověď IP adresa počítače, kte...

Více

Snímek 1

Snímek 1 – Nedostatečná kompatibilita AFS, klienta STAG a MAGIONu

Více