Comment nous, chez Neoflex, développons l'expertise DevOps

Après la séparation de DevOps au sein de Neoflex en un secteur d'activité distinct, l'équipe a commencé à accroître activement son expertise et à partager les sources de connaissances trouvées. Dans cet article, je partagerai avec vous mon expérience personnelle d'immersion dans le sujet et les ressources les plus intéressantes.




Les principales sources d'informations sur le sujet sont les suivantes:


  • Ressources Internet - entreprises indépendantes et développeurs
  • Articles et présentations
  • Littérature
  • Conférences
  • Programmes de formation - payants et gratuits

Ressources Internet


Il existe de nombreuses ressources sur le sujet de DevOps sur Internet. Ils peuvent être divisés en plusieurs sections.


Ressources Internet indépendantes


Des ressources Internet indépendantes publient des informations générales sur les tendances dans le développement des technologies de l'information liées à DevOps et opèrent sur des informations de haut niveau sur ce sujet, vous permettant d'être toujours à jour avec les dernières tendances et événements informatiques. Pour les architectes et la gestion de systèmes, les plus intéressants peuvent être:


devops.com est l'une des plus grandes ressources DevOps. Vous y trouverez les dernières nouvelles du monde informatique, des articles sur divers sujets (cloud, intégration et livraison continues, technologies de conteneurs, Big Data, sécurité et bien plus encore), des webinaires quotidiens, une vaste sélection de documentation, des discussions thématiques avec des spécialistes hautement qualifiés, listes structurées d'entreprises et de produits pour résoudre les problèmes DevOps et bien plus encore.


sdtimes.com est une importante ressource d'actualités sur le développement de logiciels en général, qui couvre largement le sujet de DevOps et les domaines connexes (nuages ​​et autres). En plus des nouvelles et des articles qui peuvent être trouvés sur le site ou reçus sous forme de newsletter régulière, des webinaires sur DevOps et des microservices qui sont organisés par des conférenciers de grandes entreprises de l'industrie sont souvent organisés.


dzone.com est également un site d'actualités sur le développement, qui est un agrégateur de contenu généré par les utilisateurs. Le site a enregistré plus d'un million de développeurs qui publient régulièrement des actualités sur les sujets les plus pertinents du développement logiciel: processus, technologies et approches d'implémentation. Le niveau et les intérêts des auteurs sont très divers, vous trouverez ici des documents conceptuels et des directives pratiques pour l'utilisation d'outils spécifiques. Pour cette raison, ce site peut intéresser non seulement des représentants informatiques de haut niveau, mais aussi des spécialistes techniques.


www.networkworld.com - ce site d'actualités se concentre davantage sur les technologies de réseaux modernes, ainsi que sur la création et l'exploitation de systèmes d'information et de centres de données. Mais les principales nouvelles du monde du DevOps et des technologies de l'information dans leur ensemble sont également présentées ici. Les plus intéressants seront les personnes qui travaillent activement à la conception de solutions d'infrastructure.

www.sys-con.com est un site d'actualités plutôt archaïque sur lequel, malgré des décisions de conception douteuses, l'actualité apparaît le plus rapidement. Si vous voulez vous tenir au courant de tout (même pas très important) qui se passe dans le monde DevOps, alors ce site est parfait.


Développeur Web Resources


Les ressources Internet des sociétés de développement qui créent des technologies pour implémenter des processus DevOps sont d'un grand intérêt lorsqu'elles sont plongées dans ce sujet. Sur leurs sites, en plus d'une documentation détaillée sur leurs produits, vous pouvez trouver beaucoup de choses intéressantes - blogs, webinaires et bien plus encore. En règle générale, ces matériaux sont plus proches de la pratique et, dans une plus large mesure, intéresseront les spécialistes techniques. Mais là, vous pouvez également trouver des choses conceptuelles qui intéressent un cercle plus large de personnes. Voici les sites sur lesquels j'ai souvent rencontré des contenus intéressants:


