- เกิดปัญหาประสิทธิภาพลดลงของบริการภายในบน เครือข่ายทั่วโลกของ Cloudflare ส่งผลให้หลายบริการได้รับผลกระทบเป็นช่วง ๆ
- บริการหลักอย่าง Access, Bot Management, CDN/Cache, Dashboard, Firewall, Network, WARP, Workers ประสบปัญหาขัดข้องชั่วคราว
- ทีมวิศวกรรมระบุปัญหาได้และดำเนินการแก้ไข โดย บริการ WARP และ Access กลับมาใช้งานได้ก่อน
- หลังจากนั้น อัตราข้อผิดพลาดและความหน่วงทั่วโลกค่อย ๆ กลับสู่ระดับปกติ และ บริการ Dashboard ก็ได้รับการกู้คืน
- ขณะนี้ทุกบริการกลับมาดำเนินงานตามปกติแล้ว และ เหตุการณ์ได้รับการแก้ไขอย่างสมบูรณ์
ภาพรวมของเหตุการณ์
- Cloudflare ประสบกับ ประสิทธิภาพลดลงของบริการภายใน (Internal Service Degradation) ทำให้บางบริการหยุดชะงักเป็นช่วง ๆ
- บริการที่ได้รับผลกระทบ ได้แก่ Access, Bot Management, CDN/Cache, Dashboard, Firewall, Network, WARP, Workers เป็นต้น
- บริษัทเริ่มดำเนินการกู้คืนทันที และอัปเดตความคืบหน้าของการแก้ปัญหาอย่างต่อเนื่อง
การระบุปัญหาและการตอบสนองเบื้องต้น
- Cloudflare ยืนยันการลดลงของบริการภายในในขั้น กำลังตรวจสอบ (Investigating)
- ลูกค้าบางส่วนพบข้อผิดพลาดและความหน่วงเป็นช่วง ๆ
- ทีมวิศวกรรมดำเนินการวิเคราะห์สาเหตุควบคู่กับการกู้คืนระบบ
- ต่อมามีการ ระบุสาเหตุของปัญหา (Identified) และเริ่มดำเนินการแก้ไข
- ระหว่างการแก้ไข การเชื่อมต่อ WARP ในลอนดอนถูกปิดใช้งานชั่วคราว ทำให้ผู้ใช้ในพื้นที่นั้นไม่สามารถเชื่อมต่ออินเทอร์เน็ตได้
ความคืบหน้าในการกู้คืนบริการ
- หลังการแก้ไข บริการ Access และ WARP ได้รับการกู้คืนก่อน โดยอัตราข้อผิดพลาดกลับสู่ระดับก่อนเกิดเหตุ
- การเชื่อมต่อ WARP ในลอนดอนถูกเปิดใช้งานอีกครั้ง
- หลังจากนั้นมีการดำเนินการ กู้คืนบริการสำหรับลูกค้า Application Services ต่อเนื่อง
- มีการปรับใช้การเปลี่ยนแปลงเพื่อกู้คืนบริการ Dashboard
- แม้ลูกค้าบางส่วนยังพบปัญหาในการเข้าสู่ระบบหรือใช้งาน Dashboard แต่ก็ได้รับการแก้ไขด้วยการปรับปรุงเพิ่มเติม
การทำให้เครือข่ายกลับมามีเสถียรภาพ
- ทั่วโลก อัตราข้อผิดพลาดและความหน่วง (latency) ค่อย ๆ ลดลงและกลับสู่ระดับปกติ
- การคำนวณคะแนนของ Bot Management (bot scores) ได้รับผลกระทบชั่วคราว แต่กลับมาเป็นปกติระหว่างกระบวนการกู้คืน
- ทีมวิศวกรรมเร่งขจัดข้อผิดพลาดที่เหลืออยู่และฟื้นฟูเครือข่ายทั้งหมดให้เร็วขึ้น
- หลังจากนั้นทุกบริการกลับมาทำงานได้ตามปกติ และ อัตราข้อผิดพลาดกับความหน่วงกลับสู่ภาวะปกติอย่างสมบูรณ์
การปิดเหตุการณ์และการดำเนินการหลังเหตุการณ์
- Cloudflare ยืนยันว่า ทุกบริการกลับมาดำเนินงานตามปกติ และปิดเหตุการณ์นี้
- ขณะนี้ ยังไม่มีการเปลี่ยนแปลงการกำหนดค่าเพิ่มเติม และกำลังเฝ้าติดตามแพลตฟอร์มอย่างใกล้ชิด
- กำลังมีการ ตรวจสอบหลังเกิดเหตุ (post-incident investigation) เกี่ยวกับสาเหตุของปัญหา และจะเผยแพร่ผลในภายหลัง
- เหตุขัดข้องครั้งนี้ถูกบันทึกเป็น เหตุการณ์ที่ส่งผลกระทบต่อเครือข่ายทั่วโลก
1 ความคิดเห็น
ความเห็นจาก Hacker News
มีคนแชร์คำสั่งสำหรับ ปิดใช้งาน CF proxy สำหรับผู้ที่มี Cloudflare API token
ใช้คำสั่ง
curlเพื่อดึง zone ID และ DNS record แล้วส่งคำขอPATCHเพื่อตั้งค่า"proxied": falseแต่ต้องระวังความเสี่ยงเรื่องใบรับรอง SSL หาย, ความปลอดภัย/ประสิทธิภาพลดลง, และการเปิดเผย IP ของแบ็กเอนด์
X-Auth-EmailและX-Auth-Keyได้และถ้าใครตั้งให้อนุญาตเฉพาะทราฟฟิกจาก Cloudflare ก็ต้องปิดกฎนั้นชั่วคราว
โชคดีที่ตอนนี้ระบบกลับมาออนไลน์แล้ว
curlคำขอ GET เป็นค่าเริ่มต้นอยู่แล้วจึงไม่จำเป็นต้องใส่-X GETถ้าใช้ตัวเลือก
-dจะกลายเป็น POST อัตโนมัติ และสำหรับ PATCH นั้น-X PATCHถูกต้องแล้วแต่แม้จะ tunneling แล้ว บางเว็บก็ยังล่มบางส่วนอยู่ดี
Cloudflare CTO ระบุว่า บั๊กแฝงในระบบบล็อกบอต เริ่มทำงานผิดพลาดหนักหลังมีการเปลี่ยนคอนฟิก จนทำให้เกิดปัญหาทั่วทั้งเครือข่าย
เขาอธิบายในแหล่งที่มาว่าไม่ใช่การโจมตี แต่เป็นปัญหาภายใน
ทั้งโค้ดและคอนฟิกล้วนเป็นข้อมูล แต่ก็ยังปล่อยพร้อมกันทั่วโลกจนเกิดเหตุล่มใหญ่ซ้ำ ๆ
มีเพื่อนร่วมงานคนหนึ่งวิ่งเข้ามาหาผมทันที บอกว่าเขาเพิ่งเปลี่ยนคอนฟิก Cloudflare แล้วเว็บก็ดับพอดี เลย ตกใจคิดว่าตัวเองทำพัง
พอเห็นโพสต์นี้ก็โล่งอก
พอเห็นข้อความ “Cloudflare down” ก็โล่งใจจากใจจริง
เช็กจากเนเธอร์แลนด์แล้วพบว่า แทบทุกบริการล่ม
ทั้ง Cloudflare dashboard และ Betterstack dashboard ก็เข้าไม่ได้เหมือนกัน
ที่ย้อนแย้งคือหน้า status ยังใช้งานได้ แต่กลับอยู่ในสถานการณ์ที่แจ้งลูกค้าไม่ได้
ผมเคยเขียนบล็อกโพสต์ไว้ว่า “ถ้าไม่จำเป็นก็อย่าเอาเว็บไปไว้หลัง Cloudflare”
ถึงอย่างนั้นพอเกิดเหตุล่มใหญ่แบบนี้ ลูกค้ากลับเข้าใจมากกว่าที่คิด
ใช้เวลาไม่กี่นาทีแต่ก็แยก hcker.news ออกจาก CF ได้
ผมใส่ วิดเจ็ต uptime แบบเรียลไทม์ ที่เชื่อมกับหน้า status ภายนอกไว้ด้านล่าง
ดูได้จากstatus SVG และ
หน้า status ภายนอก
เวลาที่ Cloudflare หรือ AWS ล่ม แล้วเห็นว่า บริการ self-hosted ของตัวเองยังทำงานปกติ มันมีความสะใจอยู่เหมือนกัน
ตอนนี้ผมเสถียรกว่า SLA 99.999% ของพวกเขาเสียอีก
ตอนนี้เริ่มคิดว่าจะติด uptime tracker ดีไหม
เป็นบทเรียนที่บริษัท SaaS รุ่นใหม่ควรจำ
เลยทั้งขำทั้งรู้สึกพอใจแปลก ๆ ที่เว็บเล็ก ๆ ของตัวเองล่มตามไปด้วย
ช่วงหลังมานี้ดูเหมือนว่า เหตุล่มของโครงสร้างพื้นฐานขนาดใหญ่เพิ่มขึ้นมาก AWS และ Cloudflare ต่างก็ทำได้ต่ำกว่า SLA มาก
เพราะมันไม่ใช่ uptime จริง แต่เป็นตัวเลขที่บริษัทนิยามขึ้นเอง
เวลาที่ Cloudflare หรือ AWS หยุดทำงาน ปัญหา ความรวมศูนย์ ที่ทำให้เว็บครึ่งหนึ่งหยุดตามไปด้วยนั้นรุนแรงมาก
นี่จึงเป็นเหตุผลที่โครงสร้างแบบนี้ไม่เปลี่ยน
CDN รายเล็กแข่งได้ยาก และสุดท้ายก็กลายเป็น โครงสร้างผูกขาดโดยธรรมชาติ
ที่ Cloudflare มีแพ็กเกจฟรีก็เป็นกลยุทธ์เพื่อเอาประโยชน์จาก network effect แบบนี้
และยังมีโอกาสกลายเป็นเป้าหมายรวมศูนย์ของการเซ็นเซอร์โดยรัฐด้วย
เพราะเว็บราว 2/3 พึ่งพามัน อายุใบรับรองก็สั้นลงเรื่อย ๆ และถ้าเกิด การแฮ็กหรือเหตุขัดข้องขึ้นมา เว็บทั้งโลกอาจเป็นอัมพาตได้
ตอนนี้มันเป็นองค์กรที่มีเจตนาดี แต่ก็อย่าลืมว่า Google ในอดีตก็เคยถูกมองแบบนั้น
ถึงจะมีแบ็กอัปในระดับซอฟต์แวร์มากมาย แต่ common sense เรื่อง multi-hosting ในระดับโครงสร้างพื้นฐาน กลับหายไป
ที่น่าขำคือ DownDetector ก็ใช้ Cloudflare Turnstile เลยล่มตามไปด้วย
ข้อความแสดงข้อผิดพลาดของ Cloudflare ที่เขียนว่า “Your browser: Working / Host: Working / Cloudflare: Error” เป็น ข้อความขอโทษเชิงภาพที่น่าประทับใจ
เว็บที่ใช้ Cloudflare Challenge (“I’m not a robot”) ก็ หยุดทำงานพร้อม HTTP 500 error เช่นกัน
พร้อมข้อความว่า “challenges.cloudflare.com ถูกบล็อกอยู่ กรุณาปลดบล็อก”
หรือไม่ก็แสดงหน้าหมุนโหลดไม่รู้จบ ทั้งที่จริงแล้วแบ็กเอนด์ส่ง error ที่ชัดเจนกลับมา แต่ฟรอนต์เอนด์กลับซ่อนไว้
ล่าสุดยังเห็นกรณีที่ error ว่ารหัสผ่านยาวเกินไปถูกแสดงเป็น “อีเมลนี้ถูกใช้งานแล้ว”
กลายเป็นสถานการณ์ย้อนแย้งที่ต้องพิสูจน์กับ AI ว่าตัวเองเป็นมนุษย์
มุกปฏิเสธแบบ /s ว่า Cloudflare Captcha ไม่มีทางล่มได้นั้นขำดี