เราได้ตั้งค่าเซิร์ฟเวอร์ที่ใช้โครงสร้างพื้นฐานสำหรับการเชื่อมโยงขนาดเล็ก จนถึงตอนนี้เราได้พยายามจัดการการกำหนดค่าด้วย Ansible แต่ยังไม่ประสบความสำเร็จ บางทีเราอาจทำผิด
โดยหลักการแล้วความคิดคือเซิร์ฟเวอร์นี้จะถูกทิ้งไว้ตามลำพังโดยส่วนใหญ่แล้วผู้คนจะเพิ่มหรือเปลี่ยนแปลงสิ่งต่าง ๆ ในดวงจันทร์สีน้ำเงิน สิ่งนี้ทำให้มีความสำคัญที่สิ่งใดก็ตามที่มีการกำหนดค่าและใช้งานบนเซิร์ฟเวอร์นั้นมีเอกสารที่ชัดเจนและชัดเจนเนื่องจากผู้ที่ไม่ได้ดูแลระบบบ่อยครั้งต้องสูญเสียภาพรวม (อย่าลืมรายละเอียด) นอกจากนี้เมื่อเวลาผ่านไปองค์ประกอบของกลุ่มคนที่จะดูแลเซิร์ฟเวอร์นี้จะเปลี่ยนไป (เมื่อผู้คนออกไปและเข้าร่วม 'คณะกรรมการ')
เราเริ่มต้นด้วยการติดตั้งใหม่ทั้งหมดเพิ่มบทบาทใน ansible เมื่อใดก็ตามที่เราต้องการตั้งค่าบางอย่าง (nginx, phpfpm, postfix, firewall, sftp, munin, .. ) บางทีอาจเป็นเพราะการขาดประสบการณ์ของเราแน่นอนว่าเราไม่สามารถพิมพ์ชุดของงานที่ต้องตรวจสอบได้อย่างแม่นยำในแบบที่เราต้องการในครั้งเดียวและเนื่องจากการกำหนดค่าเป็นกระบวนการทดลองและข้อผิดพลาดเล็กน้อย ซึ่งหมายความว่าในทางปฏิบัติโดยทั่วไปเราจะกำหนดค่าบริการใดก็ตามที่เราต้องการเรียกใช้บนเซิร์ฟเวอร์ก่อนแล้วจึงแปลเป็นงานที่ต้องทำ คุณสามารถดูว่าสิ่งนี้เกิดขึ้นที่ไหน ผู้คนลืมที่จะทดสอบงานหรือกลัวที่จะเสี่ยงต่อการทำลายสิ่งต่าง ๆ หรือแย่กว่านั้นคือเราลืมหรือละเลยที่จะเพิ่มสิ่งต่าง ๆ เข้าไปในสิ่งที่เข้าใจได้
วันนี้เรามีความมั่นใจน้อยมากว่าการกำหนดค่า ansible สะท้อนให้เห็นถึงสิ่งที่กำหนดค่าบนเซิร์ฟเวอร์
ขณะนี้ฉันเห็นปัญหาหลักสามประการ:
- เป็นการยากที่จะอ่าน (อ่าน: เราไม่มีวิธีที่ดี) ทดสอบงานที่ต้องทำโดยไม่เสี่ยงต่อการแตกหัก
- มันเพิ่มงานพิเศษเพื่อหาการกำหนดค่าที่ต้องการก่อนแล้วจึงหาวิธีการแปลสิ่งนี้เป็นงานที่สามารถเข้าใจได้
- (นึกคิด) เราไม่ได้ใช้มันบ่อยพอที่จะสร้างความคุ้นเคยและกิจวัตรประจำวัน
การพิจารณาที่สำคัญที่นี่คือสำหรับทุกสิ่งที่เราทำมันควรจะง่ายสำหรับผู้มาใหม่ที่จะเรียนรู้เชือกโดยไม่ต้องฝึกฝนมากมาย
มีทางเลือกที่ทำงานได้ที่ยังคงให้การรับประกันและการตรวจสอบบางอย่าง (เทียบได้กับการรวมไฟล์ Ansible กับบางไฟล์master
) ที่ "กำหนดค่าสิ่งต่าง ๆ และจดบันทึกสิ่งที่คุณทำ" ล้มเหลว
แก้ไข: เราได้พิจารณาที่/etc
จะคอมไพล์แล้ว มีวิธีที่เหมาะสมในการป้องกันความลับ (ไพรเวตคีย์ ฯลฯ ) ด้วยวิธีนี้ แต่ยังมีที่เก็บการตั้งค่าคอนฟิกที่มีอยู่ภายนอกเซิร์ฟเวอร์อย่างใด?