Certified OpenStack Administrator

วันนี้มาเขียนบล็อกฉลองในโอกาสครบรอบ 7 ปีของ OpenStack เลยจะมาแชร์ประสบการณ์การสอบ Certified OpenStack Administrator หรือที่เรียกสั้นๆ ว่า COA มาให้ฟังกันครับ

เลือกสอบตัวไหนดี

หลายคนคงจะเห็นว่าตัว certificate ใบรับรองของ OpenStack มีหลายตัวมาก ซึ่งจะเล่าให้ฟังก่อนว่าในเริ่มแรก เหล่าบริษัทใหญ่ๆ ที่มีชื่อเสียงทางด้าน OpenStack ได้ทำคอร์สอบรมออกมา และแน่นอนว่าจะต้องมีการสอบรับรองความรู้ เลยเป็นที่มาของ certificate จากบริษัทใหญ่ๆ ที่เราอาจจะเคยได้ยินกัน เช่น Red Hat Certified System Administrator in Red Hat OpenStack หรือ Mirantis OpenStack Certification ซึ่งแน่นอนว่าเนื้อหาและความรู้ที่อบรมกับใช้ในการสอบนั้น ก็จะมีทั้งความรู้ที่สามารถใช้ได้กับ OpenStack ทุกระบบ และความรู้บางส่วนที่จะใช้ได้เฉพาะกับ platform ของบริษัทนั้นๆ

พอเป็นอย่างนี้แล้ว องค์กร OpenStack Foundataion ซึ่งเป็นองค์กรอย่างเป็นทางการที่อยู่เบื้องหลัง คอยดูแล พัฒนา และสนับสนุน OpenStack ทั้งชุมชนนักพัฒนา และกลุ่มชุมชนผู้ที่สนใจใน OpenStack เลยประกาศว่าเราจะมี certification ของ OpenStack อย่างเป็นทางการ ซึ่งจะเป็น OpenStack แบบ open source เพียวๆ ไม่ขึ้นกับ platform ของบริษัทใดขึ้นมา โดยมีชื่อว่า Certified OpenStack Administrator หรือสั้นๆ ว่า COA ซึ่งเพิ่งประกาศในงาน OpenStack Summit 2016 ที่ Austin Texas ในเดือนเมษายนเมื่อปีที่แล้วนี่เอง

ตอนนั้นผมเองก็อยู่ในงาน OpenStack Summit ตอนประกาศ COA อย่างเป็นทางการนั้นพอดี ซึ่งผมก็รู้สึกตื่นเต้นขึ้นมาทันที และคิดไว้ตั้งแต่วินาทีนั้นเลยว่าจะต้องไปสอบเอาใบประกาศ COA มาให้ได้ โดยหลังจากนั้นประมาณครึ่งปี หลังจากการเตรียมตัวมาอย่างหนักมาก เพราะแน่นอนว่าคงยังไม่มีใครในประเทศไทยที่เคยสอบ COA มาก่อนให้ถามอย่างแน่นอน และแล้วในวันที่ 6 ตุลาคม 2016 ผมก็สอบผ่านได้ใบประกาศ COA มาได้สมใจ เพราะฉะนั้นก็เลยอยากจะมาเขียนบันทึกแชร์ประสบการณ์เกี่ยวกับการสอบ ให้กับคนที่สนใจอยากจะทำงานและเป็นมืออาชีพทางด้าน OpenStack กันครับ