Red Hat - J'ai une sympathie particulière pour cette entreprise et ses politiques (bien que leur rachat d'IBM suscite de grandes inquiétudes pour l'avenir). Mais si nous rejetons la subjectivité, l'essentiel est que leur ressource Internet peut offrir beaucoup de choses intéressantes.Pour les utilisateurs enregistrés (en particulier avec le rôle de "développeur") une vaste base de connaissances est disponible sur leurs produits et technologies. Et ce sont les microservices, les technologies de conteneurs, la gestion de la configuration, le service Mesh, la virtualisation et bien plus encore. En plus de la base de connaissances, il y a un blog (et sur le sujet de DevOps il y a vraiment beaucoup d'informations intéressantes et pas seulement sur les produits Red Hat), des webinaires réguliers sur les produits développés et leurs nouvelles fonctionnalités (cela coïncidait que lorsque j'ai écrit ces lignes, j'ai reçu une invitation au webinaire " Implémentation du webinaire Red Hat OpenShift sur Amazon Web Services avec des questions / réponses en direct, qui se tiendra le 5 décembre) et une vaste communauté. Il convient également de mentionner que pour les comptes ayant le rôle de développeur, les produits Red Hat sont disponibles en téléchargement entièrement gratuit, et si vous le souhaitez, vous ne pouvez pas perdre de temps à les installer et à les "ressentir" directement dans le cloud. Conte pour le technicien :)


BlazeMeter est une division de CA Technologies engagée dans le développement d'une plateforme cloud pour l'exécution de tests fonctionnels et de performances. Ils ont un blog intéressant sur les tests de performances avec une comparaison de différentes technologies. Ils parlent également de l'intégration de divers types de tests dans le pipeline de livraison continue de logiciels et de l'utilisation des technologies de conteneurisation. Des webinaires sont régulièrement organisés sur des sujets similaires, dont les enregistrements peuvent également être consultés. Je me suis intéressé à BlazeMeter par la nature de mon activité (dans le passé, je travaillais dans l'équipe de test de charge). Mais il convient de noter que CA Technologies dispose également d'un grand nombre de produits, d'une manière ou d'une autre connectés à DevOps, avec leurs blogs, webinaires et bases de connaissances. Ces documents sont disponibles sur le site officiel (/).


CloudBees est une société de développement qui développe le serveur d'intégration continue Jenkins et vend divers produits basés sur celui-ci (la version cloud de Jenkins, DevOptics pour visualiser le flux de valeur grâce à l'intégration de Jira, Git et Jenkins et quelques autres). Il a un blog plutôt intéressant sur DevOps et la livraison continue de logiciels, et avec une séparation claire des matériaux pour les gestionnaires des matériaux pour les spécialistes techniques. Parfois, ils organisent des webinaires dédiés à leurs produits et solutions, mais plus à caractère publicitaire. Ils ont une base de connaissances très décente sur Jenkins et les produits connexes avec des détails élevés: des subtilités de l'architecture aux diverses options d'utilisation de fonctions spécifiques. De cool: ils dirigent leur propre radio DevOps, où sous la forme de podcasts avec une musique légère agréable, ils parlent des tendances dans le développement de DevOps et la livraison continue de logiciels. L'écouter est peut-être le moyen le plus agréable de rester dans la tendance.


Puppet Labs fait partie des pionniers du mouvement DevOps. Plus connu pour avoir publié un rapport annuel sur l'état des DevOps dans le monde. En plus du rapport, leur site Web contient un ensemble très complet de divers matériaux sur le sujet: articles, vidéos, webinaires enregistrés et webinaires prévus pour l'avenir, présentations, podcasts, livres électroniques, rapports analytiques et même infographies. La plupart des matériaux sont de très haute qualité et méritent vraiment votre attention.


Netflix - ne correspond pas tout à fait à la définition d'une société de développement, car le principal type de leur activité est la création et le streaming de séries. Néanmoins, dans la communauté informatique, c'est elle qui est devenue la pionnière des microservices et un exemple à suivre en termes de culture d'entreprise et d'innovation. Ce site appartient à leur unité responsable du développement des technologies open source. De nombreuses technologies sont présentées et regroupées par tâches. Une partie des liens mène aux référentiels GitHub correspondants, le reste - à des pages individuelles de projets, où vous pouvez trouver des vidéos de formation, des exemples d'utilisation et des guides pour participer au développement du projet.


Articles et présentations


La lecture d'articles pertinents et d'autres documents similaires sur Internet reste l'un des moyens les plus efficaces d'acquérir des connaissances sur ce qui se passe dans l'industrie. Les ressources ci-dessus sont parfaites pour cela. Ici, je vais donner plusieurs articles, présentations et autres documents qui m'ont paru particulièrement intéressants et, à mon avis, il est logique de les lire à tous ceux qui sont intéressés par les sujets DevOps (bien qu'il soit intéressant de noter que ces documents perdent rapidement leur pertinence):


Microservice 4.0 Journey, Daniel Oh - une présentation très intéressante sur l'histoire du développement des microservices et des technologies associées. En plus des informations historiques, il décrit la situation actuelle de l'industrie, ainsi que des prévisions sur l'évolution future des événements. Il convient de noter que mon site est ouvert uniquement lorsque vous travaillez via un proxy.


MLFlow: Platform for Complete Machine Learning Lifecycle, Mani Parkhe & Tomas Nykodym - une autre présentation de la même ressource, mais sur le thème de l'apprentissage automatique et de l'utilisation de modèles basés sur celle-ci. Il décrit le produit MLFlow et comment l'utiliser pour fournir un cycle de vie pratique pour les modèles Data Science. Ceux qui souhaitent utiliser de tels modèles dans un environnement productif seront particulièrement intéressants.


DevOps 2.0 pour la transformation numérique, Jesús Pérez Franco est un court article sur le développement DevOps. L'idée clé est que le processus devrait couvrir non seulement le processus de développement, mais aussi toute la chaîne, de l'apparition d'idées du côté de l'entreprise à la réception des commentaires des utilisateurs finaux et à leur utilisation. L'idée n'est pas très nouvelle, mais quelqu'un l'a peut-être manquée. Il est temps de passer de DevOps à BizDevOps :)


Smooth Sailing with Kubernetes, Scott McCloud est une bande dessinée amusante et ironique sur Kubernetes et ses avantages. Il ne prétend pas être profond et large, mais il peut expliquer rapidement et facilement à une personne qui n'est pas dans le sujet pourquoi ce produit est nécessaire et pourquoi il y a tant de battage médiatique dans le monde informatique autour de cette plate-forme. Il existe également une version russe .


TABLEAU PÉRIODIQUE DES OUTILS DEVOPS - Je ne peux m'empêcher de donner un lien vers le tableau périodique des outils DevOps de XebiaLabs. Ils sont répartis en fonction de leur objectif et de leur modèle de distribution. Pour chaque description et des liens vers des sites officiels sont donnés. De plus, chaque outil peut être ajouté au générateur de convoyeur et créer un diagramme visuel CI / CD. Il montre toutes les phases et types d'outils qui doivent être pris en compte lors de la conception du pipeline de déploiement, afin qu'il puisse être utilisé efficacement pour optimiser vos processus actuels et créer des présentations.


Littérature


Beaucoup de littérature a été écrite sur ce sujet et elle peut également être divisée en deux catégories - conceptuelle et technique. Le premier comprend des livres qui décrivent les idées de base, qu'il s'agisse d'une infrastructure sous forme de code ou de cartographie, et le second comprend de la littérature sur l'utilisation d'approches et de technologies spécifiques dans la pratique.


Littérature conceptuelle


«Philosophie de DevOps. The Art of IT Management "(Jennifer Davis, Catherine Daniels). L'un des premiers livres sur ce sujet paru en Russie. Il met davantage l'accent sur la composante culturelle de DevOps - abattre les barrières entre les équipes de développement, éliminer les politiques de reproche mutuel et encourager la collaboration pour atteindre des objectifs communs. Le livre n'est peut-être pas très intéressant pour les spécialistes techniques, mais il peut donner aux gestionnaires des informations utiles (en particulier pour ceux qui ne connaissent pas le sujet) et ils plairont certainement avec une abondance d'excellentes citations, par exemple, «il ne s'agit pas d'exécuter officiellement DevOps, mais de savoir comment les problèmes sont identifiés et résolus.


«Le projet Phoenix. Un roman sur la façon dont DevOps change l'entreprise pour le mieux "(Gene Kim, Kevin Behr, George Spafford). Similaire au livre à succès" The Goal. Le processus d'amélioration continue »ce livre présente ses idées sous une forme d'art qui est facile pour le lecteur. Les héros du roman rencontrent des problèmes typiques de l'industrie informatique et appliquent les approches fondamentales de DevOps pour les résoudre, affrontant progressivement la crise et passant d'hier sombre à demain brillant. Les auteurs ne prétendent pas à la profondeur, mais grâce au format pour la connaissance initiale du sujet s'intègre parfaitement.


«Guide DevOps. Comment atteindre une flexibilité, une fiabilité et une sécurité de classe mondiale dans les entreprises technologiques "(Jez Humble, John Willis, Patrick Debois, Gene Kim). Ce livre a été écrit par les plus grands experts DevOps du monde, dont l'auteur du livre" Phoenix Project "de Gene Kim et l'un des fondateurs du mouvement DevOps, Patrick Debois. À l'heure actuelle, il est à juste titre considéré comme le livre DevOps le meilleur et le plus complet au monde. Sans pudeur excessive, je constate que la société Neoflex a participé directement à la traduction et à la publication de ce livre en russe. Des spécialistes du secteur d'activité Pratique de l'ingénierie, y compris votre humble serviteur, ont lu et relu la version provisoire de la traduction, statué, argumenté et statué à nouveau. Les résultats de ces travaux sous la forme d’une publication en langue russe peuvent être commandés sur le site Web de l’éditeur et trouvés dans les librairies. Lisez et laissez-vous inspirer par la santé.



«DevOps for IT Managers» (Oleg Skrynnik) L'auteur de ce livre est l'un des experts reconnus dans le domaine du DevOps en Russie, ainsi que l'associé directeur de Cleverics. De plus, Oleg participe régulièrement à des conférences DevOps (telles que DevOpsDays) en Russie et à des traductions de publications étrangères sur le même sujet (cela sera discuté plus tard). Cette publication contient tous les concepts et idées clés de DevOps dans le manuel le plus intensif sur ce qu'un gestionnaire moderne doit savoir sur ce sujet sur la façon de "mettre en œuvre rapidement et efficacement DevOps" dans votre entreprise ou sur un projet. Il peut également être une bonne alternative pour ceux qui sont trop paresseux pour lire le Guide DevOps. Comment atteindre une flexibilité, une fiabilité et une sécurité de classe mondiale dans les entreprises technologiques », caractérisé par un volume solide.


"Launching and Scaling DevOps in the Enterprise" (Gary Gruver). Ce livre a été publié par Cleverics, qui a été discuté dans le paragraphe précédent. Son auteur a abordé un sujet très intéressant et important - la mise à l'échelle des processus DevOps, qui sont traditionnellement décrits pour les petits projets et équipes («deux équipes de pizza»), au niveau des départements et des processus de l'entreprise ou de l'entreprise dans son ensemble. Il peut être utile à la haute direction des entreprises pour construire une stratégie de transformation numérique et faire évoluer les DevOps à partir de projets individuels et de domaines où elle a pu localement transformer le processus de développement en organisation dans son ensemble.


Littérature technique


Beaucoup de littérature différente a déjà été écrite sur de nombreuses technologies liées à DevOps, donc ici je vais présenter les publications qui me semblaient basiques pour plonger dans ce sujet:


"Git pour un programmeur professionnel" (Scott Chacon, Ben Straub). Tout développement logiciel est basé sur l'écriture de code source qui doit être stocké quelque part et, de préférence, versionné. Dans la réalité moderne, il est optimal d'utiliser Git à ces fins, surtout si votre équipe comprend plus d'un développeur travaillant sur une certaine partie de la fonctionnalité. Ce livre décrit en détail le système de contrôle de version Git, le processus de version du code, les commandes de base et les fonctionnalités avancées à utiliser, ainsi qu'une comparaison avec d'autres systèmes de contrôle de version modernes. Après l'avoir lu, vous pouvez passer à l'étape suivante - configurer l'intégration continue.


«Jenkins: The Definitive Guide» (John Ferguson Smart) - pour configurer l'intégration continue, un grand nombre de produits ont été créés, à la fois dans le cloud et stationnaires, mais je recommanderais d'utiliser Jenkins. Outre le fait qu'il est gratuit (sans compter les versions cloud et entreprise de CloudBees), plus d'un millier de plug-ins ont été écrits pour cela, vous permettant de résoudre presque toutes les tâches lors de la création d'un CI / CD. Ce livre décrit en détail l'architecture de cette technologie, les principes de son fonctionnement et la possibilité d'utilisation, y compris les procédures de maintenance Jenkins et bien plus encore. Quand une compréhension des processus CI / CD est formée, vous pouvez commencer à étudier la technologie des conteneurs.


«Utiliser le Docker» (Adrien Mowet). Parmi les technologies de conteneurs, Docker est actuellement le leader. De nombreux ouvrages ont été écrits sur le sujet de son application et de son utilisation optimale. Mais c'est ce livre qui a rassemblé la sélection optimale de matériaux pour une connaissance complète de cette technologie: de la description du principe de conteneurisation et un aperçu détaillé de toutes les commandes Docker de base à la construction d'un microservice simple à partir de plusieurs composants et en utilisant des outils spécialisés pour le déboguer. En outre, ce livre décrit l'orchestration des conteneurs et les outils populaires pour le simplifier, mais je recommanderais d'accorder un peu plus d'attention à ce sujet (comme l'un des plus importants pour comprendre les principes de construction de systèmes de microservices). Ne vous limitez pas à lire ce livre, mais étudiez de la littérature supplémentaire, comme Kubernetes in Action.


