المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : نقل كامل المواقع من سيرفر الى سيرفر جديد


CAESAR1
28-02-2008, 03:47 AM
الكثير من أصحاب السيرفرات وأخص بالذكر سيرفرات VPS يفكرون بتغيير السيرفر للوصول الى خدمة أفضل .. ويبقى السؤال عن آلية النقل وكيف تتم .

في هذا الموضوع سأشرح طريقتان

الطريقة الأولى :

نحتاج في هذه الطريقة امكانية الدخول الى كلا السيرفرين المنقول منه والمنقول اليه كـ رووت

Root Access بواسطة SSH

خطوات الباك اب للحسابات :

----------------------------

بشرحي سأفترض أنك مسبقا قد قمت بعملية أخذ نسخ backup للحسابات التي تريد نقلها على السيرفر الجديد .

عن طريق SSH قم بتنفيذ الأمر التالي :

/scripts/cpbackup

حسب المساحة على سيرفرك و عدد الحسابات التي لديك وحجم كل حساب قد تستغرق هذه العملية ربما 6 ساعات .

سأفترض أنك قد سمحت بالباك أب (backup enabled) في WHM وأنه لديك مجلد لحفظ ملفاتك . وسأفترض بأنك لا تستخدم في الباك اب طريقة Incremental backup enabled التي لا تضع كل حساب لوحده كملف account.tar.gz . إذا كنت تستخدم هذه الطريقة عليك الغاء

Incremental backup enabled ويمكنك القيام بذلك بالذهاب الى :

WHM, Main > Backup > Configure Backup

حال حصولك على باك أب لكل الحسابات ندخل بخطوات الجد للقيام بالنقل:

في كل سيرفر هناك مجلد معين لحفظ الباك آب وقد تختلف تسميته من سيرفر لآخر .

هنا سأفترض اسم المجلد أن يكون backup كما يسمى في الغالب (وهو المجلد الذي يحتوي على نسخ الباك اب في كلا السيرفرين و بداخل هذا المجلد مجلد آخر باسم cpbackup )

سيكون مسار المجلد كالتالي :

/backup/cpbackup

الآن نبدأ :

----------

1- من SSH نستعرض مجلد الباك اب:

root@server [/]# cd /backup/cpbackup/

2- الآن أنت تستعرض مجلد cpbackup الموجود داخل مجلد backup كما ذكرنا مسبقا .

ولكن ملفات الباك أب للحسابات ليست في هذا المجلد كما تعلم .. فهي ستكون في مجلدات آخرى داخل هذا المجلد وهناك 3 مجلدات : daily , weekly, monthly وهي تخص النسخ اليومي و الاسبوعي والشهري .

ومن الطبيعي أن نستخدم الباك اب اليومي لأنه الأحدث و يكون المجلد على هذا المسار :

/backups/cpbackup/daily

3- الآن سنقوم عن طريق SSH بتنفيذ الأمر :

root@server [/backups/cpbackup]# tar -zcvf backup_daily_folder.tar.gz daily

العملية ستستغرق بعض الوقت حسب عدد الحسابات التي لديك (ربما 6 ساعات) وربما السيرفر يفقد عقله خلال العملية . لكن عليك بالصبر .

4- عند انتهاء العملية ستشاهد ملف باسم :

backup_daily_folder.tar.gz

داحل مجلد backups/cpbackup/

سنقوم اللآن بنقل هذا الملف الذي فيه كل الحسابات الى السيرفر الجديد

نقوم بتنفيذ الأمر :

root@server [/backups/cpbackup]# scp -c arcfour backup_daily_folder.tar.gz root@NEWSERVERIP:/home/

من هذه الخطوة فصاعدا عليك تغيير في كل أمر كلمة NEWSERVERIP برقم الاي بي للسيرفر الجديد

الآن سيطلب منك كلمة سر الرووت للسيرفر الجديد root's password قم بإدخالها واضغط انتر

عند الانتهاء من ذلك سيكون الملف الذي يحتوي على الباك اب لكل حساباتك على السيرفر القديم قد تم نقلها الى السيرفر الجديد.

الآن عليك بكتابة ما يلي بـ SSH

root@server [/backups/cpbackup]# rm -rf backup_daily_folder.tar.gz

بهذا الأمر ستزيل الملف من السيرفر القديم

5- الآن ننتقل بالعمل على السيرفر الجديد:

عن طريق SSH في السيرفر الجديد اذهب الى مجلد home/ folder/ بتنفيذ هذا الأمر:

root@NEWserver [/]# cd /home/

تم أدخل :

root@NEWserver [/home]# tar -xvfz backup_daily_folder.tar.gz

هذا الأمر سيقوم بفك الملف المضغوط الذي نقلناه من السيرفر القديم

حالما يتم ذلك نفذ الأمر :

root@NEWserver [/home]# rm -rf backup_daily_folder.tar.gz

لحذف الملف المضغوط الذي قمنا بفكه .

الآن قم بالدخول الى لوحة WHM للسيرفر الجديد

Backup > Restore a Full Backup/cpmove file

قم باستعادة الحسابات التي أصبحت على سيرفرك الجديد حسب التعليمات

لا تقم بعمل أي شيء لست متأكداً منه . أعرف ماذا أنت فاعل .

يتبع .. طريقة أخرى للنقل من سيرفر الى سيرفر آخر .

مع التمنيات بالتوفيق.

CAESAR1
28-02-2008, 03:50 AM
طريقة ثانية للنقل من سيرفر إلى سيرفر آخر :





If you have an apple and I have an apple and we exchange these apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas"



هذه طريقة مختلفة ولكنها ناجحة للنقل الكامل من سيرفر إلى سيرفر آخر وكلا السيرفران يعتمدان cPanel



أنت بحاجة إلى نقل كل الدومينات من السيرفر الحالي الى السيرفر الجديد . وبنفس الوقت أنت بحاجة إلى أن يتم هذا النقل بشكل كامل و تام لكل الحسابات . و كذلك أنت بحاجة الى نقل الـ nameservers من داتا سنتر الى آخر . العملية تبدو معقدة .



التحضير للنقل :

---------------



1- يتخوف الكثيرون من النقل الى سيرفر آخر تحسباً لمشاكل قد تقع وهذا أمر وارد . كما يحتل أمر تحويل الـ DNS لكل الدومينات تفكيرنا . فعلينا إبلاغ أصحاب المواقع بتغيير الـ DNS لدوميناتهم و هذه عملية معقدة ودرجة تعقيدها تعود الى كل عميل لدينا ومن أين قد حجز الدومين وهل بإمكانه تغيير الـ DNS بوقت كافي . هذه الطريقة ستغنيك عن طلب تغيير الدي ان اس لدومينات العملاء .



2- قبل بدء النقل علينا أن نقوم بإعداد السيرفر الجديد و تركيب البرامج المطلوبة بحيث يكون جاهزاً للعمل بشكل تام .



3- ينصح ببدء النقل للمواقع التي تستهلك الكثير من الـ recources لنرى إذا كان النقل يتم بنجاح . فإذا نقلت المواقع الكبيرة بنجاح سيكون الأمر سهلا بالنسبة للمواقع الأصغر .



4- نحتاج في هذه الطريقة امكانية الدخول الى كلا السيرفرين المنقول منه والمنقول اليه كـ رووت

Root Access



التنفيذ :

-------



1- ندخل الى لوحة WHM للسيرفر القديم



إذهب الى :

Main --> Server Configuration --> Basic cPanel/WHM Setup



قم بتغيير القيمة في :



Domain Time to Live وكذلك

Nameserver Time to Live

إلى القيمة 3600 seconds و احفظ التغيرات .



2- نقل الحسابات :



قم بالدخول إلى لوحة WHM في السيرفر الجديد :

إذهب إلى :



Main --> Transfers --> Copy multiple accounts from another server



قم بإدخال الاي بي للسيرفر القديم old server's IP address

أدخل كلمة السر واختار الدخول كـ رووت Root

اضغط على grab account list أو ربما تكون مكتوبة Fetch account list



ستظهر لك قائمة تحتوي على أسماء الحسابات على السيرفر القديم في صفحة جديدة .

يمكنك اختيار حسابات معينة من القائمة لتقوم بنقلها . (لا تغلق الصفحة قبل الانتهاء من النقل بشكل كامل)

حالما تنتهي من نقل جميع الحسابات يمكنك إغلاق الصفحة . أي انقطاع للاتصال خلال النقل سيجعلك تحذف الحسابات التي تم نقلها من السيرفر الجديد و إعادة جلبها من السيرفر القديم بنفس الطريقة .



في نهاية العملية ستحصل على تقرير حالة عن وضع عملية النقل و سيظهر على يسار الصفحة اسماء الدومينات التي تم نقلها و كلمة ok بجانب الحساب الذي تم نقله بنجاح أو كلمة Failed إذا فشل النقل .



