โซลูชันการเก็บบันทึกแบบรวมศูนย์
ตั้งค่าระบบเก็บบันทึกแบบรวมศูนย์ เช่น พื้นฐานสแตก ELK เพื่อรวบรวมและวิเคราะห์บันทึกของคอนเทนเนอร์
โซลูชันการเก็บบันทึกแบบรวมศูนย์ เป็นบทเรียน Docker & DevOps Fundamentals ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Docker & DevOps Fundamentals และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Docker & DevOps Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดจึงควรรวมบันทึกข้อมูลไว้ที่ศูนย์กลาง
ลองนึกภาพว่าคุณมีคอนเทนเนอร์จำนวนมาก ซึ่งแต่ละรายการสร้างบันทึกข้อมูลขึ้นมา หากข้อผิดพลาดกระจายอยู่ในไฟล์บันทึกหลายร้อยไฟล์ คุณจะค้นหาข้อผิดพลาดนั้นได้อย่างไร
- บันทึกข้อมูลกระจัดกระจาย: บันทึกข้อมูลอยู่บนเซิร์ฟเวอร์หรือคอนเทนเนอร์คนละแห่ง ทำให้ค้นหาได้ยาก
- ไม่มีข้อมูลเชิงลึกแบบเรียลไทม์: คุณไม่สามารถมองเห็นรูปแบบหรือปัญหาที่กำลังเกิดขึ้นได้โดยง่าย
- วิเคราะห์ได้ยาก: การไล่ตรวจบันทึกข้อมูลด้วยตนเองใช้เวลานานและมีโอกาสเกิดข้อผิดพลาด
การบันทึกข้อมูลแบบรวมศูนย์จึงเข้ามาช่วยในส่วนนี้

