การแบ่งประเภทจะช่วยด้วยความเร็วและประสิทธิภาพของโครงการได้อย่างไร

ผู้เขียน: Roger Morrison
วันที่สร้าง: 28 กันยายน 2021
วันที่อัปเดต: 19 มิถุนายน 2024
Anonim
PROTEKKT Life-Saver
วิดีโอ: PROTEKKT Life-Saver

เนื้อหา


ที่มา: Sashazamarasha / Dreamstime.com

Takeaway:

ภาชนะบรรจุช่วยให้นักพัฒนาสามารถทำงานได้เร็วขึ้นและมีประสิทธิภาพมากกว่าเครื่องเสมือน

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

คอนเทนเนอร์เป็นทรัพยากรการจำลองเสมือนที่ใช้เคอร์เนลของระบบปฏิบัติการโคลนกับคอนเทนเนอร์อื่น มันต้องใช้ความพยายามน้อยกว่าในการตั้งค่ากว่าเครื่องเสมือนโดยทั่วไปและมีประโยชน์หลักอื่น ๆ เช่นกัน ระบบรวมถึง Docker และ Kubernetes container ช่วยให้ บริษัท ต่างๆสามารถสร้างและขยายขนาดในรูปแบบใหม่และน่าตื่นเต้น

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


Encapsulation, Microservices และ Artifacts

หนึ่งในจุดพูดคุยที่คุณได้รับบ่อยที่สุดจากวิศวกรที่กระตือรือร้นในการใช้การตั้งค่าคอนเทนเนอร์คือคอนเทนเนอร์เองสามารถใช้รหัสฐานแบบเต็มกับการอ้างอิงทั้งหมดซึ่งพร้อมที่จะนำไปใช้งาน

การใช้ไฟล์สแตติกเรียกว่าคอนเทนเนอร์รูปภาพวิศวกรสามารถรวมไลบรารีระบบและทรัพยากรอื่น ๆ เข้ากับแอปพลิเคชันทั้งหมดหรือบางส่วน ในทางกลับกันนี้จะผลักดันการสร้างและการส่งมอบบริการไมโครซึ่งภาชนะบรรจุที่แตกต่างกันโฮสต์ฟังก์ชั่นที่แตกต่างกันที่สามารถรวมกันเพื่อสร้างระบบนิเวศที่คล่องตัว

“ เราเชื่อว่าคอนเทนเนอร์หรือรูปภาพอิมเมจคอนเทนเนอร์เป็นสิ่งประดิษฐ์ซอฟต์แวร์นำส่งใหม่” Chris Ciborowski ซีอีโอของ NebulaWorks กล่าวซึ่งทำงานกับตู้คอนเทนเนอร์มาตั้งแต่วันแรกในยุค 2000 “ ฉันหมายความว่ายังไงและทำไม? สิ่งประดิษฐ์การนำส่งเป็นแอปพลิเคชันของนักพัฒนาซอฟต์แวร์ที่พร้อมใช้งาน ในอดีตนี้เป็นสิ่งที่รวมรหัสปฏิบัติการเพียงอย่างเดียวซึ่งทำให้การแก้ไขการพึ่งพารันไทม์กับการดำเนินการ ด้วยการใช้ประโยชน์จากอิมเมจคอนเทนเนอร์นักพัฒนาสามารถรวมการพึ่งพาทั้งหมดของพวกเขาลดโอกาสของความล้มเหลวของรันไทม์เนื่องจากข้อผิดพลาดของมนุษย์ในระหว่างการปรับใช้แอปพลิเคชัน”


“ ภาชนะบรรจุซึ่งช่วยให้องค์กรสามารถโยกย้ายทั้งแอปพลิเคชั่นและการพึ่งพาระหว่างเครื่องได้อย่างง่ายดายทำให้รู้สึกดีสำหรับองค์กรที่พัฒนาซอฟต์แวร์ภายในองค์กร” Peter Tsai นักวิเคราะห์เทคโนโลยีอาวุโสของ SpiceWorks กล่าว เทคโนโลยีที่ค่อนข้างใหม่ “ โซลูชันของบุคคลที่สามสำหรับตู้คอนเทนเนอร์นั้นไม่แข็งแรงพอ ๆ กับสภาพแวดล้อมการจำลองเสมือน จากข้อมูลของ Spiceworks ในปี 2561 มีเพียง 19 เปอร์เซ็นต์ขององค์กรที่ใช้ตู้คอนเทนเนอร์ถึงแม้ว่าจำนวนนั้นจะเพิ่มขึ้นถึง 35% ในปี 2563”