الحسابات التي يكون اسم المستخدم فيها على السيرفر القديم يحتوي على علامة "-" مثل name-co لن تقبل على السيرفر الجديد . سيكون عليك أن تقوم بتعديلها يدوياً ثم نقلها على السيرفر الجديد .



3- Rsync



حالما تنتهي من نقل كل الحسابات ، الخطوة التالية ستكون الاهتمام بتغييرات الأي بي و تغييرات nameserver

على السيرفر الجديد قم بتنفيذ الأوامر التالية عن طريق SSH مع مراعاة تغيير كلمة

OLDserverIP إلى رقم الاي بي للسيرفر القديم :



rsync -avuz -e ssh root@OLDserverIP:/var/cpanel /var/cpanel



rsync -avuz -e ssh root@OLDserverIP:/var/lib/mysql /var/lib/mysql



rsync -avuz -e ssh root@OLDserverIP:/usr/local/cpanel/3rdparty/mailman /usr/local/cpanel/3rdparty/mailman



rsync -avuz -e ssh root@OLDserverIP:/usr/local/cpanel/3rdparty/mailman /usr/local/cpanel/3rdparty/mailman



rsync -avuz -e ssh root@OLDserverIP:/etc/valiases /etc/valiases



rsync -avuz -e ssh root@OLDserverIP:/etc/vdomainaliases /etc/vdomainaliases



rsync -avuz -e ssh root@OLDserverIP:/etc/vfilters /etc/vfilters



إصلاح قواعد البيانات Fixing Databases



وذلك بتنفيذ الأمر التالي عن طريق SSH على السيرفر الجديد:

/scripts/fixmysql

والتأكد من الحصول على ok

ويمكنك التأكد من أنه ليس هناك قواعد بيانات فيها أخطاء عن طريق تنفيذ الأمر التالي :





/scripts/fixmysql;/usr/bin/mysql_fix_privilege_tables;/usr/bin/mysqlcheck -A --auto-repair;myisamchk -r -e ./*



تغيير الاي بي على السيرفر القديم :



عليك الآن القيام بما يلي على السيرفر القديم :

تغيير IP و تغيير الـ DNS من السيرفر القديم الى الجديد



وذلك بتنفيذ هذا الأمر عن طريق SSH



cd /var/named

perl -pi.bak -e "s/[oldip]/[newip]/g" *.db



ثم تنفيذ الخطوات التالية :



mv /etc/secondarymx /etc/secondarymx.orig

mv /etc/localdomains /etc/secondarymx

mv /etc/secondarymx.orig /etc/localdomains





خلال 24 ساعة ، إذا كان كل شيء يسير على مايرام ، أعد تعيين الـ TTL و nameserver TTL على السيرفر الجديد الى القيمة 14400

ويمكنك الآن إغلاق السيرفر القديم .



إذا كان لديك حسابات لها اي بي خاص قم بتغييرها و كل شيء الآن يسير بخير ان شاء الله.



مع التحية

SHERCOO
28-02-2008, 03:52 AM
مشكور اخوي على المجهود

وبالتوفيق ان شاء الله

:)

SecuritY_I.s.s.W
28-02-2008, 04:03 AM
يعطيك العافية يالغالي على الشرح :)



شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .


موفق بإذن الله ... لك مني أجمل تحية .

كافي عذاب
28-02-2008, 05:53 AM
بيضتها يا وجه الخير ... تسلم على الرفع بس كل رفع يطق العربي بالتغير لتأمين ممتلكاته وكل كلمه فيها ثغره وتفجير
ونتواصل بجديدك

CAESAR1
01-03-2008, 01:12 PM
مشكور اخوي على المجهود

وبالتوفيق ان شاء الله

:)

مشكور على مرورك الكريم

CAESAR1
01-03-2008, 01:13 PM
يعطيك العافية يالغالي على الشرح :)



شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .


موفق بإذن الله ... لك مني أجمل تحية .

مشكور على التعقيب

تقبل أطيب تحياتي

CAESAR1
01-03-2008, 01:15 PM
بيضتها يا وجه الخير ... تسلم على الرفع بس كل رفع يطق العربي بالتغير لتأمين ممتلكاته وكل كلمه فيها ثغره وتفجير
ونتواصل بجديدك

بيض الله وجهك يا طيب

سامحني استيعابي بطيء والله مافهمت شي من كلامك ..

أشكرك على مرورك الكريم