สิ่งที่ควรรู้และขั้นตอนการสอบ (ข้อมูล ณ วันที่ 5 สิงหาคม 2017)

  • ค่าสอบ $300 เข้าไปสมัครได้ที่นี่ โดยจะต้องสมัครและจ่ายเงินผ่านระบบออนไลน์ทั้งหมด โดยการจ่ายเงินจะเป็นการจ่ายเงินผ่านทางระบบของ Linux Foundation
  • แต่ถ้ายังเป็นนักเรียนนักศึกษาอยู่ค่าสอบลดให้ 50% เหลือ $150 โดยจะต้องสมัครสอบที่นี่ โดยก่อนสอบจะต้องโชว์บัตรนักเรียนนักศึกษาที่ยังไม่หมดอายุให้กับผู้คุมสอบดูก่อน ถ้าเพิ่งเรียนจบก็ต้องจบมายังไม่เกิน 90 วัน
  • การสมัครสอบจะต้องสมัคร OpenStack ID เข้าเป็นสมาชิก OpenStack Foundation ก่อน และจะใช้ account นี้ในการอ้างอิงในระบบการสอบไปตลอด
  • การสอบจะมีให้เลือก 2 ระบบปฏิบัติการคือ Ubuntu และ Suse โดยจะต้องเลือกก่อนที่จะจ่ายเงินค่าสอบ และจะไม่สามารถเปลี่ยนได้
  • เมื่อจ่ายเงินสำหรับการสอบเรียบร้อยแล้ว เราจะมีเวลาให้เข้าไปจองรอบในการสอบภายใน 12 เดือนหลังจากจ่ายเงิน เพราะฉะนั้นจะจ่ายเงินค่าเข้าสอบก่อนวันนี้ แล้วค่อยไปสอบอีกสองสามเดือนข้างหน้าก็ได้
  • หลังจากจ่ายเงินเรียบร้อยแล้ว เราจะต้องจองรอบในการสอบ โดยเราจะสามารถจองได้เร็วสุดคือในช่วง 1 วันทำการข้างหน้าไปจนถึง 30 วันนับจากวันที่เราเข้าไปจอง ซึ่งบางวันบางเวลาอาจจะไม่มีรอบให้เราจองเนื่องจากคนเข้ามาจองสอบเต็มแล้วก็เป็นได้ เพราะฉะนั้นควรเผื่อเวลาจองล่วงหน้าไว้สัก 3-7 วันกำลังดีครับ
  • เราสามารถเลื่อนหรือยกเลิกการสอบที่จองไว้ได้ โดยต้องเข้าไปเลื่อนหรือยกเลิกอย่างน้อย 24 ชั่วโมงก่อนเวลาสอบ
  • การสอบจะเป็นสอบปฏิบัติทั้งหมด มีเวลาสอบทั้งหมด 2 ชั่วโมง 30 นาที จำนวนประมาณ 20+ ข้อ โจทย์เป็นภาษาอังกฤษทั้งหมด
  • เวอร์ชันของ OpenStack ที่ใช้ในการสอบคือ Newton
  • อุปกรณ์และสภาพแวดล้อมที่จะต้องเตรียมก่อนการสอบ
    • บัตรประจำตัวที่มีรูปถ่าย เป็นภาษาอังกฤษ และยังไม่หมดอายุ เช่น บัตรประชาชน ใบขับขี่ หรือพาสปอร์ต
    • กล้อง webcam
    • microphone
    • Chrome Browser
    • อินเทอร์เน็ตที่เสถียร และแนะนำให้ปิด firewall และ allow traffic ทุกอย่างเพื่อป้องกันปัญหาไว้ก่อน
    • ห้องที่เรานั่งสอบ ต้องเป็นห้องปิด ไม่มีใครอยู่ด้วย ไม่มีเสียงรบกวน และห้ามใครเข้ามาในห้องระหว่างการสอบเป็นอันขาด
    • บนโต๊ะและเครื่องคอมพิวเตอร์ที่เราใช้งาน จะต้องไม่มีกระดาษหรืออุปกรณ์ใดๆ อยู่รอบๆ เป็นอันขาด
    • แนะนำให้เอาเครื่องที่จะใช้ในการสอบไปทดสอบ compatibility check ก่อน เพื่อให้มั่นใจว่าเครื่องของเราไม่มีปัญหาที่จะใช้ในการสอบ
  • แนะนำให้อ่าน COA Candidate Handbook อย่างละเอียดก่อนสอบ
  • พอถึงเวลาสอบที่เราจองไว้ ในหน้า portal จะมีลิงก์ในการเข้าสู่การสอบโผล่ขึ้นมา ซึ่งลักษณะจะเป็นการสอบแบบ virtual exam โดยจะมีผู้คุมสอบมาทักทายเรา และขอให้เราเปิดกล้องกับไมค์ รวมถึงจะขอให้เราโชว์บัตรประจำตัวยืนยันว่าเป็นเรา และผู้คุมสอบจะขอให้เราขยับกล้องเพื่อดูสภาพแวดล้อมรอบๆ ข้างที่เรานั่งสอบว่าไม่มีอะไรที่ผิดกฎ ก่อนที่จะให้เรากดเริ่มสอบได้ และถึงจะเริ่มนับเวลาการสอบ
  • ระหว่างการสอบ ผู้คุมสอบจะคอยดูเราตลอดเวลา และบางครั้งอาจจะขอให้เราเลื่อนกล้องดูรอบๆ บ้างเป็นบางครั้ง และซอฟต์แวร์ที่ใช้ในการสอบจะบันทึกทั้งหน้าจอ webcam และเสียงจาก microphone เพื่อเป็นหลักฐานตรวจสอบในภายหลัง
  • เราจะต้องได้คะแนนอย่างน้อย 76% ถึงจะผ่านการสอบ
  • ถ้าเราสอบไม่ผ่าน จะสามารถขอสอบใหม่ได้อีก 1 ครั้งโดยไม่เสียค่าสอบ โดยมีระยะเวลาในการขอสอบใหม่คือภายใน 12 เดือนนับจากวันที่เราจ่ายเงินค่าสอบเช่นกัน
  • ใบประกาศ COA ที่เราได้มาจะมีอายุ 36 เดือน โดยจะต้องเข้าไปสอบใหม่เพื่อต่ออายุ