Scott Buchanan รองประธานฝ่ายการตลาดของ Heptio อธิบายในรูปแบบของการเปรียบเทียบด้านลอจิสติกส์ที่เป็นประโยชน์

ไม่มีข้อบกพร่องไม่มีความเครียด - คู่มือแบบเป็นขั้นตอนเพื่อสร้างซอฟต์แวร์ที่เปลี่ยนแปลงชีวิตโดยไม่ทำลายชีวิตของคุณ

คุณไม่สามารถพัฒนาทักษะการเขียนโปรแกรมของคุณเมื่อไม่มีใครใส่ใจคุณภาพของซอฟต์แวร์

“ คิดเกี่ยวกับการเคลื่อนไหว” บูคานันกล่าว “ คุณจะต้องใช้กล่องกระดาษแข็งจำนวนมาก ดังนั้นคุณปรับใช้กลุ่มของพวกเขาทั่วบ้านของคุณแล้วคุณเติมพวกเขาด้วยทุกสิ่งที่มีความสำคัญกับคุณ: การใช้งาน แทนที่จะบันทึกเทปมันปิดและสูญเสียการเข้าถึงทรัพย์สินของคุณพวกเขายังคงเปิดอยู่เพื่อให้คุณสามารถจัดระเบียบสิ่งของระหว่างกล่องได้ตามต้องการ และเมื่อคุณต้องการย้ายกล่องเหล่านั้นมันง่ายกว่าการวางบ้านไว้บนล้อ กล่องกระดาษแข็งเหล่านั้นเป็นตู้คอนเทนเนอร์และกล่องเหล่านี้มอบความสะดวกในการเคลื่อนย้ายสิ่งของระหว่างสถานที่ต่าง ๆ รวมถึงระบบคลาวด์สาธารณะและส่วนตัว”

ปรัชญา DevOps

ตู้คอนเทนเนอร์ยังช่วยให้ บริษัท ต่างๆดำเนินการสิ่งที่เรียกว่า“ DevOps” ซึ่งเป็นจอกศักดิ์สิทธิ์ในเทคโนโลยีขององค์กร เป็นความคิดที่ว่าคุณจะเชื่อมโยงแผนกการพัฒนาและการปฏิบัติการช่วยให้ทีมทำงานร่วมกันได้ดีขึ้นและช่วยเพิ่มขั้นตอนการผลิตและสร้างระบบการปล่อยที่คล่องตัวยิ่งขึ้น (ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ DevOps ดูที่ผู้จัดการ DevOps อธิบายสิ่งที่พวกเขาทำ)

“ Devs ไม่เพียง แต่ได้รับประโยชน์เท่านั้น - การดำเนินการเช่นนั้น” Ciborowski อธิบายโดยอธิบายการทำงานของ DevOps นี้ “ เนื่องจากอิมเมจคอนเทนเนอร์เป็นแบบพกพาทีมดำเนินการสามารถเรียกใช้อิมเมจคอนเทนเนอร์บนโฮสต์ใดก็ได้ที่มีคอนเทนเนอร์ไทม์เรอร์ที่เข้ากันได้ - เช่นนักเทียบท่า - และเมื่อมีการใช้งานเพิ่มขึ้น ตัวอย่างในสถานที่และคลาวด์”

Ali Ali Golshan จาก StackRox อธิบายเพิ่มเติมเกี่ยวกับปรัชญาของ DevOps ที่มีอยู่ในการออกแบบตู้คอนเทนเนอร์โดยอธิบายว่าการวางคอนเทนเนอร์สามารถช่วยปรับปรุงท่อได้อย่างไร

“ การวางตู้คอนเทนเนอร์ช่วยให้องค์กรต่างๆสามารถเผยแพร่แอพพลิเคชั่นและแนะนำฟังก์ชั่นใหม่สำหรับลูกค้าได้เร็วขึ้นมาก” Golshan กล่าว “ เนื่องจากคอนเทนเนอร์แยกรหัสออกเป็นหน่วยเล็ก ๆ นักพัฒนาจึงสามารถทำงานได้อย่างอิสระมากขึ้นเพื่อปรับปรุงการทำงาน เทคโนโลยีคอนเทนเนอร์ยังช่วยลดภาระในการทดสอบซึ่งช่วยเพิ่มความเร็วในการแนะนำซอฟต์แวร์เนื่องจากนักพัฒนาสามารถทดสอบรหัสใหม่มั่นใจได้ว่าพวกเขาไม่ได้เป็นส่วนหนึ่งของแอปพลิเคชันอีกต่อไป

