تثبيت واعداد برمجيات السجل، التحديث والترقية
From CoCCA Registry Services (NZ) Limited
Contents |
كيفية أعداد وتثبيت برمجيات الكوكا
كما ذكرنا سابقا تتميز برمجيات الكوكا بسهولة التثبيت والاعداد وسهولة الاستخدام وتوفير جميع المتطلبات الوظيفية لادارة السجل للنطاق العلوي للدول، وبعدد قليل من الخطوات ستكون البرمجيات مثبته لديك وماعليك فعله فقط هو تحميل ملف اعداد البرمجيات وتنفيذه كما في الخطوات التالية، حيث تحتوي حزمة التثبيت على كامل الحزم البرمجية التي تتطلبها برمجيات الكوكا وبالتالي لايوجد حاجه للوصول للانترنت.
خطوات تحميل وتثبيت برمجيات السجل:
#cd /tmp
#wget https://wiki.cocca.org.nz/mediawiki/images/d/d6/Cocca-8-linux-x64-installer.run
#chmod +x CoCCA-8-linux-x64-installer.run
#./CoCCA-8-linux-x64-installer.run
عند البدء بتنفيذ حزمة التثبيت ستقوم حزمة التثبيت باعداد البرمجيات كمايلي :
[Select a folder ] : /opt/cocca-8
حيث ستقوم هنا باختيار المسار الذي سيتم فيه تثبيت برمجيات الكوكا،بشكل افتراضي سيكون /opt/cocca-8/, وسيحتوي هذا المسار قاعدةمعطيات السجل وملفات التسجيل logfile وملفات التوصيف الخاصة ببرمجيات الكوكا.
[Install SRS as a service? : [Y/n]
تقوم حزمة التثبيت بالتأكد فيما أن كنت ترغب بإضافه برمجيات الكوكا كخدمه يتم تشغيلها عند اعادة اقلاع نظام التشغيل ويكون اسم رماز التشغيل coccaالذي يتم اضافته على المسار /etc/init.d.
Create your database 'postgres' user password PostgreSQL postgres user password
حيث يطلب برمجيات التثبيت اختيار كلمة مرور خاصة بقاعدة معطيات السجل، ويقوم برمجيات السجل باعداد ملف التوصيف الخاص بمخدم resin.xml بنفس كلمة مرور قاعدة المعطيات،تكون كلمة المرور مزيج بين احرف وارقام.
Registry Host Name :[]
وهو موقع الويب الذي يتم اختياره للوصول برمجيات السجل عبر الويب وفي اغلب الاحيان يكون بالشكل: registry.nic.tld ويقوم برمجيات التثبيت باضافته إلى ملف التوصيف resin.xml ليقوم مخدم الويب باعادة واجهة برمجيات الكوكا في حال طلبه من قبل المستخدمين وفق البروتوكول https.
IP [127.0.0.1] :
وهو عنوان الانترنت الذي سيقوم مخدم الويب باستخدامه لاستقبال الاستقبال طلبات https ويكون هو نفس عنوان الانترنت الذي يتم حل الاسم registry.nic.tld إليه ويتم اعداده بملف التوصيف resin.xml الخاص بمخدم الويب بشكل آلي من قبل برمجيات التثبيت.
CoCCA files directory: [/opt/cocca-8/production]
وهو المسار الذي سيتم فيه حف ملفات تطبيق الويب WAR والتي يتم تحديثها من قبل الكوكا بشكل متتالي، وبشكل افتراصي يكون المسار opt/cocca-8/production/.
:[]Username حيث يطلب منك اختيار اسم المستخدم الذي سيعتبر مدير النظام، وأيضا كلمه المرور الخاصة للدخول إلى النظام من خلال واجهة الويب بعد التثبيت.
بعد الانتهاء من عملية التثبيت يمكنك الوصول والبدء بشكل مباشر باعداد برمجيات الكوكا من خلال استخدام متصفح الانترنت للوصول للعنوان https://registry.nic.TLD ويجب أن تكون متأكد من فتح المنفذ 443 على جدار الحماية في نظام التشغيل وجدار الحماية لمركز المعطيات.
ملفات الاعداد والتوصيف الاساسية لبرمجيات الكوكا
- قاعدة معطيات السجل وتسخدم قاعدة مع معطيات Postgresql : ستكون ملفات الاعداد الاساسية لقاعدة المعطيات Postgresql كما يلي:/opt/CoCCA-8/postgresql/data/postgresql.confملف التوصيف الأساسي الخاص ببرمجيات postgresql/opt/CoCCA-8/postgresql/data/pg_hba.confملف التوصيف الخاص بتحديد سماحيات الوصول والاتصال بقاعدة المعطيات./opt/CoCCA-8/postgresql/postgresql.logملف التسجيل حيث يتم تسجيل الاحداث الخاصه بقاعده المعطيات.
- مخدم تطبيقات الويب resin : -/opt/CoCCA-8/resin/conf/resin.xmlوهو ملف التوصيف الأساسي الخاص ببرمجيات resin. -/opt/CoCCA-8/log/otestdout.logملف التسجيل لتسجيل الأحداث الخاثة ببرمجيات الكوكا. -/opt/CoCCA-8/production/ROOT.warوهو ملف تطبيقات الويب الخاص بالكوكا ROOT.war . -https://registry.nic.TLD/login.jspرابط الويب الخاص بالوصول لبرمجيات الويب.
- برمجيات Java :
- /opt/CoCCA-8/java/ مسار تثبيت برمجيات جافا التي يستخدمها برمجيات السجل الكوكا.
- مجلد مخزن الشهادات والمفاتيح في جافا Keystore Directory
- /opt/CoCCA-8/keys تحتوي على ملفات مخازن المفاتيح والشهادات الخاصة بلغه جافا، وهي الشهادات التي يتطلبها مخدم الويب للعمل وفق برتوكول https والشهادات
التي يتطلبها اتصال بروتوكول EPP باستخدام بروتوكو TLS.
آلية تحديث ملفات تطبيقات الويب الخاصة بالكوكا
يتم تحديث برمجيات الكوكا باستمرار بما يحقق كفاءة وفعالية وأمن وظائف السجل، ولذلك يمكنك متابعه موقعنا لتحصل على أخر تحديث، ولمعرفه النسخه التي يعمل عليها برمجيات السجل الخاصة بك يمكنك من خلال واجهة الويب الخاصة بالكوكا، حيث أن اسفل الصفحه يهظر لك رقم النسخه والتحديث الذي تعمل عليه، وهو له الصيغه التالية : 8.1-YYYY.MM.DD
عملية التحديث لنسخه الكوكا سهل جداً ويت بخطوات بسيطه للغاية وتتضمن:
1- وتعتبر الخطوة الأهم وهي أخذ نسخه إحتياطية من قاعده معطيات السجل من خلال واجهة السجل عبر الويب (يفضل أن يتم السجل في وضع الترقية outage setting ثم أخذ النسخه الاحتياطيه) 2- تحميل اخر تحديث لملف تطبيقات الويب الخاص بالكوكا من الرابط التالي:
CoCCA_SRS_Software_last_Patches_and_CoCCA_installer ويمكنك تحميل الملف في نظام التشغيل linux من خلال wget مثلا لتحميل النسخه 27-8-2015
نننفذ الامر التالي في shell :
wget https://wiki.cocca.org.nz/mediawiki/images/f/f0/Nightly-20150827.war
3- اعادة تسمية الملف الذي تم تحميله Nightly-20150827.war إلى ROOT.war من خلال الأمر:
mv Nightly-20150827.war ROOT.war$
4- نقل الملف الجديد ROOT.war إلى المسار /opt/cocca-8/production/ مع حذف الملف القديم:
/mv ROOT.war opt/cocca-8/production$
5- اعادة تشغيل مخدم الويب resin لتفعيل التحديث من خلال الأمر:
opt/cocca-8/ctlscript.sh restart/
الذهاب إلى موقع الويب الخاص بالسجل والتحقق من أن نسخه برمجيات السجل أصبحت متوافقه مع أخر تحديث.
ترقية برمجيات السجل الكوكا كاملة
يقصد بترقية برمجيات السجل الكوكا هي ترقية كامل مكونات البرمجيات ويتضمن ذلك ترقية برمجيات مخدم الويب resin لأحدث إصدار، وترقية قاعدة معطيات السجل postgresql، وترقيه برمجيات الجافا، فبالإضافه لتحديث ملف تطبيقات الويب الخاص ببرمجيات السجل الكوكا يجب أن نقوم بتحديث مكونات برمجيات السجل للحصول على الأداء والأمن الأفضل للسجل، وتقوم الكوكا دوما بتحديث حزمة تثبيت البرمجيات لتضمين أخر تحديث لهذه البرمجياتز
فحزمة التثبيت الأخيرة تتضن مخدم الويب resin 4.0.42 وحزمة برمجيات جافا JAVA 1.8 وقاعدة معطيات postgresql 9.4.2، وبالتالي يمكننا ترقيه البرمجيات الخاصة بنا بسهولة من خلال حزمة تثبيت الكوكا، ولكن يجب الانتباه إلى ضروةر عمل نسخه احتياطيه من قاعدة معطيات السجل قبل البدء بالترقية والعمل على استعادتها بعد الانتهاء من اعداد النسخه الاحدث من برمجيات الكوكا. مع ملاحه أنه يمكن الترقية لبرمجيات السجل بترقية كل مكون لوحده وبشكل يدوي من خلال تحميل واعداد البرمجيات من الرماز المصدر source code.
ترقية برمجيات السجل من خلال حزمة تثبيت برمجيات الكوكا
كما ذكرنا سابقاً فإن أهم مكون في عملية الترقيه هي قاعده معطيات السجل والتي تحوي معلومات عن النطاقات المسجله ومعلومات الزبان وغيرها من البيانات المهمه، لذلك سيكون المهم هو التركيز على هذا الجزء.
1 - الخطوة الأول وتتضمن النسخ الاحتياطي لجميع قواعد المعطيات في النسخه الحالية من برمجيات قاعدة المعطيات postgresql.
cd /opt/cocca-8/postgresql/bin$
PGPASSWORD='YOUR_POSTGRES_PASSWORD' ./pg_dumpall -U postgres > /opt/db.registry.psql$
2 - الخطوة التالية هي ايقاف عمل برمجيات قاعدة المعطيات
/etc/init.d/cocca stop/$
3 - نسخ الملفات الهامه الهامه ببرمجيات قاعدة المعطيات postgresql وبرمجيات السجل بشكل عام من خلال اعادة تسميه المجلد الأساسي
mv /opt/cocca-8 /opt/cocca-8.old ,mv /etc/init.d/cocca$
4 - تحميل وتشغيل مثبت برمجيات السجل الكوكا:
wget https://wiki.cocca.org.nz/mediawiki/images/d/d6/Cocca-8-linux-x64-installer.run$
chmod +x Cocca-x64-installer.run$
5- إيقاف برمجيات السجل الجديدة للبدء باستعادة قاعدة المعطيات:
etc/init.d/cocca stop$
6- استعادة الملفات الهامه التي تم اعدادها سابقا pg_hba.conf وpostgresql.conf , resin.xml, Keys.
mv /opt/cocca-8/postgresql/data/pg_hba.conf /opt/cocca-8/postgresql/data/pg_hba.conf.orgi $
cp /opt/cocca-8.old/postgresql/data/pg_hba.conf /opt/cocca-8/postgresql/data/pg_hba.conf$
mv /opt/cocca-8/postgresql/data/postgresql.conf /opt/cocca-8/postgresql/data/postgresql.conf.orgi$
cp /opt/cocca-8.old/postgresql/data/postgresql.conf /opt/cocca-8/postgresql/data/postgresql.conf$
mv /opt/cocca-8/resin/conf/resin.xml /opt/cocca-8/resin/conf/resin.xml.orgi$
cp /opt/cocca-8.old/resin/conf/resin.xml /opt/cocca-8/resin/conf/resin.xml$
mv /opt/cocca-8/keys /opt/cocca-8/keys.old$
cp -r /opt/cocca-8.old/keys /opt/cocca-8/$
chown -R postgres:postgres /opt/cocca-8/postgresql/data$
7- تشغيل برمجيات قاعدة المعطيات المحدثة postgresql:
opt/cocca-8/postgresql/scripts/ctl.sh start/$
8- اخيرا البدء باستعادة قاعدة المعطيات وفق الخطوات التالية
الدخول إلى قاعدة المعطيات باستخدام الأمر:
opt/cocca-8/postgresql/bin/psql -U postgres/$
بعد الدخول إلى قاعدة المعطيات نقوم بحذف قاعدة المعطيات الجديدة التي قام مثبت برمجيات الكوكا باعدادها موخرا
DROP database registry
انشاء قاعده معطيات فارغه ليتم استعادة ملف SQL إليها
CREATE database registry
الخروج من قاعده المعطيات
q/
من موجه الأوامر البدء باستعادة قاعدة المعطيات :
opt/cocca-8/postgresql/bin/psql -U postgres -f /PATH to/db.registry.psql/
في الخطوة الأخيرة وهي عملية استرداد البيانات سيستغرق ذلك وقتاً وفقا لحجم قاعدة المعطيات ولكفاءة المخدم من ناحيه العتاد.
وبعد الانتهاء من عملية استعادة قاعدة المعطيات نقوم باعادة تشغيل برمجيات الكوكا.
/etc/init.d/cocca restart
ترقية برمجيات السجل الكوكا من خلال ترقية مكوناتها بشكل منفصل
ستعتمد في هذه الطريقة على ترقية مكونات برمجيات السجل بشكل منفصل، حيث سيتم ترقية مخدم الويب resin ثم برمجيات قاعده المعطيات ومن ثم ترقية جافا JAVA.
ترقية قاعدة المعطيات يدويا
سنقوم كمثال بترقية postgresql من النسخه 9.3.2 إلى النسخه 9.4.2 وفق الخطوات التالية:
1 - في البداية يجب أن نقوم بعملية النسخ الاحتياطي لقاعدة المعطيات.
cd /opt/cocca-8/postgresql/bin$
PGPASSWORD='YOUR_POSTGRES_PASSWORD' ./pg_dumpall -U postgres >db.registry.psql$
2 - ايقاف عمل النسخه postgresql 9.3
opt/cocca-8/postgresql/scripts/ctl.sh stop/$
3 - اعادة تسمية مجلد قاعده المعطيات لتجنب أن يكتب عليه مثبت برمجيات الكوكا.
opt/cocca-8/postgresql /opt/cocca-8/postgresql.old/$
4 - البدء بخطوات اعداد النسخة الجديدة من قاعده المعطيات postgresql:
yum install gcc readline-devel zlib-devel$
mkdir /opt/cocca-8/postgresql$
cd /opt/cocca-8 $
wget http://ftp.postgresql.org/pub/source/v9.4.2/postgresql-9.4.2.tar.gz$
tar xvfz postgresql-9.4.2.tar.gz$
configure --prefix=/opt/cocca-8/postgresql/.$
make$
make install$
5 - انشاء قاعده معطيات لبرمجيات postgresql الجديدة
cd /opt/cocca-8/postgresql$
mkdir data$
chown -R postgres:postgres ../postgresql$
ls -ld data$
su - postgres$
/opt/cocca-8/postgresql/bin/initdb -D /opt/cocca-8/postgresql/data/$
6 - تشغيل النسخه الجديدة من قاعدة المعطيات Postgresql
touch /opt/cocca-8/postgresql/postgresq.log $
opt/cocca-8/postgresql/bin/pg_ctl -D /opt/cocca-8/postgresql/data/ -l /opt/cocca-8/postgresql/postgresq.log start$
الدخول الى قاعدة المعطيات:
opt/cocca-8/postgresql/bin/psql -U postgres/$
بعد الدخول نقوم بتغير كلمة المرور للمستخدم postgres
'<ALTER USER postgres WITH PASSWORD '<newpassword
7 - نقوم باستعادة ملفات التوصيف الخاثة بقاعدة المعطيات pg_hba.conf و postgresql.conf
ملاحه:
يفضل تغيير القيم الافتراصية للمتحولات التالية shared_buffers, effective_cache_size, checkpoint_segments في ملف postgresql.conf
/opt/cocca-8/postgresql/data/pg_hba.conf/$
نقوم بتغيير الاسطر التالية :
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
It should be :
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
8- اخيرا نقوم باستعادة قاعدة معطيات السجل من خلال الأمر:
opt/cocca-8/postgresql/bin/psql -U postgres/
بعد الدخول لقاعده المعطيات نقوم بانشاء قاعده المعطيات
CREATE database registry
للخروج من قاعده المعطيات q\
البدء باستعادة قاعدة المعطيات
/opt/cocca-8/postgresql/bin/psql -U postgres -f /opt/db.registry.psql/
تحديث برمجيات الجافا إلى النسخه1.8
1- ايقاف مخدم resin
opt/cocca-8/ctlscript.sh stop/ cd /opt/cocca-8 mv /opt/cocca-8/java /opt/cocca-8/java.old
2- تحميل نسخه جافا 1.8 من موقع أوراكل
\wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz" tar xzf jdk-8u45-linux-x64.tar.gz$ mv jdk1.8.0_45 jav$ alternatives --install /usr/bin/java java /opt/cocca-8/java/bin/java 2 alternatives --config java$ alternatives --install /usr/bin/jar jar /opt/cocca-8/java/bin/jar 2 alternatives --install /usr/bin/javac javac /opt/cocca-8/java/bin/javac 2 alternatives --set jar /opt/cocca-8/java/bin/jar$ alternatives --set javac /opt/cocca-8/java/bin/javac $ java -version$ export JAVA_opt=/opt/cocca-8/java;export JRE_opt=/opt/cocca-8/java/jre;export PATH=$PATH:/opt/cocca-8/java/bin:/opt/cocca-8/jre/bin$
3- تشغيل مخدم resin
opt/cocca-8/ctlscript.sh start/$
ملاحة:
في حال ترقيه برمجيات resin يجب الانتباه إلى نسخ JDBC driver إلى المجلد /opt/cocca-8/resin/lib/

