Score:0

วิธีหลีกเลี่ยงการสูญเสียข้อมูลระหว่างการหมุนบันทึกใน linux/kubernetes

ธง in

รวบรัด
เรากำลังใช้งานปริมาณงานของเราใน kubernetes บน AWS EKS แอปพลิเคชันทั้งหมดของเราเขียนข้อมูลเข้าสู่ระบบ /var/log/app_logs ไดเร็กทอรีโดยใช้ เส้นทางโฮสต์. (ใช่ มันไม่ใช่แนวปฏิบัติที่ดีที่สุด นี่เป็นเพราะโค้ดเบสรุ่นเก่า ในที่สุดเราต้องการย้ายไปที่ STDOUT)

ปัญหาที่เราเผชิญ:

  1. เราอาศัยรายชั่วโมง เข้าสู่ระบบ เพื่อหมุนไฟล์ที่อยู่ด้านล่าง /var/log/app_logs
  2. ในช่วงขอบเขตรายชั่วโมง เรามักจะสูญเสียล็อกไลน์
  3. เมื่อตรวจสอบดูเหมือนว่า copytruncate กำลังสร้าง datalos นี้
  4. ดูเหมือนว่าแอปพลิเคชันไม่สามารถเขียนไปยังไฟล์บันทึกระหว่างการหมุนล็อก และเรากำลังสูญเสียบันทึกเหล่านั้นระหว่างการหมุน
  5. เนื่องจากบริการเหล่านี้กำลังทำงานอยู่ คูเบอร์เนเตส ภาชนะ/พ็อด เราจะไม่สามารถใช้ หยุด บริการ, หมุน และ เริ่ม แนวทางการบริการ

โหนดผู้ปฏิบัติงาน EKS กำลังทำงาน Amazon Linux (เซ็นโตส).

เดอะ logrotate.conf เราใช้:

"/var/log/app_logs/*.log" {
  สร้าง 664 ฟูฟู
  รายวัน
  หายไป
  copytruncate
  หมุน 7
  บีบอัด
  การบีบอัดล่าช้า
  การแจ้งเตือน
  สคริปต์ที่ใช้ร่วมกัน
  หลังการหมุน
    /bin/bash /opt/scripts/upload-logs.sh
  ลงท้าย
  }

มีอะไรที่เราสามารถทำได้เพื่อหลีกเลี่ยงการสูญหายของข้อมูลนี้โดยการปรับแต่ง เข้าสู่ระบบ กำหนดค่า? หรือมีเครื่องมือที่คล้ายกันที่ช่วยแก้ปัญหานี้ในสภาพแวดล้อมที่ใช้ kubernetes

user9517 avatar
cn flag
https://serverfault.com/questions/189477/rotate-logs-of-a-dumb-non-interactive-application/189880#189880
dm90 avatar
in flag
@ user9517 ขอบคุณสำหรับการตอบกลับของคุณ! แต่ปัญหาในการตั้งค่า (ของเรา) นี้คือ เราไม่มีกระบวนการเพียงไม่กี่ขั้นตอนในเซิร์ฟเวอร์ลินุกซ์ บันทึกทั้งหมดนี้มาจากพ็อด kubernetesเราอาจไม่สามารถส่งสัญญาณการฆ่าไปยังพ็อดได้ และในกรณีนั้น การฆ่าพ็อดจะซับซ้อนมากขึ้น และในที่สุด มันก็จะถูกกำหนดใหม่ไปที่อื่น

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา