วิธีบันทึกการเปลี่ยนแปลงของเซิร์ฟเวอร์


52

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

เป็นเพราะคุณไม่ได้จดบันทึกที่เหมาะสมคุณโง่! แต่วิธีที่ดีในการทำเช่นนี้คืออะไร?

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

แต่ในเซิร์ฟเวอร์เรามีบริการที่แตกต่างกัน 500 บริการด้วยวิธีการกำหนดค่าที่แตกต่างกัน และพวกเขาไม่ได้มีรูปแบบข้อความ (พิจารณาการตั้งค่าการอนุญาตในโฟลเดอร์หรือการเปลี่ยนตำแหน่งไฟล์เพจ) แม้ว่าพวกเขาจะมีการแสดงข้อความ

ในสภาพแวดล้อมของเราเราตรวจสอบไฟล์กำหนดค่าที่เราสามารถใช้งานกับ Perforce ได้ แต่มีไฟล์ไม่กี่ไฟล์ ไม่สามารถตรวจสอบใน Active Directory DB ได้อย่างแน่นอนแม้ว่าอาจมีการถ่ายโอนข้อมูลที่อาจแตกต่างออกไป ...

ในอดีตฉันพยายามเก็บบันทึกการเปลี่ยนแปลงด้วยตนเองในวิกิของเรา แต่มันยากมากที่จะรักษาวินัยในการทำสิ่งนี้ (ฉันรู้ว่าไม่ใช่ข้อแก้ตัวที่ดี แต่มันยากจริงๆ)

คำถามของฉัน: คุณใช้กลยุทธ์และเครื่องมือใดในการรับมือกับปัญหาการติดตามการเปลี่ยนแปลงการกำหนดค่าไปยังเซิร์ฟเวอร์ของคุณ

- อัปเดต -

หมายเหตุ: ฉันไม่ได้กำลังมองหาเครื่องมือการจดบันทึกที่ใช้ร่วมกัน (ฉันคุ้นเคยกับ OneNote และอื่น ๆ ) มากพอ ๆ กับเครื่องมืออัตโนมัติที่มีความหมายโดยเฉพาะเพื่อช่วยในการติดตามการเปลี่ยนแปลงของเซิร์ฟเวอร์ ไม่มีเครื่องมือที่ครอบคลุมสำหรับการติดตามการเปลี่ยนแปลงการกำหนดค่าเซิร์ฟเวอร์ แต่อาจมีแอปพลิเคชันบางอย่างเช่น GPO

นอกจากนี้ฉันสนใจในกลยุทธ์เฉพาะที่คุณพบว่ามีประโยชน์ "เราแบ่งปันบันทึกใน Sharepoint" นั้นค่อนข้างคลุมเครือ คุณรักษาวินัยอย่างไร คุณใช้รูปแบบใดในการติดตามการเปลี่ยนแปลงของคุณ คุณจัดระเบียบข้อมูลการเปลี่ยนแปลงอย่างไร ฉันชอบตัวอย่างเช่นเดียวกับความคิด

คำตอบ:


20

ในดินแดนลินุกซ์ผู้คนกำลังใฝ่หากลยุทธ์ที่แตกต่างกันสองอย่าง:

  • ระบบการกำหนดค่า จำกัดเช่นcfengineหรือหุ่นเชิดหรือพ่อครัว สิ่งเหล่านี้คล้ายกับ windows GPO ชี้ให้เห็นว่าการกำหนดค่าเซิร์ฟเวอร์ทั้งหมดนั้นมีการจัดทำเอกสารไว้ในที่เดียวและคุณทราบว่านโยบาย (ห้องเซิร์ฟเวอร์, กลุ่ม, เซิร์ฟเวอร์เฉพาะ) ใดที่มีความละเอียดมาก สิ่งนี้จะไม่ช่วยให้คุณรอดพ้นจาก "นรกคืออะไรแตกต่างกันหกเดือนที่ผ่านมา แต่มันจะช่วยให้คุณเพียงแค่กำหนดค่าเซิร์ฟเวอร์และสร้างใหม่ตั้งแต่ต้น คุณอาจวางนโยบาย cfengine และหุ่นกระบอกภายใต้การควบคุมการแก้ไขเพื่อตอบคำถาม
  • การทบทวนการควบคุม / โดยทั่วไปแล้วโปรแกรม Linux จะเก็บการกำหนดค่าไว้ในที่เดียว / ฯลฯ ความกล้าเริ่มเขียนสคริปต์เพื่อวาง / etc ในการควบคุมการแก้ไข หนึ่งในโปรแกรมที่ฉันรู้จักก็คือetckeeper :