«Kubernetes in Action» (Marko Lukša), «The DevOps 2.3 Toolkit: Kubernetes: Deploying and gérant des applications hautement disponibles et tolérantes aux pannes à grande échelle» (Viktor Farcic), «The Kubernetes Book: Version 3» (Nigel Poulton). Kubernetes, en fait, a remporté la guerre de l'orchestre de conteneurs, laissant le reste loin derrière. Seuls les orchestrateurs qui étendent ses fonctionnalités (comme OpenShift, IBM Cloud Private et Rancher) peuvent faire mieux que lui. Par conséquent, la compréhension des principes de fonctionnement de Kubernetes et des objets avec lesquels il opère est essentielle lorsque vous travaillez avec des systèmes cloud et de microservices. Le système se développe TRÈS activement et de nombreuses publications y sont publiées, il y a donc déjà 3 livres indiqués. Après les avoir lus, vous aurez une compréhension complète de la plate-forme Kubernetes, de ses capacités et fonctionnalités, et vous serez également prêt à développer et exploiter des applications conteneurisées. De plus, le livre est écrit avec dignité et lu d'un seul souffle, bien sûr, si ce sujet vous intéresse. Mais si vous devez utiliser non seulement des applications de conteneur, mais, par exemple, des tâches de traitement de données dans Hadoop ou des applications autonomes, je recommande de faire attention à Apache Mesos.


