Pracując dla dużej firmy z ponad 500 pracownikami IT i ponad 1000 serwerów, z których każdy ma własne aplikacje biznesowe, mamy ogromne wyzwanie informacyjne i koordynacyjne, aby wiedzieć, z którym pracownikiem IT należy się skontaktować, dla którego serwera. Problem koordynacji jest złożony, ponieważ różni pracownicy IT są odpowiedzialni za różne warstwy stosu IT. Na przykład istnieją różne zespoły odpowiedzialne za sprzęt, wirtualizację, systemy operacyjne, serwery aplikacji i same aplikacje.
Biorąc pod uwagę to wyzwanie, w DevOps istnieje potrzeba zdefiniowania i udokumentowania wszystkich komponentów tworzących różne stosy technologiczne w środowisku IT. Tradycyjnie można to osiągnąć dzięki właściwemu rozwiązaniu CMDB.
W tym celu zbadałem typowe rozwiązania CMDB, takie jak BMC Atrium i inne, problem polega jednak na tym, że zatrzymują się one na poziomie dokumentowania samych zasobów IT, na wysokim poziomie, zgodnie z ramami ITIL, ale nie zajmują się dokumentacją stosu technologii informatycznych w szczegółach. Badałem również takie narzędzia, jak Puppet , Ansible i Salt , ale narzędzia te koncentrują się bardziej na wdrażaniu i konfiguracji oprogramowania, a nie na koordynacji ludzi wokół oprogramowania.
Na przykład wykonalnym rozwiązaniem byłoby zdefiniowanie różnych pojęć wraz z kluczowymi atrybutami ważnymi dla tych pojęć:
- Sprzęt komputerowy
- Wirtualizacja
- System operacyjny
- Serwery aplikacji
- Aplikacje
Te koncepcje byłyby następnie kojarzone ze sobą w zakresie ich relacji w celu stworzenia rozwiązań. Np. Aplikacja zależałaby od serwera aplikacji, który zależałby od systemu operacyjnego itp., Razem to rozwiązanie byłoby zdefiniowane w „Systemie finansów”. Po zdefiniowaniu systemu wszystkie metadane związane z tymi systemami zostaną przechwycone, aby ułatwić koordynację dla każdej warstwy na stosie. Tj. Koordynacja personelu wsparcia technicznego dla każdej warstwy.
Celem takiego rozwiązania byłoby wykonanie różnych zapytań przeciwko stosom technologii, takich jak:
- Aby ustalić, kto obsługuje które składniki
- Które składniki są nieaktualne
- Które elementy należy załatać
Mając to na uwadze, jakie narzędzia open source istnieją w celu zdefiniowania wszystkich składników stosu technologii IT, w tym ich relacji między sobą, w bazie danych grafów, takich jak Neo4J?