คำอธิบาย: เก็บ / ฯลฯ ในคอมไพล์, mercurial, bzr หรือ darcs
 โปรแกรม etckeeper เป็นเครื่องมือที่ช่วยให้ / etc ถูกจัดเก็บไว้ใน git, mercurial,
 ที่เก็บ bzr หรือ darcs มันเชื่อมต่อกับ APT เพื่อยอมรับการเปลี่ยนแปลงโดยอัตโนมัติ
 ทำกับ / etc ในระหว่างการอัพเกรดแพ็คเกจ มันติดตามไฟล์เมตาดาต้ารุ่นนั้น
 ระบบควบคุมไม่ปกติรองรับ แต่นั่นเป็นสิ่งสำคัญสำหรับ / etc เช่น
 เป็นสิทธิ์ของ / etc / shadow มันค่อนข้างเป็นโมดูลและสามารถกำหนดค่าได้ในขณะที่
 การใช้งานง่ายถ้าคุณเข้าใจพื้นฐานของการทำงานกับเวอร์ชัน
 ควบคุม.

1
+1 สำหรับการกล่าวถึงระบบทั้งสองชนิดและตัวสร้างเครื่องหมายพิเศษซึ่งทำให้ใช้งานได้ง่าย - ทำงานกับ git หรือ hg
RichVel

1
ฉันใช้อันหนึ่งเพื่อติดตั้งตัวอื่นและมีทั้งคู่
Dan Garthwaite

FYI ลิงก์cfengineชี้ไปที่ www.cfengine.org ซึ่งตอนนี้เสีย เว็บไซต์อย่างเป็นทางการขณะนี้อยู่ที่www.cfengine.com นอกจากนี้ectkeeperยังมีโฮมเพจที่etckeeper.branchable.com ด้วย
e_i_pi

@e_i_pi และหุ่นเชิดไม่ใช่หุ่นเชิดอีกต่อไป
jldugger

10

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

ในองค์กรของฉันเราใช้เวลาประมาณหนึ่งปีในการนำเสนอกระบวนการและระบบเพื่อแก้ไขปัญหานี้ สำหรับกระบวนการทางธุรกิจเราได้จัดตั้งทีมจัดการการเปลี่ยนแปลง ตาม SOP การเปลี่ยนแปลงทั้งหมดในสภาพแวดล้อมการผลิตจะได้รับการประสานงานผ่านพวกเขา พวกเขารวบรวมการเปลี่ยนแปลงทั้งหมดพร้อมกับขอบเขตระบบที่ได้รับผลกระทบการบริการที่ได้รับผลกระทบ ฯลฯ บังคับใช้เอกสารที่ดีเกี่ยวกับการเปลี่ยนแปลงรวมทั้งแผนการย้อนกลับและย้อนกลับ โฮสต์การประชุมรายสัปดาห์ (เปิด) เพื่อดูการเปลี่ยนแปลงสภาพแวดล้อมที่จะเกิดขึ้นจากนั้นส่งอีเมลรายละเอียดการเปลี่ยนแปลงทั้งหมดเหล่านี้ เป้าหมายสุดท้ายของกระบวนการนี้คือเพื่อให้ทุกคนใน IT รู้ทุกอย่างที่เกิดขึ้น สิ่งนี้จะช่วยหยุดปัญหาตัวอย่างเช่น SysAdmin ที่ติดตั้งแพตช์เคอร์เนลและรีบูตระบบที่จะลงฐานข้อมูล timeclock

ในด้านของเทคโนโลยีฉันพูดได้เฉพาะกับ Unix / Linux เท่านั้นเนื่องจากฉันไม่ได้จัดการกับ Windows พวกเขาได้เปิดตัว Puppet โดย Reductive Labs เพื่อจัดการการกำหนดค่าของระบบทั้งหมดเหล่านั้น เพียงแค่เป็นระบบไคลเอนต์ / เซิร์ฟเวอร์ที่หนึ่งกำหนดการกำหนดค่าเครื่องบนเซิร์ฟเวอร์และลูกค้าดึงโอกาสเหล่านั้นทุก ๆ ครั้ง (30 นาทีโดยค่าเริ่มต้น) นอกจากนี้หากมีโอกาสใด ๆ ในการจัดการไฟล์ภายในเครื่องพวกเขาก็จะถูกเปลี่ยนกลับในเวลานั้นเช่นกัน เราใช้เพื่อจัดการบริการที่ทำงานอยู่การกำหนดค่าไฟร์วอลล์การอนุญาตผู้ใช้ ฯลฯ

