আমি ব্যাকপোর্টগুলি থেকে পোস্টগ্রেএসকিউএল 9.1 এর সাথে ডিবিয়ান স্কিজে ব্যবহার করছি। পুতুলের সংস্করণ 2.7.14 রয়েছে। দুর্ভাগ্যজনকভাবে init স্ক্রিপ্টটি স্থিতির জন্য ভুল প্রস্থান কোডটি দেয়। অতএব status
পোস্টগ্র্রেস্কেল চালিত হচ্ছে কিনা তা সনাক্ত করার জন্য আমি একটি কাস্টম কমান্ড লিখেছি ।
service { 'postgresql':
ensure => running,
enable => true,
hasstatus => false,
hasrestart => true,
status => "pg_lsclusters -h | awk 'BEGIN {rc=0} {if ($4 != \"online\") rc=3} END { exit rc }'",
provider => debian,
}
আমার কমান্ডটি আকর্ষণের মতো কাজ করে, তবে পুতুলের কোনও সমস্যা আছে বলে মনে হচ্ছে। notice: /Stage[main]/Postgresql/Service[postgresql]/ensure: ensure changed 'stopped' to 'running'
এটি সর্বদা চালু থাকলেও আমি সর্বদা পাই ।
সুতরাং নিম্নলিখিত চেষ্টা:
service { 'postgresql':
ensure => running,
enable => true,
hasstatus => false,
hasrestart => true,
status => "exit 0",
provider => debian,
}
আমি যেমন এই কাস্টম status
কমান্ডটি বুঝতে পেরেছি , পুতুলের সর্বদা মনে করা উচিত যে পোস্টগ্র্যাস্কল চলছে। তবুও পুতুল পোস্টগ্র্যাসকিএল শুরু করার চেষ্টা করে - প্রতিবার।
কি আমার দোষ? নাকি পুতুলের মধ্যে এটি একটি বাগ?
status
এর সাথে পুতুলের কমান্ড প্রত্যাশা অনুযায়ী কাজ করে!
provider => init
(এবংenable
প্যারামিটারটি সরিয়ে দিন )।