উত্পাদন পরিবেশে তিনটি মেশিনে কিছু হার্ডওয়্যার সমস্যা ছিল এবং তা বাতিল হয়ে গেছে। পরিকাঠামো দল এগুলি পুনরায় ইনস্টল করেছে এবং তাদের একই হোস্টনাম এবং আইপি ঠিকানা দিয়েছে gave উদ্দেশ্য হ'ল এই সিস্টেমে পুতুল চালানো যাতে এগুলি আবার চালু করা যায়।
প্রয়াস
1) নিম্নলিখিত কমান্ড জারি করে পুপেটে মাস্টার থেকে পুরাতন পুতুল শংসাপত্রগুলি সরানো হয়েছিল:
puppet cert revoke grb16.company.com
puppet cert clean grb16.company.com
2) পুরানো শংসাপত্রটি সরানোর পরে, পুনরায় ইনস্টল হওয়া নোডগুলির মধ্যে একটি থেকে নিম্নলিখিত আদেশটি জারি করে একটি নতুন শংসাপত্রের অনুরোধ তৈরি করা হয়েছিল:
[root@grb16 ~]# puppet agent -t
Info: csr_attributes file loading from /etc/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for grb16.company.com
Info: Certificate Request fingerprint (SHA256): 6F:2D:1D:71:67:18:99:86:2C:22:A1:14:80:55:34:35:FD:20:88:1F:36:ED:A7:7B:2A:12:09:4D:F8:EC:BF:6D
Exiting; no certificate found and waitforcert is disabled
[root@grb16 ~]#
3) একবার পুপেটমাস্টারে শংসাপত্রের অনুরোধটি দৃশ্যমান হওয়ার পরে শংসাপত্রের অনুরোধটি স্বাক্ষর করতে নিম্নলিখিত আদেশটি জারি করা হয়েছিল:
[root@foreman ~]# puppet cert sign grb16.company.com
Notice: Signed certificate request for grb16.company.com
Notice: Removing file Puppet::SSL::CertificateRequest grb16.company.com at '/var/lib/puppet/ssl/ca/requests/grb16.company.com.pem'
[root@foreman ~]#
সমস্যা
শংসাপত্রের অনুরোধটি স্বাক্ষরিত হয়ে গেলে এবং একটি পুতুল রান শুরু করার পরে নিম্নলিখিত ত্রুটি নিক্ষেপ করা হয়:
[root@grb16 ~]# puppet agent -t
Info: Caching certificate for grb16.company.com
Error: Could not request certificate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Exiting; failed to retrieve certificate and waitforcert is disabled
[root@grb16 ~]#
দ্বিতীয় বারের জন্য পুতুল চালানো ফলাফল:
[root@grb16 ~]# puppet agent -t
Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Info: Retrieving pluginfacts
Error: /File[/var/lib/puppet/facts.d]: Failed to generate additional resources using 'eval_generate': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Error: /File[/var/lib/puppet/facts.d]: Could not evaluate: Could not retrieve file metadata for puppet://foreman.company.com/pluginfacts: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Wrapped exception:
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Info: Retrieving plugin
Error: /File[/var/lib/puppet/lib]: Failed to generate additional resources using 'eval_generate': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Error: /File[/var/lib/puppet/lib]: Could not evaluate: Could not retrieve file metadata for puppet://foreman.company.com/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Wrapped exception:
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Error: Could not retrieve catalog from remote server: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
Error: Could not send report: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [CRL is not yet valid for /CN=Puppet CA: foreman.company.com]
[root@grb16 ~]#
বিশ্লেষণ
সমস্যাটি সমাধান করার জন্য, ত্রুটি বার্তাটি তদন্ত করা হয়েছিল এবং দেখে মনে হচ্ছে সমস্যাটি এসএসএল বা পুতুল সম্পর্কিত। সম্ভবত এই প্যাকেজগুলির মধ্যে একটি ভুলভাবে ইনস্টল করা হয়েছে বা পুনরায় ইনস্টল নোডে একটি ভুল সংস্করণ ইনস্টল করা হয়েছে।
পুতুল
[root@grb16 ~]# yum list installed |grep puppet
facter.x86_64 1:2.3.0-1.el6 @puppetlabs_6_products
hiera.noarch 1.3.4-1.el6 @puppetlabs_6_products
puppet.noarch 3.7.3-1.el6 @puppetlabs_6_products
puppetlabs-release.noarch
6-11 @puppetlabs_6_products
ruby-augeas.x86_64 0.4.1-3.el6 @puppetlabs_6_deps
ruby-shadow.x86_64 1:2.2.0-2.el6 @puppetlabs_6_deps
rubygem-json.x86_64 1.5.5-3.el6 @puppetlabs_6_deps
SSL এর
[root@grb16 ~]# yum list installed |grep ssl
nss_compat_ossl.x86_64 0.9.6-1.el6 @anaconda-CentOS-201410241409.x86_64/6.6
openssl.x86_64 1.0.1e-30.el6_6.4
openssl-devel.x86_64 1.0.1e-30.el6_6.4
[root@grb16 ~]#
বিভিন্ন সার্ভারে ইনস্টল থাকা এসএসএল এবং পুতুল প্যাকেজগুলির মধ্যে কোনও তফাত খুঁজে পাওয়া যায় নি। যে সমস্ত সিস্টেমগুলি বাতিল বা পুনরায় ইনস্টল করা হয়নি সেগুলি এখনও পুতুল চালাতে সক্ষম। সমস্যাটি পুনরায় ইনস্টল করা সার্ভারে সীমাবদ্ধ। নোট করুন যে পুতুল অন্য দুটি পুনরায় ইনস্টল করা সার্ভারে চালিত হয়নি। কী কারণে এই সমস্যা সৃষ্টি হচ্ছে এবং কীভাবে এটি সমাধান করবেন?
puppet agent -t
আমি প্রথমে ক্লায়েন্টটিতে যা চালাই তা এটি শংসাপত্র তৈরি করে এবং তা পুতুলমাস্টারের কাছে অনুমোদনের জন্য প্রেরণ করে, তাই যদি নতুন শংসাপত্র দেওয়ার সঠিক উপায়টি হয় তবে আমি তা করি।