ฉันขอแนะนำให้ดูสิ่งต่างๆเช่น TippingPoint เป็นบริการลูกค้าที่เฝ้าดูการกำหนดค่าระบบและส่งการแจ้งเตือนเมื่อมีการเปลี่ยนแปลง มันทำให้เราคนรักษาความปลอดภัยมีความสุขที่สุด ส่วนใหญ่จะใช้สำหรับการติดตามการเปลี่ยนแปลงที่เป็นอันตรายหรือไม่ได้เผยแพร่


เมื่อคุณเก็บไฟล์ config ของหุ่นใน VCS คุณจะได้รับประวัติศาสตร์ที่สมบูรณ์และเข้าสู่ระบบของการกำหนดค่าเซิร์ฟเวอร์ของคุณอย่างมาก :) แต่แปลงทุกสิ่งสคริปต์หุ่นเชิดต้องมีวินัยอีก: D
hayalci

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

คุณถูกต้องอย่างแท้จริงว่าปัญหาใหญ่กว่าเทคโนโลยีการบันทึกการเปลี่ยนแปลง แต่อย่าขยายปัญหาไปสู่ขอบเขตของการแก้ปัญหาไม่ได้เช่นกัน การมีเครื่องมือที่มีประสิทธิภาพสามารถมุ่งเน้นทีมของคุณและไม่มีใครทำลายกำลังใจในการพยายามทำให้เกิดการเปลี่ยนแปลงในวิธีคิดของพวกเขา ฉันใช้ระบบที่แตกต่างกันสองสามข้อที่ดีที่สุดน่าจะเป็นหน้า wiki ที่มีตารางการเปลี่ยนแปลง แต่ก็ยังไม่สมบูรณ์แบบ / etckeeper นั้นเป็นข้อดี แต่ก็ยากที่จะขยายข้ามระบบ และที่สำคัญที่สุด: Active Directory! นี่คือความต้องการที่สำคัญ
ckg

4

ฉันอยู่ที่ 4 หรือ 5 บริษัท ตอนนี้ฉันจำไม่ได้จริงๆ

เราทุกคนมีปัญหานี้ พวกเราไม่มีใครแก้มันได้ 100% แต่ที่ บริษัท ฉันตอนนี้เรามีสิ่งที่ฉันคิดว่าเป็นกลยุทธ์ที่ดีที่สุดจนถึงปัจจุบัน

Sharepoint / วิกิพีเดีย / Evernote / PIN ของ

  • Sharepoint
    • ครางทุกอย่างที่คุณต้องการ ... แต่ก็มีคุณสมบัติรายการที่ดีมาก
    • รายการที่อยู่ IP
    • สินค้าคงคลัง
    • บัญชีบริการและการใช้งาน
    • เปลี่ยนบันทึกการแจ้งเตือน
  • วิกิพีเดีย
    • วิธีการใช้งาน
    • รายการงานระยะยาว
  • Evernote
    • คู่ของฉันและฉันใช้สิ่งนี้เพื่อทำให้ทุกสิ่งที่เราไม่ต้องการใน Wiki
    • เพิ่มเติมวิธีการที่เป็นเทคนิคในธรรมชาติ
    • บันทึกรอยขีดข่วนที่เราทั้งคู่ต้องดู
    • บัญชีงานสำหรับสัปดาห์
    • รายการงานผู้รับเหมา
    • evernote clipper ทำให้ง่ายต่อการคัดกรองการตั้งค่าโฆษณา / สิทธิ์บนหน้าจอ
    • สามารถใช้ได้ทุกที่
  • PIN ของ
    • ที่เก็บรหัสผ่าน

2

อาจมีเครื่องมือที่ดีกว่าสำหรับบางสิ่งเหล่านี้ แต่นี่คือสิ่งที่เราใช้:

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

ฉันชอบใช้การควบคุมแหล่งที่มาของไฟล์กำหนดค่า - คุณบังคับใช้ความคิดเห็น "มีประโยชน์" เมื่อทำการเช็คอินหรือไม่ใช้รุ่นหรือไม่
warren

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

2

สำหรับ Windows ให้ตรวจสอบซีรี่ส์ System Center ของ Microsoft หรือคู่แข่งอื่น ๆ ในการกำหนดค่าและการจัดการบริการสำหรับแพลตฟอร์มนั้น

