أي أداة / تقنية: إدارة النظام لقواعد البيانات والخدمات المعتمدة

StackOverflow https://stackoverflow.com/questions/2837247

سؤال

متابعة على هذا سؤال إدارة النظام:

لأنني ربما لن أتلقى الكثير من التعليقات ServerFault سأجربها هنا.

شاغلي الرئيسي هو عكس التبعيات بين قواعد البيانات ، والخدمات ANS مهام/الوظائف التي سيتعين علي إدارتها.

إلى جانب النظر في PowerShell ، فكرت في استخدام MSBuild لأنه سيسمح بنمذجة التبعيات وإعادة استخدام أهداف التكوين.

بعبارات أخرى: ما هي التكنولوجيا التي يجب أن أستخدمها لتطوير حل مرن يسمح لي بإيقاف الخدمة A و B و C على الجهاز D بالترتيب الصحيح وتعطيل المهمة E على الجهاز F عند إزالة قاعدة البيانات X؟

... وأرغب في إعادة استخدام الجزء لإيقاف الخدمة B و C عند إنزال قاعدة البيانات Y.

هل كانت مفيدة؟

المحلول

إذا كنت على دراية بـ PowerShell وتريد العمل مع التبعيات ، فحاول PSAKE. ما يبدو عليه:

psake script.ps1:-------
properties {
 $dbServer = 'sqlexpress'
 ...
}
task default -depend StopServer1, StopServer2

task StopS1 -depend MakeS1Backup, StopSqlServer1 {
 ...
}
task MakeS1Backup {
 ... make backup
}
task StopSqlServer1 {
 stop-service ...
}
# and anything similar to StopServer2

ثم يمكنك تسميتها مثل هذا (هناك المزيد من الخيارات):

Invoke-Psake script.ps1 
#or
Invoke-Psake script.ps1 -task StopS1 #calls only StopS1 task and all other scripts it depends on
#or
Invoke-Psake script.ps1 -task MakeS1Backup #only backups S1, it doesn't depend on anything else

ما يفعله - يوقف الخادم 1 (توقف المهمة 1) وقبل أن يعالج جميع المهام التي تتوقف 1. لذلك قبل إيقاف النسخ الاحتياطي S1 من S1 ويتم إيقاف SQL Server 1 وما إلى ذلك.

يعجبني أفضل بكثير من تكوين MSBuild ، وهو مطوّل للغاية وقبيح (على الرغم من أنه قوي جدًا).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top