Agile sysadmin dan devops - Bagaimana mencapai [Tutup]

18

Saat ini, administrasi sistem yang gesit dan devops adalah beberapa topik yang paling trending mengenai administrasi dan operasi sistem. Kedua konsep ini terutama difokuskan pada menjembatani kesenjangan antara operasi / sysadmin dan proyek (pengembang, bisnis, dll). Bahkan jika Anda tidak pernah mendengar konsep devops, saya yakin bahwa topik ini juga menjadi perhatian Anda.

Jadi, alat dan teknik apa yang Anda gunakan untuk mencapai devops di perusahaan Anda? Saya sangat tertarik pada topik seperti manajemen perubahan, integrasi berkelanjutan dan otomatisasi, tetapi tidak hanya dalam topik ini. Silakan bagikan pemikiran Anda. Saya menantikan untuk membaca jawaban / pendapat Anda :)

Marco Ramos
sumber
Bagian dari masalah dengan "menjembatani" Pengembangan dan Operasi (Sistem Administrasi) adalah prioritas utama yang berbeda. Prioritas Sistem Administrator # 1 adalah Menjaga agar semuanya berfungsi, meskipun berbagai tugas umum yang berulang. Prioritas # 1 Pengembangan adalah untuk menciptakan fungsionalitas baru. Tugas-tugas ini dapat sangat tumpang tindih, tetapi akan tiba saatnya ketika mereka berkelahi. Pada saat-saat pertengkaran itulah DevOp Anda harus memilih untuk menjadi Operator atau Pengembang. Pengaturan tertentu dapat mentolerir penyimpangan, tetapi sebagian besar tidak akan menikmati dampak finansial.
Chris S
2
Juga, saya baru saja mendengar seseorang mendiskusikan Administrator yang juga tahu bagaimana memprogram. Kemampuan tidak menentukan prioritas atau tanggung jawab utama. Administrator modern harus malas; untuk itu mereka harus efisien dalam segala hal yang mereka lakukan. Scripting, membuat utilitas perawatan, dan memahami kode hanyalah keterampilan dasar yang ditetapkan sekarang. SA yang tidak memproses keterampilan ini diturunkan ke model bisnis kecil dan lesu (misalnya, manufaktur) di mana inefisiensi ditoleransi. Basis pengetahuan yang berubah tidak menjamin koopting dari terminologi najis.
Chris S

Jawaban:

30
  • svn / git - kontrol revisi, jelas.

  • trac / redmine / jira - ticketing.

  • tukang sepatu - untuk penyediaan server sistem operasi dasar. Cobbler adalah produk yang berfokus pada keluarga redhat tapi saya yakin ada sesuatu yang serupa untuk debian / ubuntu. Demikian pula sebagian besar perusahaan "panel kontrol cloud" seperti RightScale akan menyediakan ini untuk Anda. Kata kuncinya di sini adalah "JEOS" atau "sistem operasi yang cukup". Rute saya adalah menggunakan garis "% paket --nobase" di kickstart saya dan kemudian membangun tumpukan spesifik saya melalui ...

  • boneka / koki - untuk manajemen konfigurasi dan penegakan konsistensi. Ada beberapa opsi lain di sini, yang penting Anda menggunakan salah satunya. Salah satu trik yang saya temukan sangat penting adalah untuk menyimpan konfigurasi dalam sistem kontrol versi yang sama seperti yang digunakan pengembang. Ini membantu menyatukan alur kerja kedua tim dan membuatnya terlihat satu sama lain.

  • func (atau capistrano atau cluster-ssh) - untuk menjalankan skrip deploy di cluster. Kuncinya di sini adalah menjadikannya sesuatu yang dapat dijalankan oleh pengembang senior untuk mendorong langsung hal-hal baru dan mendorong perbaikan yang tidak terhindarkan.
    Ini benar-benar inti dari devops, memberdayakan pengembang untuk memecah dan memperbaiki lingkungan. Banyak sysadmin yang terlalu haus kekuasaan untuk dilepaskan seperti ini, atau manajemen mereka masih bekerja dengan anggapan keliru bahwa sysadmin harus menjadi pemolisian pengembang (seolah-olah kita bahkan dapat membaca setengah dari apa yang mereka lakukan).

  • cacti / ganglia / collectd / munin - grafik adalah kunci soooooo. Ini nilai bisnis metrik dengan nilai manusia dari visual sederhana. Mengaitkan timestamp dari dorongan kode dengan timestamp dari perubahan pada grafik sangat berharga dalam mengatasi masalah regresi kinerja dan melihat fakta nyata tentang keputusan kinerja. Ada titik kunci di sini yaitu bahwa grafik harus mudah dilihat dan digunakan oleh pengembang dan manajemen mereka harus mengharapkannya.

  • nagios / zabbix / smokeping / etc - pemantauan hal-hal server dan metrik kinerja tipe "halaman dasar". Sekali lagi grafik adalah kuncinya. Ini lebih untuk sisi ops tim.

  • gomez / keynote / browsermob - pemantauan eksternal kinerja browser lengkap, dengan mempertimbangkan layanan pihak ketiga, CDN, dan masalah waktu render. Ini lebih untuk sisi dev tim.

Itulah campuran alat dan teknik, fokus pada teknik. Khususnya perubahan pola pikir sisi "sysadmin" dari "admin" ke "operasi". Ini tentang mengaktifkan pengembang. Memungkinkan mereka untuk melakukan hal-hal, memungkinkan mereka untuk memperbaiki hal-hal, memungkinkan mereka untuk melihat fakta / metrik / grafik nyata tentang apa yang mereka lakukan. Sebaliknya para pengembang perlu merangkul bahwa mereka telah diaktifkan dan benar-benar melakukan pekerjaan mengamati tren kinerja, men-debug masalah, dan memikirkan tidak hanya fitur tetapi bagaimana meluncurkannya dan bagaimana mereka akan mempengaruhi kesehatan seluruh sistem / lingkungan .

cagenut
sumber
2
+1 "inti dari devops, memberdayakan pengembang untuk memecah dan memperbaiki lingkungan"
Ryan Gibbons
Yang bertentangan langsung dengan menyediakan layanan yang dapat diandalkan dan mengapa devops terkadang menjadi pengembang yang menjalankan operasi tanpa pemahaman. Keahliannya adalah menemukan keseimbangan yang tepat antara memungkinkan pengembangan gratis dan perubahan ringfencing untuk menyembunyikan jeda pengguna di belakang pementasan, redundansi, dll.
JamesRyan
2

Pendekatan terbaik adalah memahami lingkungan tempat Anda bekerja. Mulailah dengan berbicara dengan pengembang dan manajer. Cobalah untuk mendapatkan mereka di papan dan bangkit ide dari mereka. Kemungkinan besar mereka akan memiliki ide bagus tentang bagaimana hal-hal dijalankan dan jika ide-ide Anda untuk memperkenalkan devops akan menyebabkan masalah.

Dari sana, mulailah melihat aplikasi dan mengenalkannya satu per satu untuk menyelesaikan masalah.

Matt Delves
sumber
introduce them one at a time to solve problems.+1
Banjer
0

Meskipun alat dan tekniknya penting, jalur kritisnya adalah berkolaborasi di seluruh organisasi. Dewasa ini Operasi TI adalah Operasi Bisnis. Etsy menunjukkan perubahan pendapatan di dasbor mereka, terlihat untuk semua orang.

Henk Langeveld
sumber