SnapMirror إعداد السيناريو
وكان لي مهمة تكرار an المدون العملاء الحاليين لنظامهم الجديد DR. وكان هذا النظام لا بأس به كبيرة ، وبقدر ما خلق SnapMirrors ليست معقدة بشكل خاص ، هو مضيعة للوقت. وذلك مع أشياء كثيرة أقوم به ، لقد كتبت سيناريو لمساعدة بلدي تحقيق هذه المهمة بشكل أسرع ، وتذهب وأخرى القهوة.
ستحتاج مشترك مسبقا مفاتيح الإعداد (في أي وقت مضى) ، ولكن دفع الباقي لل. ليس هناك التحقق من صحة البيانات (ليس من المستغرب). فإن السيناريو الناتج الملفات النصية 4 ، واحدة لإنشاء / تقييد كافة وحدات التخزين ، واحدة ل "snapmirror.conf" ، على أن تستخدم بدلا من "snapmirror.conf" بينما كنت تفعل تهيئة الأساس ، وواحدة في النهاية إلى تهيئة الواقع snapmirrors. ليس هناك تيارات الاستخبارات حول المتزامنة ، بحيث يتم التهيئة لا يزال قليلا من لعبة شعوذة الفعل والانتظار.
اسمحوا لي ان اعرف اذا كنت تجد هذا مفيدا.
based on 5 ratings#! / بن / سحق
صدى "الرجاء إدخال اسم المدون الأساسي :"
قراءة PRI_FILERصدى "الرجاء إدخال اسم المدون DR :"
قراءة DR_FILERConnectString = "سه - C 3DES"
# ConnectString = "RSH"SnapMirrorHour = 22
SnapMirrorMinute = 0
SnapMirrorStagger = 5صدى ""> $ {} DR_FILER _filer_volumes.txt
صدى ""> $ {} DR_FILER _snapmirror.conf
صدى ""> $ {} DR_FILER _sm_initialize.txt
صدى ""> $ {} DR_FILER _snapmirror_init.confلAGGR في `PRI_FILER $ $ {ConnectString}" aggr مركز "| AWK'! $ 2 ~ / دولة / {طباعة $ 1} '`
فعل
SIZE = '$ {} $ ConnectString PRI_FILER" DF - آه $ AGGR "| SED' ق / \ ([0-9] [KMGT] \) B / \ 1 / غ '|! AWK' $ 1 ~ / لقطة | التجميعية / {طباعة $ 2} '`
لVOL في `$ {ConnectString} $ PRI_FILER" show_space aggr $ AGGR "| AWK' $ 1 ~ / الفضاء / {طباعة $ 0}! | AWK '$ 4 ~ / حجم | ملف | لا شيء / {طباعة $ 1}' `
فعل
صدى "إنشاء المجلد $ {} VOL - S أيا $ {} $ {AGGR SIZE}">> $} {DR_FILER _filer_volumes.txt
صدى "المجلد تقييد $ {VOL}">> $} {DR_FILER _filer_volumes.txt
صدى "snapmirror تهيئة - S $ {PRI_FILER} : $ {} $ {VOL DR_FILER} : {$ VOL}">> $} {DR_FILER _sm_initialize.txt
صدى "$ {PRI_FILER} : $ {} $ {VOL DR_FILER} : {$} VOL -- $ {} $ {SnapMirrorMinute SnapMirrorHour} *">> $} {DR_FILER _snapmirror.conf
صدى "$ {PRI_FILER} : $ {} $ {VOL DR_FILER} : {$} VOL -- -- -- -- --">> $} {DR_FILER _snapmirror_init.confSnapMirrorMinute = `expr SnapMirrorStagger SnapMirrorMinute $ + $`
إذا [SnapMirrorMinute - GT 58 $]
ثم
SnapMirrorMinute = 0
SnapMirrorHour = `expr SnapMirrorHour $ + 1`
فاي
إذا [SnapMirrorHour - GT دولار 23]
ثم
SnapMirrorHour = 0
فاي
فعل
فعل










































رهيبة النصي. هذا هو مجرد شيء... نحن بحاجة الأوامر بدقة للحصول على هذه وتشغيلها في أسرع وقت ممكن.
هذه هي المرة الأولى التي قمت بإعداد SnapMirror ولدي سؤال واحد. عندما كنت تعمل من خلال حلقة لتجميع ملف '$ {} DR_FILER _filer_volumes.txt" يبدو وكأنك ذاهب الى خلق كل وحدة التخزين مع حجم الأصل AGGR $ {} $ {على PRI_FILER}. هل هذا صحيح؟
على سبيل المثال ، $ {بلادي} PRI_FILER واحد بعنوان aggr_sas الكلي مع حجم 2850G. (وقد رف مرفقة به مع aggr بعنوان aggr_sata ولكن هذا لن يكون جزءا من البيانات معكوسة.) لدي 5 مجلدات : vol0 (نظام التشغيل) ، vol_swap ، vol_win2003 ، vol_win2008 وvol_linux. إذا أنا أقرأ السيناريو الخاص بك بشكل صحيح ، سيتم إضافة كل من هذه الكميات إلى $ {} DR_FILER _filer_volumes.txt مع حجم 2850G.
فهل هذا صحيح؟
نعم ، ما يحدث هو أساسا يحصل المشروطة رقيقة وحدة التخزين لحجم الكلي (البرنامج النصي لا "إنشاء المجلد ليالي لا شيء "هو الذي يحدد حجم مساحة التحفظ لا شيء). هذا يتيح لها أن تنمو بشكل حيوي كما كنت تنمو وحدات التخزين الأساسية ، بحيث يجعل حياتك أسهل قليلا. SnapMirror الإفراط في ركوب الخيل الإعداد رقيقة التقديم وحجم وسوف تظهر لتتناسب مع حجم الموقع الأساسي الحجم ، ولكن في الحقيقة الكامنة وراء حجم أكبر وهكذا يمكن أن تنمو بشكل حيوي. التحذير الوحيد هو أنه يمكنك مراقبة استخدام الفضاء على النظام الخاص DR!
@ كريس كرانز
شكرا لردكم السريع... وهذا السيناريو الشرير المرضى! لقد ساعدت كنت لي بالخروج قليلا جدا.
حيث ينبغي تشغيل هذا البرنامج النصي من؟
تمت كتابة السيناريو في BASH لينكس ، لذلك كنت مثاليا تشغيله من مربع لينكس من بعض متنوعة. فإنه قد عمل على غيرها من النكهات * NIX ، لكنني لم تختبر هذا.