আমি আমাদের নেটওয়ার্ক সরঞ্জামগুলির সাহায্যে কার্য স্বয়ংক্রিয় করতে নেট-স্কিপ এবং নেট-এসএসএস রত্ন দিয়ে রুবি ব্যবহার করি। কমান্ডগুলি কার্যকর করার জন্য এটি একটি দুর্দান্ত শর্ট স্ক্রিপ্ট (উদ্ধৃত অংশ, একটি সমাপ্ত পণ্য নয়):
begin
Net::SSH.start(fqdn, username, :password => loginPassword) do |session|
output = ""
channel = session.open_channel do |ch|
ch.send_channel_request "shell"
ch.on_data do |ch, data|
output += data
end
ch.send_data "conf t\n\r"
#Some tasks here
ch.send_data "exit\n\r" #Exit config mode
ch.send_data "exit\n\r" #Exit device
end
# Wait for everything to complete
channel.wait
end
rescue Exception=>e
errorOutput = fqdn + ": " + e.to_s
puts errorOutput
puts output
return device
end
return output
মনে রাখবেন যে আপনার একটি ফাঁকা লগইন পাসওয়ার্ড ভেরিয়েবল থাকা উচিত। ফাঁকা থাকলে, এটি লগইন করার জন্য আপনার আরএসএ সর্বজনীন কী ব্যবহার করবে (এইচপি প্রোক্রুভে এবং সিসকো 15.X প্ল্যাটফর্মগুলিতে সমর্থিত)।
গিট এবং কয়েকটি সংক্ষিপ্ত স্ক্রিপ্টের মতো কিছু ব্যবহার করে আপনি আপনার সমস্ত সরঞ্জাম কনফিগারেশনগুলি বিভিন্ন পরিবর্তনের সাথে সংগঠিত করতে পারেন এবং কে পরিবর্তন করেছেন (আপনার ইঞ্জিনিয়াররা ধরেছেন কনফিগারগুলি টানুন এবং কাজ শেষ হওয়ার পরে সেগুলি প্রতিশ্রুতিবদ্ধ)।
এছাড়াও এটি বলা ছাড়াই উচিত, তবে কেবলমাত্র ক্ষেত্রে, উত্পাদন সরঞ্জামগুলিতে চালনার আগে সর্বদা একটি ল্যাবটিতে স্ক্রিপ্টযুক্ত কাজ পরীক্ষা করুন। বিশেষত যখন কমান্ডগুলি কার্যকর করা হয় এবং কনফিগারেশন পরিবর্তন করা হয়। পরীক্ষা, পরীক্ষা, পরীক্ষা।