ฉันคิดว่ามาจากพื้นหลังนักพัฒนาจะทำให้กลายเป็น 'devops' จริง ๆ แล้วยุ่งยากคำถามของคุณเกือบ 3 ปีดังนั้นมันจะน่าสนใจที่จะได้ยินว่าคุณกำลังค้นหาการเดินทางฉันจะให้คำตอบจากมุมมองของ ผู้ดูแลระบบ sys เกี่ยวกับแอปพลิเคชั่นที่คุณกล่าวถึงข้างต้นและหวังว่ามันจะมีแสงน้อยหรือให้มุมมองด้านเทคนิคที่จะอธิบายว่าทำไมคน (admin หรือ dev) จะเริ่มพิจารณาสิ่งที่คุณถามเช่นจากผู้พัฒนา เปอร์สเปคทีฟความสัมพันธ์ระหว่าง x, y, z คืออะไรเครื่องมือเหล่านี้ยิ่งใหญ่กว่าที่ผลรวมของชิ้นส่วนของพวกเขา?
ฉันคิดว่าผู้ดูแลระบบของ sys มีอยู่ที่นี่ส่วนใหญ่ของแอปพลิเคชันที่คุณพูดถึงในคำถามของคุณแก้ปัญหา 'ผู้ดูแลระบบ' และในการทำเช่นนั้นให้สภาพแวดล้อมของศูนย์ข้อมูลที่เป็นนามธรรมมากขึ้น กลยุทธ์ของ devops (อ่านกลยุทธ์ / ทีม, devops ไม่ใช่บุคคล) ดังนั้นความสัมพันธ์กับแอพที่คุณพูดถึงคืออะไร? นี่เป็นวิธีการแบบองค์รวมในการให้บริการด้านไอทีอย่างไร?
OpenStack: เครื่องมือที่ช่วยให้คุณสร้างคลาวด์ส่วนตัวของคุณเองดังนั้นจึงเปรียบได้กับบางอย่างเช่น AWS
นั่นคือสิ่งที่มัน แต่มันทำอะไร? - ระบบปฏิบัติการที่มีชื่อที่เหมาะสมที่สุดคือ DOS - มันใช้งานดิสก์ของคุณโดยการทำให้ BIOS เป็นนามธรรม OpenStack จะดำเนินการศูนย์ข้อมูลของคุณและทำให้โครงสร้างพื้นฐานของคุณเป็นนามธรรม (IaaS - คือ Jargon สำหรับระบบปฏิบัติการศูนย์ข้อมูล) ตอนนี้ศูนย์ข้อมูลของคุณมี API, ไวยากรณ์คำสั่งและ GUI, OpenStack สามารถขับรถ hypervisors สวิตช์เราเตอร์ไฟร์วอลล์เครือข่ายพื้นที่จัดเก็บข้อมูล, โหลด balancers เจ้าภาพนักเทียบท่า ฯลฯ .. OpenStack ใช้ฮาร์ดแวร์ของคุณผลิต 'ปลั๊กอิน' หรือฟังก์ชั่นโดยเฉพาะอย่างยิ่ง สามารถอยู่ได้ แต่เพียงผู้เดียวในซอฟแวร์เป็นซอฟต์แวร์ที่กำหนดไว้บางสิ่งบางอย่างหรือฟังก์ชั่นเครือข่ายเสมือนจริง ที่ด้านบนของ OpenStack นี้และคลาวด์อื่น ๆ ทั้งหมดสามารถดัดแปลงโครงสร้างพื้นฐานของตัวเองได้โดยการอ่านสคริปต์ที่คุณโยนไปที่เอ็นจิน orchestration หรือถูกทริกเกอร์ตามกฎ (ขยายขนาดลดขนาด ฯลฯ ) ดังนั้น openstack จึงเป็นเลเยอร์ยักษ์ของสิ่งที่เป็นนามธรรม, เช่นฉันไม่สนใจว่าฉันมีสวิตช์, ให้เครือข่ายกับคำสั่งนี้ , หรือสร้างภาระที่ซับซ้อนให้ฉันสมดุล, HA, ที่เปิดเผยต่อสาธารณชน, ปรับขนาดอัตโนมัติ, จดทะเบียนโดเมน, จัดเก็บ แนบthingy - กับสคริปต์นี้ผมพบว่าบนอินเทอร์เน็ต
นักเทียบท่า: "VM น้ำหนักเบา" ซึ่งใช้แนวคิดเคอร์เนล Linux สองสามตัวซึ่งสามารถใช้เพื่อเรียกใช้กระบวนการแยกเช่นในสภาพแวดล้อมเว็บโฮสติ้งที่ใช้ร่วมกัน
นักเทียบท่าเป็นอีกชั้นหนึ่งของสิ่งที่เป็นนามธรรมและเช่นเดียวกับคลาวด์เป็นเทคโนโลยีที่ก่อกวนมันเปลี่ยนอุตสาหกรรมเพราะการแก้ปัญหา 'การดำเนินงาน' มากมายเช่นการพึ่งพาซอฟต์แวร์การอัพเกรดการแยกข้อมูลและการพกพาที่แท้จริง Java ได้รับความนิยมเนื่องจากความสะดวกในการพกพาซอร์สโค้ดที่นักพัฒนาไม่ต้องคิดมาก JVM ที่ใช้งานอยู่หมายความว่าโค้ดของพวกเขาควรทำงานบนเครื่องชงกาแฟตราบใดที่มันรองรับจาวา นักเทียบท่าแก้ปัญหาที่คล้ายกันเพื่อเรียกใช้แอพของฉันคุณต้องมีนักเทียบท่าโฮสต์ไม่ใช่คุณต้องการไพ ธ อนรุ่นนี้, เคอร์เนลนี้, ลินุกซ์ distro และอื่น ๆ , แอปยังคงมีการพึ่งพาเหล่านั้นแน่นอน, แต่โฮสต์ที่แฝงอยู่ไม่สนใจและผู้ดูแลระบบไม่สนใจสิ่งที่คุณทำในคอนเทนเนอร์แยก ( จุด) นักเทียบท่ากำลังเปลี่ยนแปลงทั้งกระบวนทัศน์การพัฒนาและการดำเนินงานการรักษาระบบปฏิบัติการทั้งหมดและบริการต่าง ๆ เป็นแบบไบนารี่ เราสามารถรับมันได้จากที่เก็บ , เวอร์ชั่นพวกมัน, ดัดแปลงมัน, รันมันด้วยพารามิเตอร์ ฯลฯ
Chef: เครื่องมือในการตั้งค่าและกำหนดค่าระบบปฏิบัติการเช่นภายใน VM
ใช่และไม่ก่อกวนเหมือนสองคนแรก Chef, puppet, ansible, salt, ผู้จัดการศูนย์ปฏิบัติการระบบและแอปพลิเคชั่นอื่น ๆ มากมายในพื้นที่นี้เป็นวิธีสำหรับนักพัฒนาและผู้ดูแลระบบในการปรับใช้โมเดลอัพเกรดและการดำเนินการอื่น ๆ การเปลี่ยนแปลง) มีไม่ดูเหมือนจะเป็นใด ๆ ของร่างกายมาตรฐานที่สามารถมองเห็นความพยายามเหล่านี้เหมือนมีเมฆ แต่เราไม่ได้จัดการกับสิ่งที่ชัดเจนเหมือนโครงสร้างพื้นฐานดังนั้นมันเจ็บปวดมากกว่าที่จะเรียนรู้สิ่งเหล่านี้และไม่สามารถถ่ายโอนจากที่หนึ่งไปยังอีกที่หนึ่งได้
คนจรจัด: จากความเข้าใจของฉันคือการสร้างและจัดการ VMs โดยอัตโนมัติ: การตั้งค่าเริ่มต้นและหยุดพวกเขา สิ่งนี้สามารถทำได้โดยใช้ VM ท้องถิ่นหรือระยะไกลเช่นบนแพลตฟอร์มคลาวด์
นี่เป็นสิ่งแปลก ๆ ในรายการแอพที่คุณพูดถึง Vagrant เป็นเครื่องมือสำหรับนักพัฒนาและของเล่นสำหรับผู้ดูแลระบบคุณสามารถยืนหยัดในสภาพแวดล้อมการพัฒนาด้วยคนจรจัดได้อย่างรวดเร็วเช่นฉันต้องการพัฒนาแอป Android คว้า IDE จาก คนจรจัดฉันคิดว่ามันจะถูกแซงเกอร์โดยเร็ว ๆ นี้
คุณสามารถให้คำแนะนำกับฉันเกี่ยวกับวิธีเริ่มใช้ทั้งหมดนี้ได้ไหม (มันค่อนข้างมากในเวลาเดียวกันและฉันยังไม่รู้ว่าจะเริ่มจากตรงไหน)
นี่คือเหตุผลที่ฉันคิดว่าผู้ดูแลระบบมีความได้เปรียบเราต้องทำสิ่งนี้ด้วยตนเองและรู้ว่าสิ่งที่ผิดพลาดหุ่นหุ่นคอมพิวเตอร์คลาวด์คอมพิวติ้งและนักเทียบท่าจะมาง่ายกว่าสำหรับเรานักพัฒนาจะพบว่าตัวเองแทนเจนต์มากมาย คำแนะนำสำหรับผู้ที่อาจเป็น devops คือต้องเป็นผู้ดูแลระบบก่อน