เทคนิคการสอบ

  • เนื้อหาในการสอบแนะนำให้อ่านจากหน้า OpenStack COA Requirements จะครบที่สุด
  • ควรจะเริ่มจากต้องเข้าใจพื้นฐานของ core services ของ OpenStack ทั้งหมดว่าแต่ละตัวคืออะไร และทำงานเกี่ยวข้องกันยังไง
  • หลังจากนั้นควรจะลองเล่น OpenStack โดยจะลงเป็น OpenStack all-in-one มาทดลองใช้งานก็ได้ และควรจะใช้เวลาเล่นให้คุ้นมือกับ OpenStack อย่างน้อย 3-6 เดือนแล้วจึงค่อยไปสอบน่าจะดีสุด
  • ข้อสอบทั้งหมดเป็นการตั้งค่าบน OpenStack ที่ติดตั้งเรียบร้อยแล้วล้วนๆ ไม่มีการลงซอฟต์แวร์เพิ่มหรือตั้งค่า config file ใดๆ ทั้งสิ้น
  • เราสามารถเข้าเป็น root user ได้โดยใช้คำสั่ง sudo -i
  • ระวังการใช้ Ctrl+W สำหรับบางคนที่ติดคีย์นี้ในการลบคำสั่งทีละ word เพราะมันจะเป็นการปิด browser แทน ถ้าจะใช้ให้ใช้ Ctrl+Alt+W แทน
  • copy & paste ด้วย Ctrl+C และ Ctrl+V ก็ไม่สามารถใช้งานได้เช่นกัน ถ้าจะใช้ต้อง
    • บนลินุกซ์ ให้ใช้การลากในการ copy และใช้คลิ๊กกลางในการ paste
    • บนแมค ให้ใช้ Command+C และ Command+V แทน
    • บนวินโดว์ ให้ใช้ Ctrl+Insert และ Shift+Insert ในการ copy และ paste
  • แม้เราจะมีเพียงแค่ terminal เดียวในการสอบ แต่เราก็สามารถใช้ screen หรือ tmux ช่วยในการจำลองเปิดหลายๆ terminal ในการสอบได้
  • การค้นหาข้อมูลจะอนุญาตให้ดู help จาก command line และเปิดดูเอกสารที่อยู่ภายใต้โดเมน https://docs.openstack.org เท่านั้น เพราะฉะนั้นผมแนะนำให้อ่านเอกสารในเว็บให้ผ่านตามากที่สุด โดยเฉพาะ Administrator Guides ที่ผมรู้สึกว่าคำตอบเกือบทั้งหมดสามารถหาได้จากเอกสารชุดนี้
  • ลักษณะการสอบจะเป็นการแบ่งหน้าจอระหว่าง command line interface และ Horizon dashboard โดยเราจะใช้รูปแบบไหนหรือจะใช้ทั้งสองรูปแบบเลยในการแก้โจทย์ก็ได้ เพราะการสอบจะดูที่ผลลัพธ์สุดท้ายอย่างเดียวว่าทำได้ตามโจทย์หรือไม่เพียงแค่นั้น
  • โจทย์หลายข้อเราจะพบว่าไม่สามารถใช้ Horizon dashboard ในการทำได้ และต้องใช้ command line ในการแก้โจทย์อย่างเดียว เช่น
    • การสั่งงานที่มีเรื่อง domain มาเกี่ยวข้อง
    • การตั้งค่าบางอย่างของ Swift เช่น ACL
  • และในทางตรงข้าม การทำโจทย์บางอย่างก็แนะนำให้ใช้ Horizon dashboard เพราะมันเร็วกว่าเยอะ เช่น การจัดการ user หรือ network
  • พวกชื่อ project, user, volume ที่อยู่ในโจทย์ทั้งหลาย แนะนำให้ copy paste เอาดีกว่านั่งพิมพ์เอง ไม่งั้นจะทำโจทย์ไม่ทันเพราะมัวแต่เสียเวลาพิมพ์ชื่อซ้ำๆ บ่อยๆ
  • เมื่อเริ่มสอบ แนะนำให้เปิดดูโจทย์ทั้งหมดแบบข้ามๆ ไปก่อนเลย ระหว่างที่ดูโจทย์ให้วิเคราะห์ว่าข้อไหนน่าจะทำเสร็จได้ภายในไม่ถึง 5 นาที และให้ทำข้อนั้นทันที จะทำให้มีโอกาสสอบผ่านได้มากขึ้น
  • บางครั้งตอนพิมพ์คำสั่งถ้ามันรับข้อความจากคีย์บอร์ดเราหน่วงมากๆ ลองกด refresh ดูอาจจะช่วยได้
  • วิดิโอและเว็บที่แนะนำในการเตรียมตัวก่อนสอบ COA