การบันทึกข้อมูลแบบรวมศูนย์คืออะไร
การบันทึกข้อมูลแบบรวมศูนย์คือแนวทางการรวบรวมบันทึกข้อมูลจากแอปพลิเคชันและโครงสร้างพื้นฐานทั้งหมดมาไว้ในตำแหน่งศูนย์กลางแห่งเดียว
ลองนึกภาพว่าที่นี่เป็นหอควบคุมสำหรับข้อความทั้งหมดจากระบบของคุณ แทนที่จะต้องดูบันทึกข้อมูลของคอนเทนเนอร์แต่ละรายการ คุณจะมีแพลตฟอร์มเดียวสำหรับ:
- รวบรวม: นำบันทึกข้อมูลทั้งหมดมารวมไว้ด้วยกัน
- จัดเก็บ: เก็บบันทึกข้อมูลไว้ในฐานข้อมูลที่เป็นระเบียบและค้นหาได้
- วิเคราะห์: ค้นหา กรอง และแสดงภาพข้อมูลบันทึกเพื่อค้นหาข้อมูลเชิงลึก
วิธีนี้ช่วยให้การแก้ไขปัญหาเร็วขึ้นและมีประสิทธิภาพมากขึ้น
ส่วนประกอบสำคัญของระบบ
โดยทั่วไประบบการบันทึกข้อมูลแบบรวมศูนย์ประกอบด้วยส่วนสำคัญหลายส่วนที่ทำงานร่วมกัน:
- ตัวรวบรวมบันทึกข้อมูล: โปรแกรมขนาดเล็กที่ทำงานบนเซิร์ฟเวอร์หรือคอนเทนเนอร์แต่ละแห่งเพื่อรวบรวมบันทึกข้อมูล
- ตัวรวมบันทึกข้อมูล: บริการที่รับบันทึกข้อมูลจากตัวรวบรวม ประมวลผล แล้วส่งไปจัดเก็บ
- พื้นที่จัดเก็บบันทึกข้อมูล: ฐานข้อมูลที่ปรับให้เหมาะกับการจัดเก็บและค้นหาข้อมูลบันทึกปริมาณมาก
- เครื่องมือแสดงภาพข้อมูล: แผงควบคุมและส่วนติดต่อสำหรับสำรวจ ค้นหา และแสดงภาพบันทึกข้อมูล
ส่วนประกอบเหล่านี้ช่วยให้บันทึกข้อมูลไหลจากแหล่งที่มาไปสู่การวิเคราะห์ได้อย่างราบรื่น
แนะนำ ELK Stack
ELK Stack คือชุดเครื่องมือโอเพนซอร์สยอดนิยมสำหรับการบันทึกข้อมูลแบบรวมศูนย์ ELK ย่อมาจาก:
- Elasticsearch: เครื่องมือค้นหาและวิเคราะห์ข้อมูล
- Logstash: กระบวนการส่งผ่านและประมวลผลข้อมูล
- Kibana: แผงควบคุมสำหรับแสดงภาพข้อมูล
เมื่อนำมาทำงานร่วมกัน เครื่องมือเหล่านี้จะเป็นโซลูชันที่ทรงพลังสำหรับรวบรวม จัดเก็บ และวิเคราะห์บันทึกข้อมูลจากแอปพลิเคชันและโครงสร้างพื้นฐานของคุณ
Elasticsearch: แหล่งจัดเก็บข้อมูล
Elasticsearch เป็นหัวใจของ ELK Stack ในด้านการจัดเก็บและค้นหาข้อมูล โดยเป็นเครื่องมือค้นหาข้อความแบบเต็มรูปแบบที่กระจายการทำงานและขยายขนาดได้สูง
เครื่องมือนี้นำบันทึกข้อมูลที่ผ่านการประมวลผลแล้วมาจัดเก็บในรูปแบบที่ช่วยให้ค้นหาและวิเคราะห์ได้รวดเร็วอย่างมาก แม้จะมีข้อมูลในระดับเพตะไบต์
- จัดเก็บบันทึกข้อมูลในเอกสาร JSON
- มีความสามารถในการค้นหาที่ทรงพลัง
- ขยายระบบในแนวนอนเพื่อรองรับชุดข้อมูลขนาดใหญ่
Logstash: ตัวส่งข้อมูล
Logstash ทำหน้าที่เป็นกระบวนการส่งผ่านและประมวลผลข้อมูล โดยรวบรวมข้อมูลจากแหล่งต่าง ๆ แปลงข้อมูล แล้วส่งไปยัง 'คลังข้อมูล' (โดยทั่วไปคือ Elasticsearch)
เครื่องมือนี้มีความยืดหยุ่นสูง และรองรับรูปแบบกับแหล่งที่มาของบันทึกข้อมูลได้หลากหลาย
- ข้อมูลเข้า: รับบันทึกข้อมูล (เช่น จากไฟล์ เครือข่าย หรือตัวรวบรวม)
- ตัวกรอง: แยกวิเคราะห์ แปลง และเพิ่มข้อมูลให้กับข้อมูลบันทึก
- ข้อมูลออก: ส่งข้อมูลที่ประมวลผลแล้วไปยัง Elasticsearch หรือปลายทางอื่น
Kibana: เครื่องมือแสดงภาพข้อมูล
Kibana คือช่องทางสำหรับดูข้อมูลที่จัดเก็บใน Elasticsearch โดยเป็นเครื่องมืออันทรงพลังสำหรับแสดงภาพข้อมูลและสร้างแผงควบคุม
ด้วย Kibana คุณสามารถ:
- ค้นหาและสำรวจ: สืบค้นข้อมูลบันทึกได้อย่างง่ายดาย
- แสดงภาพข้อมูล: สร้างแผนภูมิ กราฟ และแผนที่จากบันทึกข้อมูล
- แผงควบคุม: สร้างแผงควบคุมแบบโต้ตอบเพื่อตรวจสอบสุขภาพของระบบและพฤติกรรมของแอปพลิเคชันแบบเรียลไทม์
เครื่องมือนี้ช่วยเปลี่ยนข้อมูลดิบให้เป็นข้อมูลเชิงลึกที่นำไปใช้ได้
การสร้างบันทึกข้อมูลของคอนเทนเนอร์
ก่อนจะรวบรวมบันทึกข้อมูลได้ จะต้องมีการสร้างบันทึกข้อมูลขึ้นมาก่อน แอปพลิเคชันส่วนใหญ่ภายในคอนเทนเนอร์จะเขียนข้อมูลออกไปยัง stdout (เอาต์พุตมาตรฐาน) หรือ stderr (ข้อผิดพลาดมาตรฐาน)
Docker จะบันทึกกระแสข้อมูลเหล่านี้เป็นบันทึกข้อมูลของคอนเทนเนอร์ ลองเรียกใช้คำสั่งง่าย ๆ นี้เพื่อดูคอนเทนเนอร์สร้างข้อมูลออกมา:
docker run --rm alpine/git ls -l /ลำดับการไหลของบันทึกข้อมูลด้วย ELK ในเชิงแนวคิด
ต่อไปนี้คือลำดับการไหลของบันทึกข้อมูลในระบบ ELK แบบย่อ:
- แอปพลิเคชันภายในคอนเทนเนอร์ Docker เขียนบันทึกข้อมูลไปยัง
stdout - ตัวรวบรวมบันทึกข้อมูล (เช่น Filebeat ซึ่งมักใช้ร่วมกับ ELK) รวบรวมบันทึกข้อมูลเหล่านี้
- ตัวรวบรวมส่งบันทึกข้อมูลไปยัง Logstash เพื่อประมวลผล
- Logstash แยกวิเคราะห์และแปลงบันทึกข้อมูล
- ส่งบันทึกข้อมูลที่ประมวลผลแล้วไปยัง Elasticsearch เพื่อจัดเก็บ
- Kibana เชื่อมต่อกับ Elasticsearch เพื่อแสดงภาพและค้นหาบันทึกข้อมูล
กระบวนการนี้สร้างเส้นทางที่ชัดเจนสำหรับบันทึกข้อมูลทั้งหมดจากคอนเทนเนอร์ของคุณ
ตรวจสอบความเข้าใจอย่างรวดเร็ว: บทบาทของ ELK
ข้อใดต่อไปนี้อธิบายบทบาทของส่วนประกอบต่าง ๆ ใน ELK Stack ได้ถูกต้อง
ทบทวน: การบันทึกข้อมูลแบบรวมศูนย์
ทำได้ดีมาก คุณได้เรียนรู้พื้นฐานของการบันทึกข้อมูลแบบรวมศูนย์และ ELK Stack แล้ว
- การบันทึกข้อมูลแบบรวมศูนย์รวบรวมบันทึกข้อมูลจากหลายแหล่งไว้ในที่เดียว
- ช่วยให้แก้ไขปัญหาได้เร็วขึ้นและได้รับข้อมูลเชิงลึกที่ดีขึ้น
- ELK Stack (Elasticsearch, Logstash, Kibana) เป็นโซลูชันยอดนิยม
- Elasticsearch จัดเก็บและทำดัชนีบันทึกข้อมูล
- Logstash ประมวลผลและแปลงบันทึกข้อมูล
- Kibana แสดงภาพและสำรวจบันทึกข้อมูล
การผสานรวมอันทรงพลังนี้ช่วยให้คุณจัดการและทำความเข้าใจบันทึกข้อมูลจากคอนเทนเนอร์ได้อย่างมีประสิทธิภาพ
เรียนรู้ Docker & DevOps Fundamentals ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 12
- บทเรียน
- 48
คำถามที่พบบ่อย
บทเรียน “โซลูชันการเก็บบันทึกแบบรวมศูนย์” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “โซลูชันการเก็บบันทึกแบบรวมศูนย์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Docker & DevOps Fundamentals ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Docker & DevOps Fundamentals มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “โซลูชันการเก็บบันทึกแบบรวมศูนย์”
ตั้งค่าระบบเก็บบันทึกแบบรวมศูนย์ เช่น พื้นฐานสแตก ELK เพื่อรวบรวมและวิเคราะห์บันทึกของคอนเทนเนอร์ คุณปฏิบัติ Docker & DevOps Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Docker & DevOps Fundamentals หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Docker & DevOps Fundamentals บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “โซลูชันการเก็บบันทึกแบบรวมศูนย์” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Docker & DevOps Fundamentals นี้ได้ไหม
ได้ บทเรียน Docker & DevOps Fundamentals ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- บทนำสู่การตรวจสอบระบบ
- โซลูชันการเก็บบันทึกแบบรวมศูนย์
- การแจ้งเตือนและการตอบสนองต่อเหตุการณ์
- เมทริกซ์ แดชบอร์ด และ SLI/SLO