- คำศัพท์ (A ถึง D)
- การควบคุมความสามารถของ AI
- AIOps
- อัลบั้ม
- ประสิทธิภาพของสินทรัพย์
- ตัวเข้ารหัสอัตโนมัติ
- การขยายพันธุ์หลัง
- ทฤษฎีบทเบย์
- ข้อมูลขนาดใหญ่
- Chatbot: คู่มือสำหรับผู้เริ่มต้น
- การคิดเชิงคำนวณ
- วิสัยทัศน์คอมพิวเตอร์
- เมทริกซ์ความสับสน
- เครือข่ายประสาทเทียม
- cybersecurity
- ผ้าข้อมูล
- การเล่าเรื่องข้อมูล
- ข้อมูลวิทยาศาสตร์
- คลังข้อมูล
- ต้นไม้ตัดสินใจ
- Deepfakes
- การเรียนรู้ลึก ๆ
- การเรียนรู้การเสริมแรงเชิงลึก
- devops
- DevSecOps
- แบบจำลองการแพร่กระจาย
- ดิจิตอลแฝด
- การลดขนาด
- คำศัพท์ (E ถึง K)
- เอดจ์ไอ
- อารมณ์ AI
- การเรียนรู้ทั้งมวล
- การแฮ็กอย่างมีจริยธรรม
- ETL
- AI ที่อธิบายได้
- สหพันธ์การเรียนรู้
- ฟินอ๊อฟ
- กำเนิด AI
- เครือข่ายผู้ให้กำเนิด
- กำเนิดเทียบกับการเลือกปฏิบัติ
- ไล่โทนสี
- โคตรไล่ระดับ
- การเรียนรู้ไม่กี่ช็อต
- การจำแนกรูปภาพ
- การดำเนินงานด้านไอที (ITOps)
- ระบบอัตโนมัติของเหตุการณ์
- วิศวกรรมอิทธิพล
- K-หมายถึงการจัดกลุ่ม
- K-เพื่อนบ้านที่ใกล้ที่สุด
- คำศัพท์ (L ถึง Q)
- คำศัพท์ (R ถึง Z)
- การเรียนรู้เสริมแรง
- AI ที่มีความรับผิดชอบ
- อาร์แอลเอชเอฟ
- ระบบอัตโนมัติของกระบวนการหุ่นยนต์
- มีโครงสร้าง vs ไม่มีโครงสร้าง
- การวิเคราะห์ความเชื่อมั่น
- อยู่ภายใต้การดูแล vs ไม่ได้รับการดูแล
- สนับสนุนเครื่องเวกเตอร์
- ข้อมูลสังเคราะห์
- สื่อสังเคราะห์
- การจัดประเภทข้อความ
- TinyML
- ถ่ายทอดการเรียนรู้
- เครือข่ายประสาทหม้อแปลง
- การทดสอบของทัวริง
- การค้นหาความคล้ายคลึงกันของเวกเตอร์
AI 101
Devops คืออะไร? (พัฒนาและปฏิบัติการ)
By
ฮาซิกา ซาจิดสารบัญ
วัฒนธรรม DevOps คือ เปิดตัวประมาณปี 2007 เมื่อผู้เชี่ยวชาญเริ่มเน้นย้ำถึงข้อจำกัดของรูปแบบการพัฒนาซอฟต์แวร์แบบดั้งเดิม ในแนวทางดั้งเดิม นักพัฒนาซอฟต์แวร์เคยเขียนโค้ดโดยไม่ต้องร่วมมือกับทีมปฏิบัติการที่ปรับใช้และทดสอบโค้ด
DevOps แบ่งไซโลระหว่างนักพัฒนาซอฟต์แวร์และการดำเนินงานด้านไอที เป็นการผสมผสานระหว่างการพัฒนาและการดำเนินงานที่รวมกระบวนการเหล่านี้เป็นกระบวนการที่ต่อเนื่องเป็นหนึ่งเดียว
บล็อกโพสต์นี้จะช่วยให้คุณเข้าใจ DevOps และช่วยให้นักพัฒนาและทีมปฏิบัติการได้รับประสิทธิภาพในการพัฒนาซอฟต์แวร์ได้อย่างไร เรามาคุยกันในรายละเอียดเพิ่มเติม
DevOps คืออะไร?
DevOps เป็นกระบวนทัศน์วัฒนธรรมองค์กรที่ช่วยให้การพัฒนาซอฟต์แวร์มีประสิทธิภาพและรวดเร็วยิ่งขึ้น, QA, การปรับใช้ และการตรวจสอบ วัฒนธรรม DevOps ช่วยให้ทีมพัฒนาและทีมปฏิบัติการทำงานในสภาพแวดล้อมการทำงานร่วมกันในแต่ละขั้นตอนของการพัฒนาซอฟต์แวร์
สภาพแวดล้อม DevOps ช่วยลดเวลาในการเข้าสู่ตลาดผ่านระบบอัตโนมัติ การทำงานร่วมกัน และความคล่องตัว ลักษณะ Agile ของ DevOps เป็นเหตุผลหลักที่อยู่เบื้องหลังความสามารถข้ามสายงานในการพัฒนาและส่งมอบแอปได้เร็วขึ้น
วงจร DevOps – อธิบายแล้ว
วัฏจักร DevOps สะท้อนถึงกระบวนการที่คล่องตัวและวนซ้ำ โดยแต่ละเฟสจะเริ่มต้นขั้นตอนถัดไป ลักษณะที่คล่องตัวของ DevOps ช่วยองค์กรในการปรับปรุงประสิทธิภาพและความน่าเชื่อถือของแนวทางการพัฒนาและการปรับใช้ นอกจากนี้ยังช่วยแก้ไขข้อผิดพลาดได้อย่างรวดเร็วและตอบสนองความต้องการของลูกค้าได้แม่นยำยิ่งขึ้น
8 ขั้นตอนของวงจรการพัฒนาและการดำเนินการนำไปสู่การส่งมอบแอปพลิเคชันที่ซับซ้อนอย่างมีประสิทธิภาพ ในแต่ละขั้นตอน ทีมทำงานร่วมกันเพื่อให้ได้ความคล่องตัว ความเร็ว คุณภาพ และการซิงโครไนซ์
แพ็กเกจ
ในขั้นตอนนี้ นักพัฒนาจะกำหนดวัตถุประสงค์ของโครงการ โครงร่าง เทคโนโลยี คุณลักษณะ โมดูล ทรัพยากร ฯลฯ ซึ่งเกี่ยวข้องกับการสร้างแผนงานโดยละเอียดจนถึงความสำเร็จของโครงการ
รหัส
ในขั้นตอนนี้ นักพัฒนาจะเขียนและทดสอบโค้ดสำหรับโมดูลต่างๆ ระบบควบคุมเวอร์ชัน เช่น ที่เก็บ Git ถูกใช้เพื่อพัฒนา ติดตาม และทำงานร่วมกันในการเปลี่ยนแปลงที่ทำกับโค้ด
สร้าง
ในขั้นตอนที่สาม โค้ดที่พัฒนาจะถูกสร้างขึ้นในสภาพแวดล้อมการพัฒนาสำหรับการทดสอบ การทดสอบในขั้นตอนนี้ช่วยให้แน่ใจว่าโค้ดนั้นปราศจากจุดบกพร่องและไม่ขัดแย้งกับฟังก์ชันการทำงานที่จำเป็น
ทดสอบ
ในขั้นตอนนี้ ทีม QA จะทดสอบโค้ดอีกครั้งเพื่อตรวจสอบว่าโค้ดทำงานตามที่คาดไว้และทำงานได้อย่างราบรื่นหรือไม่ ขั้นตอนการทดสอบประกอบด้วยขั้นตอนการทดสอบแบบแมนนวลและแบบอัตโนมัติ
ปล่อย
QA อนุมัติรหัสและส่งไปปรับใช้ ทีม QA ดำเนินการตรวจสอบช่องโหว่หรือข้อผิดพลาดครั้งสุดท้ายก่อนที่จะส่งรหัสเพื่อปรับใช้
ปรับใช้
จากนั้นจะนำไปปรับใช้กับสภาพแวดล้อมการผลิตและทำให้ผู้ใช้ปลายทางสามารถเข้าถึงได้
ทำงาน
ในขั้นตอนนี้ ทีมปฏิบัติการจะกำหนดค่าและจัดเตรียมแอปพลิเคชันหรือโครงสร้างพื้นฐาน ทีมปฏิบัติการรับประกันการส่งมอบแอปพลิเคชันไปยังผู้ใช้อย่างมั่นคง ปลอดภัย และราบรื่น
การตรวจสอบ
ทีม DevOps ตรวจสอบชุดแอปพลิเคชันในการผลิต ระหว่างการตรวจสอบ ทีม DevOps จะเปิดเผยข้อมูลเชิงลึกเกี่ยวกับวิธีที่แอปพลิเคชันตอบสนองต่อการกระทำของผู้ใช้ ข้อมูลนี้ใช้เพื่อปรับปรุงและเพิ่มประสิทธิภาพแอปพลิเคชันเพื่อปรับปรุงความน่าเชื่อถือและประสิทธิภาพ
เครื่องมือ DevOps สำหรับแต่ละขั้นตอนของวงจรชีวิตของ DevOps
เครื่องมือที่ใช้เพื่ออำนวยความสะดวกในขั้นตอนต่างๆ ในวัฏจักรนั้นแบ่งออกเป็นสองประเภทหลัก
Toolchain แบบ all-in-one – ชุดเครื่องมือที่ตอบสนองความต้องการทั้งหมดของทีมพัฒนาและปฏิบัติการ และอำนวยความสะดวกในทุกขั้นตอน รวม toolchains แบบ all-in-one ที่มีชื่อเสียงบางส่วน
- Azure DevOps
- กิทแล็บ
- AWS CodePipeline
ห่วงโซ่เครื่องมือแบบเปิด – ผู้ค้าหลายรายเสนอเครื่องมือเหล่านี้เป็นยูทิลิตี้โอเพ่นซอร์สที่ผู้ใช้สามารถปรับแต่งและรวมเข้ากับเครื่องมืออื่น ๆ เพื่อตอบสนองความต้องการที่แตกต่างกันของวัฏจักร Toolchains แบบเปิดบางส่วนคือ
- เจนกินส์
- อันซิเบิ้ล
- นักเทียบท่า
ด้านล่างนี้คือรายการเครื่องมือที่ใช้ในแต่ละขั้นตอนของวงจร DevOps
ขั้นตอนของวงจร DevOps | เครื่องมือ/แพลตฟอร์ม |
แพ็กเกจ | จิระ |
อาสนะ | |
Trello | |
รหัส | ไป |
การโค่นล้ม (SVN) | |
หลายใจ | |
สร้าง | เจนกิ้นส์ |
วงกลมCI | |
Travis CI | |
ทดสอบ | ซีลีเนียม |
Appium | |
สอบเสร็จ | |
ปล่อย | เบิ้ล |
หุ่นเชิด | |
พ่อครัว | |
ปรับใช้ | Kubernetes |
นักเทียบท่า | |
AWS ยืดหยุ่น Beanstalk | |
ทำงาน | ของที่ระลึกใหม่ |
ดาต้าด็อก | |
เกรียน. |
ทำไมต้องเลือก DevOps
วัฒนธรรม DevOps สามารถช่วยให้บริษัทต่างๆ มีความยืดหยุ่น คล่องตัว และรวดเร็วมากขึ้นในการจัดการกับความท้าทายที่เปลี่ยนแปลงไปทั่วทั้ง SDLC ด้านล่างนี้คือข้อดีบางประการของ DevOps:
- ความเร็ว – คุณสมบัติหลักของเฟรมเวิร์กที่คล่องตัว เช่น ระบบอัตโนมัติ CI/CD และโครงสร้างพื้นฐานเป็นรหัส (IaaC) ช่วยให้องค์กรดำเนินการพัฒนาและปรับใช้แนวทางปฏิบัติได้โดยอัตโนมัติและเพิ่มประสิทธิภาพ
- การทำงานร่วมกัน – ความโปร่งใสและการซิงโครไนซ์ที่เกิดจากการทำงานร่วมกันช่วยให้มั่นใจได้ถึงประสิทธิภาพสูงสุดของโครงการซอฟต์แวร์
- ลดเวลาสู่ตลาด – กระบวนการทำซ้ำโดยอัตโนมัติช่วยให้องค์กรลดเวลานำที่จำเป็นในการแนะนำคุณสมบัติใหม่และการอัปเดตซอฟต์แวร์ให้กับผู้ใช้ปลายทาง
- ความน่าเชื่อถือ – มุ่งเน้นไปที่การทดสอบและการตรวจสอบรหัสอย่างต่อเนื่องในระหว่างขั้นตอนการพัฒนาและการผลิต ช่วยให้องค์กรเพิ่มคุณภาพและความน่าเชื่อถือของซอฟต์แวร์ได้สูงสุด ในขณะเดียวกันก็รับประกันความต่อเนื่อง
- ความปลอดภัย – ด้วยการทดสอบอัตโนมัติและการส่งมอบอย่างต่อเนื่อง ผู้เชี่ยวชาญสามารถค้นหาช่องโหว่ด้านความปลอดภัยแม้เพียงเล็กน้อยได้อย่างมีประสิทธิภาพและแก้ไขได้อย่างรวดเร็ว ช่วยลดโอกาสของการบุกรุกใดๆ ที่เกิดขึ้นกับแอปพลิเคชันหรือโครงสร้างพื้นฐาน
ความท้าทายในการใช้ DevOps และโซลูชัน
เหตุผลต่อไปนี้อาจทำให้องค์กรใดๆ ยอมรับวัฒนธรรม DevOps ได้ยากหากไม่มีแผนการกำกับดูแลที่เหมาะสม
- วัฒนธรรม – อุปสรรคที่สำคัญที่สุดในการปรับ DevOps คือวัฒนธรรมองค์กรและกรอบความคิดของผู้คน คนส่วนใหญ่พบว่าการเรียนรู้สิ่งใหม่ๆ เป็นเรื่องท้าทาย และมองว่าเป็นภัยคุกคามต่ออำนาจหน้าที่และเขตปลอดภัยของตน
- ข้อจำกัดด้านทรัพยากร – DevOps เปลี่ยนวิธีการพัฒนา ทดสอบ และส่งมอบแอปพลิเคชันซอฟต์แวร์ให้กับลูกค้าโดยสิ้นเชิง องค์กรที่มีทรัพยากรจำกัดอาจพบว่าการนำ DevOps ไปใช้เป็นเรื่องท้าทาย
- เครื่องมือ – การนำ DevOps ไปใช้หมายถึงการใช้เครื่องมือต่างๆ เพื่อปรับปรุงประสิทธิภาพและตรวจสอบ SDLC การเลือกใช้เครื่องมือที่เหมาะสมและทำให้สนับสนุนโครงสร้างพื้นฐานและกระบวนการที่มีอยู่นั้นเป็นสิ่งที่ท้าทาย
เพื่อจัดการกับความท้าทายเหล่านี้ องค์กรสามารถดำเนินการตามขั้นตอนต่อไปนี้:
- แรงจูงใจในทีม – กระตุ้นให้สมาชิกในทีมแบ่งปันความรู้ ทำงานร่วมกัน และทลายไซโล จัดให้พวกเขาเรียนรู้และทดลองเครื่องมือและวิธีการใหม่ๆ
- แบบจำลอง Agile – การปฏิบัติตามระเบียบวิธีแบบ Agile เช่น การประชุม Scrum หลังจากช่วงเวลาปกติ สามารถช่วยให้สมาชิกในทีมมีความยืดหยุ่นและตอบสนองได้ดีขึ้น
- ฝึกอบรมและให้ความรู้แก่พนักงาน – จัดเซสชันการฝึกอบรมและเวิร์กช็อปสำหรับพนักงานเพื่อช่วยให้พวกเขาเข้าใจแนวทางปฏิบัติที่ดีที่สุดใน DevOps
สรุป
รอบ 47% ขององค์กร ได้ย้ายไปใช้เฟรมเวิร์ก DevOps หรือ DevSecOps แล้วในปี 2022 DevOps ไม่ใช่แค่ทำลายไซโล แต่สนับสนุนให้องค์กรเพิ่มประสิทธิภาพทั้งระบบ ช่วยปรับปรุงประสิทธิภาพโดยรวมของธุรกิจโดยทำให้มั่นใจว่ากิจกรรมที่ขับเคลื่อนด้วยข้อมูลที่มีความยืดหยุ่นมากขึ้นและสอดคล้องกับความต้องการของลูกค้า