W dzisiejszych czasach sprawne administrowanie systemami i devops to jedne z najbardziej popularnych tematów dotyczących administracji systemami i ich działania. Obie te koncepcje koncentrują się głównie na wypełnieniu luki między operacjami / administratorami a projektami (deweloperzy, biznes itp.). Nawet jeśli nigdy nie słyszałeś o koncepcji devops, jestem pewien, że ten temat również dotyczy Ciebie.
Jakich narzędzi i technik używasz do osiągania korzyści w swoich firmach? Szczególnie interesują mnie tematy takie jak zarządzanie zmianami, ciągła integracja i automatyzacja, ale nie tylko te tematy. Podziel się swoimi przemyśleniami. Nie mogę się doczekać, aby przeczytać twoje odpowiedzi / opinie :)
Odpowiedzi:
svn / git - oczywiście kontrola wersji.
trac / redmine / jira - sprzedaż biletów.
cobbler - do udostępniania serwera podstawowego systemu operacyjnego. Cobbler to produkt skupiony na rodzinie redhat, ale jestem pewien, że jest coś podobnego do debian / ubuntu. Podobnie większość firm z „panelu sterowania chmurą”, takich jak RightScale, zapewni to dla Ciebie. Hasłem przewodnim tutaj jest „JEOS” lub „wystarczy system operacyjny”. Moja droga polega na użyciu linii „% packages --nobase” w moich kickstartach, a następnie zbudowaniu mojego stosu za pomocą ...
marionetka / szef kuchni - do zarządzania konfiguracją i egzekwowania spójności. Są tu także inne opcje, ważniejsze jest, abyś użył jednej z nich. Jedną sztuczką, którą uważam za szczególnie ważną, jest przechowywanie konfiguracji w tym samym systemie kontroli wersji, z którego korzystają programiści. Pomaga to połączyć przepływ pracy dwóch zespołów i sprawić, by były dla siebie widoczne.
func (lub capistrano lubuster-ssh) - do uruchamiania skryptu wdrażania w klastrze. Sztuczka polega na tym, aby sprawić, że starsi programiści będą mogli uruchomić się, aby wprowadzić nowe rzeczy na żywo i wprowadzić nieuniknione poprawki.
To naprawdę rdzeń devops, umożliwiający programistom zarówno przełamanie, jak i naprawienie środowiska. Wielu sysadminów jest zbyt spragnionych władzy, aby tak odejść, lub ich zarządzanie nadal działa na błędnym przekonaniu, że sysadmini powinni nadzorować programistów (tak jakbyśmy mogli odczytać nawet połowę tego, co robią).
cacti / ganglia / collectd / munin - wykresy są bardzo ważne. Jest to wartość biznesowa metryk z ludzką wartością prostych wizualizacji. Korelowanie znacznika czasowego wypychania kodu ze znacznikiem czasu zmian na wykresach jest niezwykle cenne w rozwiązywaniu problemów z regresją wydajności i widzeniu prawdziwych faktów na temat decyzji dotyczących wydajności. Kluczową kwestią jest tutaj to, że wykresy muszą być łatwe do zobaczenia i używania przez programistów, a ich zarząd musi się od nich spodziewać.
nagios / zabbix / smokeping / etc - monitorowanie zawartości serwera i wskaźników wydajności typu „strona bazowa”. Ponownie kluczowe są wykresy. To więcej dla zespołu operacyjnego.
gomez / keynote / browsermob - zewnętrzny monitoring pełnej wydajności przeglądarki, z uwzględnieniem usług stron trzecich, CDN i problemów z czasem renderowania. Są to bardziej dla strony deweloperów zespołu.
To mieszanka narzędzi i technik, skup się na technikach. W szczególności zmiana sposobu myślenia „sysadmin” devops z „admin” na „operacje”. Chodzi o umożliwienie programistom. Umożliwiając im robienie rzeczy, umożliwiając im naprawę, umożliwiając im zobaczenie prawdziwych faktów / wskaźników / wykresów na temat tego, co zrobili. I odwrotnie, twórcy muszą się przekonać, że zostali włączeni i faktycznie obserwować trendy wydajności, debugować problemy i myśleć nie tylko o funkcjach, ale także o ich wdrażaniu i wpływie na zdrowie całego systemu / środowiska .
źródło
Pracujemy nad tym właśnie w National Instruments. Możesz przeczytać więcej o tym, co robimy na http://dev2ops.org/blog/2010/4/27/qa-ernest-mueller-on-bringing-agile-to-operations.html
Zestaw narzędzi, o których wspomina tutaj Cagenut, zasadniczo idzie w kierunku, w którym się poruszamy.
źródło
Najlepszym podejściem jest zrozumienie środowiska, w którym pracujesz. Zacznij od rozmowy z programistami i menedżerami. Postaraj się je zabrać na pokład i odeprzeć od nich pomysły. Najprawdopodobniej będą mieli dobry pomysł na to, jak działają rzeczy i czy twoje pomysły na wprowadzenie devopów spowodują jakiekolwiek problemy.
Następnie zacznij przeglądać aplikacje i wprowadzaj je pojedynczo, aby rozwiązać problemy.
źródło
introduce them one at a time to solve problems.
+1Chociaż narzędzia i techniki są ważne, kluczową ścieżką jest współpraca w całej organizacji. W dzisiejszych czasach Operacje IT to Operacje biznesowe. Etsy pokazuje zmiany w przychodach na swoich pulpitach, widoczne dla wszystkich.
źródło