หลังจากเตรียมตัวและรอคอยด้วยความตื่นเต้นหลังจากสอบเสร็จ คะแนนและผลในการสอบก็จะส่งมาทางอีเมล หรือสามารถเข้าไปดูได้ใน portal ซึ่งโดยปกติจะใช้เวลาไม่เกิน 3 วันทำการ โดยจะมีหน้าตาแบบนี้

COA Jirayut Score

และถ้าเราสอบผ่านเราก็จะได้ใบประกาศดังข้างล่างนี้มาเชยชม ซึ่งเราจะเห็นหมายเลข 0146 อยู่ในใบประกาศ ซึ่งผมเดาว่านั่นคือคุณเป็นคนที่สอบผ่านในลำดับที่ 146 ของโลกครับ :)

COA Jirayut

แนะนำทางลัดสำหรับการสอบ

ใครที่เคยลองเล่น OpenStack มาบ้าง คงจะรู้ดีว่าการศึกษาด้วยตัวเองโดยไม่มีใครแนะนำนั้น จะต้องใช้เวลานานมากในการศึกษาหาข้อมูลและอ่านเอกสารต่างๆ ทางลัดที่ดีทางนึงคือ การเข้าไปเรียนจากผู้เชี่ยวชาญที่มีประสบการณ์จริง ตอนนี้ Opsta เปิดอบรม Opsta OpenStack Administration Workshop ซึ่งเราจะเน้นที่การทำแล็ป OpenStack ในการใช้งานจริง ซึ่งเนื้อหาในการอบรมนี้ แทบจะครอบคลุมเนื้อหาในการสอบ COA เกือบทั้งหมด ดูรายละเอียดและรีบสมัครกันเข้ามาที่ https://training.opsta.io ก่อนที่ที่นั่งจะเต็มหมดก่อนนะครับ ตอนนี้เหลืออยู่อีกไม่กี่ที่แล้ว