SnapMirror telepítő szkript
Én azt a feladatot kapta, hogy lemásolják a meglévő ügyfelek Filer, hogy az új rendszer DR. Ez elég nagy rendszer, és mint SnapMirrors létrehozása nem különösebben bonyolult, időigényes. Szóval, sok dolgot csinálok, írtam egy forgatókönyvet, hogy segítsen elérni ezt a feladatot én gyorsabb, és megy még egy kávét.
Szükséged lesz előre megosztott kulcs beállítása (mint mindig), de a többit kérni. Nincs adatérvényesítési (nem meglepő). A szkript kiírja, hogy 4 szöveges fájlt, egy létrehozása / korlátozza a kötetek, az egyik a "snapmirror.conf", a használt helyett "snapmirror.conf", miközben csinálod a kiindulási inicializálás, és végül egy- ténylegesen elindítani az snapmirrors. Nincs intelligencia körül párhuzamos stream, így az inicializálás még egy kicsit várni aktusra és zsonglőr játék.
Kérem, tudassa velem, ha ez hasznos.
based on 5 ratings#! / Bin / bash
echo "Kérem adja meg nevét PRIMARY Filer"
olvasni PRI_FILERecho "Kérem adja meg a nevét a DR Filer"
olvasni DR_FILERConnectString = "ssh-c 3DES"
# ConnectString = "rsh"SnapMirrorHour = 22
SnapMirrorMinute = 0
SnapMirrorStagger = 5echo ""> $ {} DR_FILER _filer_volumes.txt
echo ""> $ {} DR_FILER _snapmirror.conf
echo ""> $ {} DR_FILER _sm_initialize.txt
echo ""> $ {} DR_FILER _snapmirror_init.confA AGGR a `$ {} $ ConnectString PRI_FILER" aggr állapot "| awk '$ 2 ~ / állam / {print $ 1}'`
do
SIZE = `$ {} $ ConnectString PRI_FILER" df-Ah AGGR $ "| sed 's / \ ([0-9] [KMGT] \) B / \ 1 / g' | awk '$ 1 ~ /. Snapshot | Összesített / {print $ 2} '`
A VOL a `$ {ConnectString} $ PRI_FILER" aggr show_space $ AGGR "| awk '$ 1 ~ / űr / {print $ 0}' | awk '$ 4 ~ / térfogat | file | nincs / {print $ 1}'`
do
echo "$ {vol create VOL-s} $ {none AGGR} $ {SIZE}" >> $ {} DR_FILER _filer_volumes.txt
echo "$ {vol korlátozza VOL}" >> $ {} DR_FILER _filer_volumes.txt
echo "snapmirror initialize-S $ {PRI_FILER}: $ {} $ {VOL DR_FILER}: $ {} VOL" >> $ {} DR_FILER _sm_initialize.txt
echo "$ {PRI_FILER}: $ {} $ {VOL DR_FILER}: $ {VOL} - $ {SnapMirrorMinute} $ {} SnapMirrorHour **" >> $ {} DR_FILER _snapmirror.conf
echo "$ {PRI_FILER}: $ {} $ {VOL DR_FILER}: $ {} ----- VOL" >> $ {} DR_FILER _snapmirror_init.confSnapMirrorMinute = `expr $ + $ SnapMirrorMinute SnapMirrorStagger`
if [$ SnapMirrorMinute-gt 58]
majd
SnapMirrorMinute = 0
SnapMirrorHour = `expr $ SnapMirrorHour + 1`
fi
if [$ SnapMirrorHour-gt 23]
majd
SnapMirrorHour = 0
fi
kész
kész










































Félelmetes script. Ez csak a dolog, amire szükségünk ... a pontos parancsokat kapok e, és fut a lehető leggyorsabban.
Ez az első alkalom, amit létre SnapMirror és nekem van egy kérdésem. Amikor fut át a hurkot feltölteni a "$ {} DR_FILER _filer_volumes.txt 'fájl úgy néz ki fogsz létrehozni minden térfogatra a méret a szülő $ {AGGR} $ {a} PRI_FILER. Igaz ez?
Például, a $ {} PRI_FILER van egy összesített aggr_sas címmel, amelynek mérete 2850G. (Ez egy polcon hozzá csatolt egy aggr aggr_sata címmel, de ez nem lesz része a tükrözött adatokat.) Van 5 kötetek: vol0 (OS), vol_swap, vol_win2003, vol_win2008, és vol_linux. Ha olvasok a szkript megfelelően, minden ilyen köteteket került a $ {} DR_FILER _filer_volumes.txt, amelynek mérete 2850G.
Igaz ez?
Igen, tulajdonképpen mi történik, az a mennyisége, vékony lesz tartalékolni az összesített mérete (a script nem "vol létre S nincs- "Amely a kötet helyet fenntartás nincs). Ez lehetővé teszi, hogy dinamikusan nő, ahogy növekszik az elsődleges mennyiség, így teszi az életed egy kicsit könnyebb. SnapMirror over-túrák a thin provisioning és a hangerő beállítása jelenik meg, hogy megfeleljen az elsődleges területen kötet méretét, de a valóságban a mögöttes térfogata nagyobb, és így is dinamikusan növekszik. Az egyetlen kikötés az, hogy figyelemmel kíséri a terület használatát a DR rendszer!
@ Chris Kranz
Köszönöm a gyors választ ... és hogy gonosz beteg script! Már segített nekem egy kicsit.
Hol kell ezt a szkriptet kell futtatni?
A forgatókönyvet írta a Linux BASH, így ideális esetben azt futtatni Linux alól néhány fajta. Ez működhet más * NIX ízeket, de én még nem teszteltem.