উত্তর:
এটি করার অনেকগুলি উপায় রয়েছে তবে আমি মনে করতে পারি সবচেয়ে সহজ উপায় হ'ল জেনকিন্স হোম ফোল্ডারটির ব্যাকআপ নেওয়া।
আপনার জেনকিন্স বাড়ির সাথে আপনি কোথায় তা দেখতে পারেন:
echo $JENKINS_HOME
এবং উদাহরণস্বরূপ, আপনি যদি কেবলমাত্র কাজের ব্যাকআপ নিতে চান তবে আপনি যেতে পারেন:
cd $JENKINS_HOME/jobs
এবং সেই ফোল্ডারের জন্য একটি ব্যাকআপ তৈরি করুন।
সমস্ত কনফিগারেশন XML ফাইলের একগুচ্ছ হবে ।
আপনি যদি অফিসিয়াল জেনকিনস ডকার চিত্র ব্যবহার করেন তবে বাড়িটি চালু থাকবে:
/var/jenkins_home
$JENKINS_HOME
পরিবেশের পরিবর্তনশীল অ্যাক্সেস পেতে আমার sudo su -s /bin/bash jenkins
echo $JENKINS_HOME
/var/lib/jenkins
সমস্ত কাঠামো ( jobs/
) এবং মাস্টার কনফিগারেশন ফাইল ( config.xml
) নীচের কাঠামোর জেনকিন্স হোম ফোল্ডারে ( JENKINS_HOME
) পাওয়া যাবে :
JENKINS_HOME
+- config.xml (jenkins root configuration)
+- *.xml (other site-wide configuration files)
+- userContent (files in this directory will be served under your http://server/userContent/)
+- fingerprints (stores fingerprint records)
+- plugins (stores plugins)
+- workspace (working directory for the version control system)
+- [JOBNAME] (sub directory for each job)
+- jobs
+- [JOBNAME] (sub directory for each job)
+- config.xml (job configuration file)
+- latest (symbolic link to the last successful build)
+- builds
+- [BUILD_ID] (for each build)
+- build.xml (build result summary)
+- log (log file)
+- changelog.xml (change log)
বেশিরভাগ কনফিগারেশন এক্সএমএল ফর্ম্যাটে রয়েছে, সুতরাং সমস্ত .xml
ফাইলের ব্যাক করা যথেষ্ট।
সমস্ত সেটিংস, বিল্ড লগস, আর্টিক্যাক্ট সংরক্ষণাগারগুলি জেনকিনসহোম ডিরেক্টরিতে সংরক্ষণ করা হয়। ব্যাক আপ তৈরি করতে কেবল এই ডিরেক্টরিটি সংরক্ষণাগারভুক্ত করুন। একইভাবে, ডেটা পুনরুদ্ধার করা কেবল জেনকিনসহোম ডিরেক্টরি ডিরেক্টরিটিকে ব্যাক আপ থেকে প্রতিস্থাপন করছে।
সার্ভারটি বন্ধ না করে ব্যাক আপগুলি নেওয়া যেতে পারে, তবে আপনি পুনরুদ্ধার করার পরে, দয়া করে সার্ভারটি বন্ধ করুন।
ধারাবাহিক ব্যাকআপের জন্য JENKINS_HOME
ডিরেক্টরিটি গিট সংগ্রহস্থলের অধীনে রাখা ভাল অনুশীলন ।
উদাহরণ স্বরূপ:
cd $JENKINS_HOME
git init
shopt -s globstar
git add **/config.xml
git commit -m'Added job config files' -a
এবং ফাইলগুলি বহিরাগত সংগ্রহস্থলের দিকে ঠেলে দিচ্ছে। কিছু ফাইল উপেক্ষা করার জন্য আপনি নীচের .gitignore
ফাইলটি যুক্ত করতে পারেন।
সম্পর্কিত: হডসন / জেনকিন্স কনফিগারেশন ফাইলগুলিকে উত্স নিয়ন্ত্রণে রাখার কোনও উপায় আছে কি?
যদি আপনার জেনকিন্সের কাজগুলি জেনকিনসফাইলে সংজ্ঞায়িত করা হয় তবে আপনি এটিকে একটি গিটার সংগ্রহস্থলে সংরক্ষণ করতে পারেন এবং পাইপলাইন ব্যবহার করে এটি লোড করতে পারেন ।
দুর্ভাগ্যক্রমে, যেহেতু সমস্ত জেনকিনস প্লাগইন জেনকিনসফাইল এবং পাইপলাইন সমর্থন করে না, আপনি যদি বিদ্যমান ফর্ম্যাটগুলিকে এই ফর্ম্যাটে সরিয়ে নিতে চান তবে আপনাকে ম্যানুয়ালি নতুন জেনকিনসফাইল তৈরি করতে হবে।
এস সি এম সিঙ্ক কনফিগারেশন প্লাগইন ঠিক কি আপনি চান না। আপনার জেনকিনস কোর এবং জব কনফিগারেশন ব্যাকআপ করার জন্য এসএনএন বা গিটের সাথে কাজ করে, সুতরাং কে পরিবর্তন করেছে এবং ব্যাকআপ হিসাবে আপনাকে সহজ ট্র্যাকিং দেয়।
জেনকিনস ডেটা এবং মাস্টার কনফিগারেশনের ব্যাকআপ নেওয়ার কয়েকটি উপায় রয়েছে। ব্যাকআপের সর্বোত্তম উপায় হ'ল থিনব্যাকআপ প্লাগইন ব্যবহার করা। আপনি ক্রোন এক্সপ্রেশন ব্যবহার করে সময়োচিত ব্যাকআপগুলি নির্ধারণ করতে পারেন। আপনি সম্পূর্ণ ব্যাকআপ এবং ইনক্রিমেন্টাল ব্যাকআপও কনফিগার করতে পারেন।
ডেটা এবং কনফিগারেশন ব্যাকআপ করার অন্য উপায় হ'ল আপনার জেনকিন্স মাস্টার সার্ভারের ডিস্ক স্ন্যাপশট নেওয়া। ডিস্ক মাউন্ট করার মাধ্যমে এটি করার সর্বোত্তম উপায় এবং জেনকিনস কনফিগারেশন ডিরেক্টরিটি ডিস্ক মাউন্ট পয়েন্টের সাথে সংযুক্ত করে
উভয় পরিস্থিতি এই ব্লগ পোস্টে ভালভাবে ব্যাখ্যা করা হয়েছে । আপনি কনফিগারেশনের জন্য আরও ভাল ধারণা এবং পদক্ষেপ পাবেন।
আমি থেকে স্ক্রিপ্ট ব্যবহার করছি sue445/jenkins-backup-script
।
এটি জেনকিনস সেটিংস এবং প্লাগইনগুলির সংরক্ষণাগার যেমন:
$JENKINS_HOME/*.xml
$JENKINS_HOME/jobs/*/*.xml
$JENKINS_HOME/nodes/*
$JENKINS_HOME/plugins/*.jpi
$JENKINS_HOME/secrets/*
$JENKINS_HOME/users/*
./jenkins-backup.sh /path/to/jenkins_home archive.tar.gz
# add timestamp suffix
./jenkins-backup.sh /path/to/jenkins_home backup_`date +"%Y%m%d%H%M%S"`.tar.gz
আপনি পাতলাব্যাকআপ প্লাগইনটি চেষ্টা করতে পারেন (এটি সক্রিয়ভাবে রক্ষণাবেক্ষণ না করা সত্ত্বেও) [যদি একটি লজিকাল ব্যাকআপ নেওয়া হয় তবে আপনি যা চান) (অর্থাৎ বেশিরভাগ কনফিগার এক্সএমএল ফাইল, কাজ, নোড ইত্যাদি)। ব্যাকআপের আকার বিশাল হবে না।
আমার একটি জেনকিন্সকে একটি উইন্ডোজ সার্ভারের উদাহরণ থেকে অন্য উইন্ডোতে স্থানান্তরিত করতে হবে। অবশেষে আমি এটির মতো করে পরিচালনা করেছি:
C:\Program Files x86\Jenkins
)jenkins.exe install
এটি নতুন মেশিনে একটি পরিষেবা হিসাবে নতুনভাবে আটকানো জেনকিন্সকে নিবন্ধভুক্ত করবে এবং একইভাবে 100% কাজ করবে।
যদি এটি কাজ করে তবে ভবিষ্যতের সুরক্ষার জন্য যদি আপনার ব্যাকআপের প্রয়োজন হয় তবে জেনকিনস ফোল্ডারটি কোথাও অনুলিপি করুন। এটি একটি স্ন্যাপশটের মতো কাজ করবে।