"Mesos en action" (Roger Ignazio). Si vous êtes confronté à la tâche de construire un centre de données et une gestion centralisée de ses ressources, je vous recommande de prêter attention à Apache Mesos ou à sa distribution DC / OS complétée. Ce livre est dédié à l'utilisation de cette technologie et explique les principes de construction d'un cluster Mesos, de création d'un pool de ressources commun et de création et d'exécution de cadres pour les allouer à partir du pool pour des tâches et des applications spécifiques. De nombreux frameworks prêts à l'emploi (tels que Marathon) ont été créés pour Mesos, vous permettant d'exécuter les types de tâches les plus populaires - Docker, Spark, conteneurs Jenkins et bien d'autres. Entre autres, Mesos peut utiliser Kubernetes comme cadre pour orchestrer les conteneurs Docker, et DC / OS dispose d'un catalogue de services avec lequel vous pouvez déployer les produits open source les plus populaires sur votre cluster en quelques minutes.


Conférences


Des conférences DevOps ont lieu dans de nombreux pays du monde, y compris la Russie. Voici les plus importants et intéressants en termes de contenu:


DevOpsDays est la plus grande conférence DevOps au monde (plus de 160 événements organisés), organisée chaque année dans de nombreux pays du monde, y compris la Russie (ces dernières années à Moscou). L'un des organisateurs est Patrick Debois - l'un des fondateurs du mouvement DevOps. Le programme de l'événement comprend des rapports, des ateliers, des séances ouvertes et divers concours pour les participants. Les intervenants sont généralement des représentants d'entreprises locales et un petit nombre d'invités d'entreprises étrangères qui exploitent et développent activement les technologies et les approches DevOps.