Dan Bartow ของ ConDati อธิบายว่าตู้คอนเทนเนอร์ของ Kubernetes ช่วยให้ บริษัท ของเขามีวิวัฒนาการอย่างไร

“ ก่อนที่จะ Kubernetes เราต้องปอกเปลือกด้วยตนเองในแต่ละสภาพแวดล้อมและทำการอัพเกรดด้วยตนเองโดยการดึงภาชนะใหม่หยุดเก่าเริ่มต้นใหม่และทำซ้ำด้วยตนเองสำหรับลูกค้าทุกคน” Bartow กล่าว “ Kubernetes เปลี่ยนชั่วโมงและชั่วโมงการทำงานในวันวางจำหน่ายเป็นเพียงไม่กี่นาที ด้วยการคลิกเพียงไม่กี่ครั้งเราสามารถทำการอัพเกรดการเริ่มต้นใหม่ของทุก ๆ คอนเทนเนอร์ในทุกสภาพแวดล้อม สิ่งนี้เกิดขึ้นอย่างราบรื่น”

เมื่อการดำเนินการประเภทนี้ช่วยให้นักพัฒนาทำงานอย่างใกล้ชิดกับทีมปฏิบัติการและทำลายอุปสรรคระหว่างแผนกพวกเขาสามารถเปิดใช้งานแบบ DevOps ที่ดีกว่าทำให้ บริษัท มีความสามารถในการแข่งขันในอุตสาหกรรมมากขึ้น

ความปลอดภัย

นอกเหนือจากทุกสิ่งที่บรรจุภัณฑ์ให้สัญญาในแง่ของการใช้งานแล้วยังมีประโยชน์ด้านความปลอดภัยที่สำคัญ Golshan มีหลายสิ่งที่จะพูดเกี่ยวกับวิธี“ พื้นผิวการโจมตีแบบบาง” ในการปรับใช้คอนเทนเนอร์ลดความเสี่ยง

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

และเขาเสริมนั่นไม่ใช่ทั้งหมด

“ ในอีกทางหนึ่งตู้คอนเทนเนอร์แนะนำพื้นผิวการโจมตีใหม่ด้วยสองวิธี Ephemerality เป็นองค์ประกอบหนึ่ง เนื่องจากตู้คอนเทนเนอร์มาและไปเป็นประจำก็โอเคที่จะใช้มาตรการรักษาความปลอดภัยที่รุนแรงเช่นการฆ่าตู้คอนเทนเนอร์ถ้ามันทำหน้าที่ 'ไม่ถูกต้อง' แต่ ephemerality นั้นยังหมายถึงผู้โจมตีสามารถครอบคลุมเส้นทางของพวกเขาได้ง่ายขึ้นและป้องกันนิติเวช จากนั้นก็ฆ่าตู้คอนเทนเนอร์เมื่อเสร็จแล้ว องค์ประกอบที่สองของพื้นผิวการโจมตีที่กว้างขึ้นมาพร้อมกับองค์ประกอบอื่น ๆ ของระบบนิเวศ - ที่โดดเด่นที่สุดของออเคสตร้า Orchestrators ช่วยให้องค์กรมีวิธีในการปรับขนาดการสร้างการปรับใช้และการจัดการตู้คอนเทนเนอร์ แต่อุตสาหกรรมได้เห็นการโจมตีและช่องโหว่หลายครั้งที่เชื่อมโยงกับผู้จัดทำ เทสลาเห็นโครงสร้างพื้นฐานของ Kubernetes ที่ถูกบุกรุกในรูปแบบที่ทำให้ผู้โจมตีสามารถเข้ารหัส cryptocurrency และรายงานรายละเอียดว่าผู้โจมตีสามารถบุกรุกกลุ่ม Kubernetes ของ Shopify ได้อย่างไร”

ในกรณีของ Bartow การตรวจสอบความปลอดภัยของบุคคลที่สามที่แท้จริงยืนยันว่าพื้นผิวการโจมตีที่มีขนาดเล็กลงของบรรจุภัณฑ์นั้นเป็นข้อดีสำหรับ ConDati

“ เราเพิ่งทดสอบการเจาะผ่านบุคคลที่สามเสร็จแล้ว…ครั้งแรกที่เราทำเสร็จและพวกเขาบอกเราทุกคำต่อคำว่าเรามี 'พื้นผิวการโจมตีเล็ก ๆ น้อย ๆ ” Bartow กล่าว “ Kubernetes เป็นส่วนใหญ่ของสาเหตุที่เป็นจริง”

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