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


12

ทำงานกับ บริษัท ขนาดใหญ่ที่มีพนักงานไอทีมากกว่า 500 คนและเซิร์ฟเวอร์มากกว่า 1,000 เซิร์ฟเวอร์โดยแต่ละเซิร์ฟเวอร์ที่ใช้งานแอพพลิเคชั่นทางธุรกิจของเราเองเรามีข้อมูลมากมายและการประสานงานที่ท้าทายในการรู้ว่าพนักงานไอทีคนไหนติดต่อเซิร์ฟเวอร์ใด ปัญหาที่เกิดจากการประสานงานประกอบด้วยพนักงานไอทีที่แตกต่างกันซึ่งรับผิดชอบด้าน IT stack ที่ต่างกัน เช่นมีหลายทีมที่รับผิดชอบด้านฮาร์ดแวร์การจำลองเสมือนระบบปฏิบัติการเซิร์ฟเวอร์แอปพลิเคชันและแอปพลิเคชันเอง

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

ฉันได้ตรวจสอบโซลูชัน CMDB ทั่วไปเช่นBMC Atriumและอื่น ๆ เพื่อจุดประสงค์นี้ แต่ปัญหาก็คือพวกเขาหยุดที่ระดับของการจัดทำเอกสารสินทรัพย์ด้านไอทีของตัวเองในระดับสูงตามกรอบ ITIL แต่ไม่ได้กล่าวถึงเอกสาร ของ IT Technology Stack โดยละเอียด ฉันได้ตรวจสอบเครื่องมือเช่นPuppet , AnsibleและSaltด้วย แต่เครื่องมือเหล่านี้ให้ความสำคัญกับการปรับใช้ซอฟต์แวร์และการกำหนดค่ามากกว่าไม่ได้ประสานงานกับผู้คนรอบ ๆ ซอฟต์แวร์

โซลูชันที่ใช้การได้ตัวอย่างเช่นจะกำหนดแนวคิดต่าง ๆ พร้อมกับคุณลักษณะหลักที่สำคัญต่อแนวคิดเหล่านี้:

  • ฮาร์ดแวร์
  • เสมือนจริง
  • ระบบปฏิบัติการ
  • แอปพลิเคชันเซิร์ฟเวอร์
  • การประยุกต์ใช้งาน

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

วัตถุประสงค์ของการแก้ปัญหาดังกล่าวจะทำแบบสอบถามต่าง ๆ กับกองเทคโนโลยีเช่น:

  • เพื่อกำหนดว่าใครสนับสนุนส่วนประกอบใดบ้าง
  • ส่วนประกอบใดล้าสมัย
  • ส่วนประกอบใดที่จำเป็นต้องได้รับการแก้ไข

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


อะไรคือขนาดขององค์กรในแง่ของระบบบุคลากรทีม ฯลฯ ?
030

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

สิ่งนี้อาจฟังดูแปลก ๆ แต่อาจเป็นโซลูชันคลังเก็บสินค้าขององค์กรที่กว้างขึ้น แต่ปรับแต่งได้เช่นกัน?
Peter Muryshkin

ขอขอบคุณและขอแสดงความยินดีสำหรับการแก้ไขนั่นเป็นคำถามที่ตอบได้มากขึ้นในขณะนี้ ฉันยังไม่ได้รับการกระตุ้นให้มีฐานข้อมูลกราฟอยู่ด้านล่าง (ไม่จำเป็น) แต่ฉันคิดว่าสิ่งนี้สามารถละเว้นได้หากมีคำตอบที่ถูกต้อง
Tensibai

@J โดโซลูชันคลังสินค้าขององค์กรอาจใช้งานได้ แต่มีโซลูชันโอเพ่นซอร์สที่จะแก้ปัญหาดังกล่าวได้หรือไม่ เชื่อหรือไม่ว่าเรามีเครื่องมือมากมายเหลือเฟือซึ่งไม่สามารถแก้ไขปัญหานี้ได้ ในด้านการจัดการเซิร์ฟเวอร์เราใช้ BMC ADDM แต่สิ่งที่สำคัญสั้น ๆ ที่มาของเครื่องมือนี้คือการที่ใช้เซิร์ฟเวอร์เป็นศูนย์กลางแทนที่จะใช้แอปพลิเคชันเป็นศูนย์กลาง ผลก็คือเมื่อเซิร์ฟเวอร์หนึ่งโฮสต์แอปพลิเคชันจำนวนมากจึงไม่มีวิธีที่ง่ายในการเชื่อมโยงเจ้าของแอปพลิเคชันหลายตัวเพราะรองรับเฉพาะการเชื่อมโยงในระดับเซิร์ฟเวอร์เท่านั้น
Durr