DevOps Pro Moscou est également une conférence DevOps très valable, qui s'est tenue pendant 3 jours à Moscou. Le programme comprend des discours d'un grand nombre d'orateurs, y compris étrangers, et des master classes de représentants de grandes entreprises russes et étrangères qui promeuvent et développent activement le thème DevOps. Le seul point négatif - les rapports sont divisés en 3 volets, il y a donc une forte probabilité de ressentir les affres de choix - de nombreux sujets de présentations sont très intéressants.


DevOops n'est pas une conférence à grande échelle comme les deux précédentes, mais avec des conférenciers de très grande classe, principalement des meilleures entreprises mondiales dans le domaine du DevOps. Tenue à Saint-Pétersbourg. Le programme de l'événement ne comprend que des discours de conférenciers et des conversations en coulisses, mais sur les questions les plus d'actualité, uniquement les dernières tendances de l'industrie et son avenir.


Agile, DevOps, ITSM - cette conférence est dédiée non seulement à DevOps, mais aussi à d'autres façons pertinentes d'organiser et de gérer les processus de travail dans l'informatique. Il se concentre principalement sur les managers - il n'y a pratiquement aucun rapport technique. Le programme comprend des présentations de conférenciers et des stands technologiques d'entreprises partenaires.


La formation


Le thème DevOps est intrinsèquement divisé en parties culturelles et technologiques. Malgré le fait que les deux sont également importants, la formation est généralement effectuée précisément sur le plan technologique (bien qu'il y ait des exceptions). Ensuite, une liste de plateformes gratuites et payantes sur lesquelles vous pourrez approfondir vos connaissances dans ce sens.


Frais de scolarité gratuits


, DevOps, , ! ? , .


Red Hat — , , . : Red Hat, . — . . , , . , .


CloudBees — Jenkins . -, . Jenkins , DevOptics.


Puppet Labs — DevOps- « ». , Open Source Enterprise . — . :)


Chef — Chef , , - . , Learn Chef Rally, , . - Chef, . ?


Microsoft Virtual Academy — Microsoft , . , DevOps . , , .



DevOpsInstitute — DevOps. , — DevOps ( Agile). .


CloudBees — CloudBees. , (, Jenkins ). CloudBees Jenkins , .


Puppet Labs — Puppet Labs . : Puppet , . , .


Chef — Learn Chef Rally , Chef. - , , . , , .


Edureka est un portail spécialisé dans l'enseignement des diverses tendances de la mode en informatique, telles que la technologie des mégadonnées et le cloud computing. Il n'y a pas beaucoup de cours eux-mêmes, mais tous sont assez pertinents: Docker, Kubernetes, Git et DevOps en général. La plupart viennent avec une certification, ce qui est toujours agréable.


C’est tout. Je vous souhaite toute la curiosité, la motivation pour le développement personnel et le succès dans cette leçon intéressante!


Fin.

Source: https://habr.com/ru/post/fr431104/


All Articles