การเปลี่ยนแปลงจำเป็นต้องถูกส่งผ่านรูทีนการจัดการการเปลี่ยนแปลงที่เหมาะสมซึ่งด้วยตนเองอนุมัติและบันทึกก่อนที่จะเสร็จสิ้น นี่อาจเป็นคู่มือ 100% สำหรับผู้เริ่มต้น ด้วยเครื่องมือแบบบูรณาการที่ดีกว่านี้คุณสามารถขอให้เครื่องมือทำการเปลี่ยนแปลงที่เกิดขึ้นจริงและรับการ "ออกจากระบบ" โดยอัตโนมัติไปยังฐานข้อมูลการกำหนดค่ากลาง - แทนที่จะเข้าไปในคอนโซลของเซิร์ฟเวอร์แต่ละเครื่องโดยการตั้งค่าด้วยมือ ลองและแก้ไขปัญหาสไตล์คาวบอย


2

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

วิธีการติดตามการเปลี่ยนแปลงบางอย่างอาจรวมถึงการตรวจสอบเหตุการณ์ใน SEM ของคุณ (สมมติว่าคุณมี Security Event Manager) หรือเครื่องมือเช่น Nessus (ด้วยการทำงานจำนวนมากสามารถตรวจสอบสภาพแวดล้อมของคุณเพื่อค้นหาการเปลี่ยนแปลง)


2

นี่เป็นคำตอบพื้นฐานเพิ่มเติมจาก * nix ฉันไม่พบเครื่องมือที่ดีในการลอกเลียนแบบภายใต้ Windows

มีสองสามวิธีในการนำเครื่องมือนี้ไปใช้ ... และจับเมื่อคุณลืม

ระบบควบคุมการแก้ไขเช่น subversion, git, cvs หรือ RCS เป็นวิธีที่ดีในการติดตามประวัติของไฟล์ปรับแต่ง หากคุณไม่ต้องการติดตั้งระบบควบคุมการแก้ไขบนเซิร์ฟเวอร์ที่ใช้งานจริงของคุณการจัดเก็บไดเรกทอรีไฟล์การกำหนดค่าไม่ว่าจะเป็นแบบโลคัลหรือแบบระยะไกลโดยใช้บางอย่างเช่นrsnapshotจะให้ประโยชน์สูงสุดแก่ RCS แต่คุณสูญเสียความเป็นไปได้ บันทึก (แม้ว่าสิ่งนี้สามารถแก้ไขได้ด้วยความคิดเห็นภายในไฟล์เอง)

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


1

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

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

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

ฉันคิดว่ามันเป็นเพียงเรื่องของนโยบายที่ดีเครื่องมือที่ไม่มีอุปสรรคและมีระเบียบวินัย


1

เราสร้างสิ่งที่ผลิตเองเพื่อเปลี่ยนการติดตามบันทึกในสภาพแวดล้อมของเรา มันไม่ซับซ้อนอะไรเลยและใช้งานได้ดี

  • นโยบายการตรวจสอบตนเองคือการตั้งค่าที่การเปลี่ยนแปลงใด ๆ ที่คุณประเมินอาจเบี่ยงเบนไปจากการตั้งค่าแบบทันทีหรืออาจทำให้เกิดปัญหาควรจัดทำเอกสารในระบบการเปลี่ยนแปลง
    • ฝั่งตรงข้ามของ 'เหรียญ' นี้คือหากคุณกำลังแก้ไขปัญหาให้ค้นหารายการการเปลี่ยนแปลงล่าสุดหรือที่เกี่ยวข้อง
  • ลงชื่อเข้าใช้ระบบและเลือกเซิร์ฟเวอร์บริการหรือส่วนประกอบฮาร์ดแวร์ที่คุณกำลังเปลี่ยนแปลง
    • ก่อนหน้านี้ส่วนประกอบต่างๆจะถูกป้อนเข้าสู่ระบบเดียวกันโดยมีข้อมูลพื้นฐาน 'ประชากร' (สถานที่ตั้งผู้ขายหมายเลขซีเรียลแผนกที่รับผิดชอบ)
  • เลือกจากหมวดหมู่พื้นฐานแบบเลื่อนลง
    • การหยุดทำงานที่ไม่ได้กำหนดไว้
    • ปะ
    • การบำรุงรักษาฮาร์ดแวร์
    • การติดตั้งซอฟต์แวร์
  • ใส่รายละเอียดของสิ่งที่คุณทำเห็นสังเกต
  • สำเนาจะถูกส่งไปยังบุคคลที่รับผิดชอบและจัดเก็บเป็นไฟล์ XML ที่จัดทำดัชนีโดยเครื่องมือค้นหา
  • กำไร