คำตอบ:


5

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

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

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

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

เช่นคำถามที่เหลือนั้นค่อนข้างเอนเอียงเล็กน้อยและฉันเองไม่พบองค์กรที่บันทึกความสัมพันธ์ของเลเยอร์ที่คุณอธิบายมากกว่าโครงสร้างพื้นฐานเป็นรหัสและรหัสเอกสารระบบการจัดการการกำหนดค่า (อีกครั้งนี่ไม่ได้หมายความว่าไม่มีใครทำฉันไม่เคยได้ยินเลย)
เพื่อแสดงให้เห็นจาก บริษัท ของฉันในสภาพแวดล้อมของเชฟตำราแอปพลิเคชันจะประกาศการพึ่งพา (Tomcat, jboss, nginx / php และระบบปฏิบัติการที่ต้องการจุดเชื่อมต่อสำหรับ datas ที่ใช้ร่วมกันบางส่วนและชื่อ schema DB ส่วนใหญ่) และเปิดเผย URIs ของบริการ ใช้งานโดยพ่อครัวสำหรับการกำหนดค่าแอปพลิเคชันอื่น ๆ เสียงเช่นการกำหนด 'ระบบการเงิน' ของคุณและเอกสารประกอบสำหรับมันอยู่ในตำราแอพพลิเคชั่นนี้ README พร้อมไฟล์เพิ่มเติมหากจำเป็นจริงๆ

ระบบการจัดการการกำหนดค่ามักจะมีศูนย์กลางการรายงาน "Chef-server" สำหรับดาต้า "จัดการ UI" สำหรับงานนำเสนอใน Chef World "ansible Tower" สำหรับโลกที่มีชื่อเสียงเพื่อตั้งชื่อทั้งสอง แต่พวกเขามักตั้งเป้าการกำกับ ระบบที่ถูกจัดการโดยรวมกว่าการสร้างกราฟการพึ่งพา

ที่กล่าวว่าสำหรับเชฟ Chef-server ยังทำหน้าที่เป็น CMDB คุณสามารถสืบค้นด้วยเครื่องมือต่าง ๆ (มันคืนค่าข้อมูล JSON จากคำขอ HTTP) การพึ่งพาแอปพลิเคชันระหว่างกันสามารถแสดงออกในรูปแบบต่าง ๆ และไม่มี 'ออกจากกล่อง' วิธีการแต่ละ บริษัท จะมีวิธีของตัวเองที่จะประกาศพวกเขาในระบบเพื่อวัตถุประสงค์ในการกำหนดค่าและเป็นเช่นนี้คุณอาจใช้ประโยชน์จากสิ่งนี้เพื่อสร้างกราฟของคุณ แต่ที่อยู่ด้านข้างของคุณ

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

สิ่งสุดท้ายที่ฉันคิดว่าถ้าคุณต้องการจัดการการอ้างอิงเหล่านั้นสำหรับเอกสารเท่านั้นเป็นเครื่องมือเช่นglpiซึ่งส่วนใหญ่เป็น CMDB และระบบตั๋วมันใช้ประโยชน์จากการจัดทำเอกสารสินทรัพย์และความสัมพันธ์ของพวกเขาเพื่อให้สามารถบอกสิ่งที่ได้รับผลกระทบเมื่อคุณเปิด ตั๋วที่บอกว่าแอปพลิเคชันหยุดทำงาน ประกอบกับ ng-inventory ช่วยให้สามารถค้นหาสถานะของระบบและสามารถตอบสนองความต้องการของคุณในการแก้ไขแพตช์ แต่ในความคิดของฉันนี้เป็นงานระบบการตรวจสอบเช่นสามารถตรวจสอบแบบบูรณาการภายในพ่อครัวทำงานเพื่อเป็นตัวอย่าง เป็นการแก้ไขระบบที่ล้าสมัยโดยการอัพเดต / การแพตช์ระบบ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.