โซลูชันที่เป็นไปได้ 1:
การใช้puppet cert clean
ต้นแบบหุ่นเชิดเป็นวิธีที่เหมาะสม อย่างไรก็ตามเนื่องจากคุณได้รับข้อผิดพลาดคุณอาจมีใบรับรองที่ไม่ดี
ลองทำสินค้าคงคลังอีกครั้งจากนั้นทำความสะอาด:
$ puppet cert reinventory
$ puppet cert clean --all
หมายเหตุ: ตัวอย่างของฉันใช้การ--all
ตั้งค่าสถานะซึ่งจะล้างใบรับรองทั้งหมดที่ลงชื่อและไม่ได้ลงชื่อ reinventory
นอกจากนี้ทราบว่าต้นแบบหุ่นควรจะหยุดก่อนที่จะทำงาน
ที่มา: http://docs.puppetlabs.com/references/3.6.2/man/cert.html
โซลูชันที่เป็นไปได้ 2:
$ puppet cert sign wrong.host.name
Notice: Signed certificate request for wrong.host.name
Notice: Removing file Puppet::SSL::CertificateRequest wrong.host.name at '/var/lib/puppet/ssl/ca/requests/wrong.host.name.pem'
$ puppet cert clean wrong.host.name
Notice: Revoked certificate with serial 87
Notice: Removing file Puppet::SSL::Certificate wrong.host.name at '/var/lib/puppet/ssl/ca/signed/wrong.host.name.pem'
Notice: Removing file Puppet::SSL::Certificate wrong.host.name at '/var/lib/puppet/ssl/certs/wrong.host.name.pem'
โซลูชันที่เป็นไปได้ 3:
ครั้งแรก: บนเซิร์ฟเวอร์
$ puppet cert --revoke wrong.host.name
$ puppet cert --clean wrong.host.name
ที่สอง: บนไคลเอนต์
$ rm -rf /usr/lib/puppet/ssl
$ puppet agent --server [puppetmaster domain name] --waitforcert 60
ที่สาม: บนเซิร์ฟเวอร์ (ปรับตามความจำเป็น)
$ puppet cert --list (you should see your host)
$ puppet cert --sign wrong.host.name
ตรวจสอบอีกครั้งว่าลูกค้าของคุณสามารถเข้าถึง [ชื่อโดเมน puppetmaster]
ที่มา: /server/574976/puppet-trying-to-configure-puppet-client-for-first-use-but-got-some-problems-wi