อย่างที่ฉันพูดไม่มีอะไรแฟนซี ใช้ PERL CGI (เขียนเมื่อพันล้านปีก่อน) และ Google Search Appliance สำหรับการจัดทำดัชนี

ข้อบกพร่อง:

  • ตัวอย่างเช่นกลุ่มของบริการที่ใช้งานได้ยากนั้นคุณเพิ่งเพิ่ม patch ตัวเดียวกันไปยังตัวควบคุมโดเมนของคุณทั้ง 25 ตัว เราไม่มีกลุ่ม "Domain Controller" ดังนั้นเราต้องเลือกด้วยตนเองทั้งหมด
  • ไม่ได้รวมเข้ากับการรายงานข้อผิดพลาดของฮาร์ดแวร์ซอฟต์แวร์หรือบันทึกเหตุการณ์เพื่อช่วยแก้ไขปัญหา
  • ที่เกี่ยวข้องการป้อนข้อมูลด้วยตนเองสำหรับข้อมูล 'ประชากร' ทั้งหมดที่ฉันกล่าวข้างต้น

อย่างไรก็ตามหากคุณสนใจรหัสแล้วโปรดแจ้งให้เราทราบและฉันอาจคว้ารหัสนั้นมาแบ่งปันได้


1

ดังที่กล่าวไว้บ่อยครั้งมันเป็นปัญหาทางวัฒนธรรม - ร้านค้าเพื่อการพัฒนาบางแห่งไม่ต้องกังวลกับความคิดเห็นอีกต่อไป (รหัสเอกสารด้วยตนเองเป็นคำฮิตที่ทันสมัยในวันนี้!) และบางร้านใช้ระบบควบคุมเวอร์ชันเป็นจอกศักดิ์สิทธิ์ของบันทึกประวัติศาสตร์ เห็นได้ชัดว่าสิ่งเหล่านี้ไม่สมบูรณ์แบบ

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

เรามีลูกค้าบริการฉุกเฉินทุกการเปลี่ยนแปลงที่เกิดขึ้นกับระบบของพวกเขาจะถูกบันทึกและทุกครั้งที่เราเข้าสู่ระบบของพวกเขาเราจะต้องเข้าสู่ระบบ สำหรับบางคนเราต้องโทรศัพท์ขออนุญาตก่อน (และฉันคิดว่าพวกเขาเข้าสู่ระบบด้วย!) การเปลี่ยนแปลงทุกครั้งจะถูกบันทึกและมันจะเป็นความผิดทางวินัยที่จะเปลี่ยนระบบลูกค้าโดยไม่ต้องเข้าสู่ระบบ

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

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


1

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

ไม่ทราบว่าราคาพื้นฐานคืออะไร แต่ก่อนที่ HP จะซื้อ Opsware จะมีมูลค่าประมาณ $ 350,000 US (โดยไม่มีการสนับสนุนและเชื่อใจฉัน - คุณต้องการการสนับสนุนเมื่อฉันเริ่มใช้ Opsware)

หลายของลูกค้าที่เรามีในขณะที่ผมทำงานอยู่ที่นั่นใช้การตั้งค่าและภาพรวมคุณสมบัติการใช้งานร่วมกับTripwire

แน่นอนถ้าคุณไม่มีงบประมาณ - นี่คือทางเลือกที่แย่™ :)

และ FWIW โฆษณาที่ปรากฏที่ด้านบนของหน้านี้สำหรับผมเมื่อผมโหลดมันเป็นSpiceworks ดูเหมือนจะยิ่งใหญ่คล้ายกับ HPSA :)


1

หากสิ่งที่คุณต้องการทำคือติดตามการเปลี่ยนแปลงและไม่จัดการกระบวนการทั้งหมด (เช่นผ่าน Chef หรือ Puppet) เพียงแค่ไดเรกทอรีrsyncของคุณetc(ไม่ว่าที่ใดก็ตาม) ลงใน repo คอมไพล์ท้องถิ่น

for HOST in alpha bravo charlie delta ...; do

    rsync -avz --exclude-from=exclusions -e ssh admin@$HOST:/opt/local/etc/ ./$HOST

done

แน่นอนคุณสามารถเพิ่มแหล่งข้อมูลอื่น ๆ ได้ตามต้องการ

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