Sobre administradores, devops, confusão sem fim e transformação de DevOps na empresa



O que é necessário para o sucesso de uma empresa de TI em 2019? Os professores do konfs e mitaps falam muito alto e nem sempre são claras as palavras para as pessoas normais. A luta pela implantação, microsserviços, a rejeição do monólito, a transformação de DevOps e muito, muito mais. Se você descarta a beleza verbal e fala diretamente e em russo, tudo se resume a uma tese simples: faça um produto de qualidade e faça-o com conforto para a equipe.

Este último se tornou criticamente importante. Finalmente, os negócios chegaram à conclusão de que um processo de desenvolvimento confortável melhora a produtividade e, se tudo é depurado e funciona como um relógio, também oferece espaço para manobras em situações críticas. Uma vez, por uma questão de manobra, uma pessoa inteligente inventou backups, mas a indústria está se desenvolvendo e viemos para os engenheiros do DevOps - pessoas que transformam o processo de interação entre desenvolvimento e infraestrutura externa em algo adequado e não relacionado ao xamanismo.

Toda a história do módulo é linda, mas ... Aconteceu que parte dos administradores foi abruptamente apelidada de DevOps, e os próprios engenheiros da DevOps começaram a exigir pelo menos habilidades de telepatia e clarividência.

Antes de falar sobre os problemas modernos do fornecimento de infraestrutura, vamos decidir o que queremos dizer com este termo. Até o momento, a situação se desenvolveu de tal maneira que alcançamos a dualidade desse conceito: a infraestrutura pode ser condicionalmente externa e condicionalmente interna.

Uma infraestrutura externa deve significar tudo o que garante a capacidade de manutenção de um serviço ou produto que a equipe está desenvolvendo. Estes são servidores de aplicativos ou sites, hospedagem e outros serviços que garantem o desempenho do produto.

A infraestrutura interna inclui serviços e equipamentos usados ​​pela própria equipe de desenvolvimento e por outros funcionários, dos quais geralmente existem muitos. Estes são servidores internos de sistemas de armazenamento de código, um gerenciador de tarefas implantado localmente e tudo, tudo, tudo que existe na intranet corporativa.

O que o administrador do sistema faz na empresa? Além de administrar a própria intranet corporativa, muitas vezes coloca o ônus de preocupações econômicas para garantir a disponibilidade de equipamentos de escritório. O administrador é o mesmo cara que arrasta rapidamente uma nova unidade de sistema para fora da sala dos fundos ou um laptop sobressalente pronto para o trabalho, entrega um teclado novo e rasteja de quatro em volta dos escritórios, estendendo o cabo Ethernet. Admin é o proprietário local e mestre não apenas de servidores internos e externos, mas também de um executivo de negócios. Sim, alguns administradores podem trabalhar apenas no plano do sistema, sem hardware. Eles devem ser distinguidos em uma subclasse separada de "administradores de sistemas de infraestrutura". E alguém especializado em atender exclusivamente equipamentos de escritório, felizmente, se a empresa tiver mais de cem pessoas, o trabalho nunca termina. Mas nem um nem os outros devops não são.

E quem são os DevOps? Devops são pessoas que falam sobre a interação do desenvolvimento de software com a infraestrutura externa. Mais precisamente, os desenvolvedores modernos estão envolvidos nos processos de desenvolvimento e implantação muito mais profundamente do que os administradores que simplesmente inundaram as atualizações no ftp já estiveram envolvidos. Uma das principais tarefas do engenheiro do DevOps agora é garantir um processo de interação confortável e eficiente, construído entre as equipes de desenvolvimento e a infraestrutura do produto. São essas pessoas responsáveis ​​pela implantação dos sistemas de reversão e implantação, são essas pessoas que participam da carga dos desenvolvedores e se concentram o máximo possível em sua tarefa extremamente importante. Ao mesmo tempo, os devops nunca esticarão um novo cabo ou distribuirão um novo laptop na (s) sala (s) dos fundos

Qual é o problema?


Para a pergunta "Quem é o DevOps?" metade dos funcionários da esfera começa a responder com algo como "Bem, este é, em suma, um administrador que ..." e a seguir. Sim, era uma vez, quando a profissão de engenheiro do DevOps começava dos administradores mais talentosos em termos de serviço, as diferenças entre eles não eram óbvias para todos. Mas agora, quando as funções dos devops e administradores da equipe começaram a diferir radicalmente, é inaceitável confundi-los entre si ou mesmo colocar um sinal de igualdade entre eles.

Mas o que isso se traduz em negócios?

Contratar, é tudo sobre ele.

Você abre a vaga "Administrador do Sistema", e os requisitos são listados: "interação com desenvolvimento e clientes", "sistema de entrega de CI / CD", "manutenção dos servidores e equipamentos da empresa", "administração de sistemas internos" e assim por diante; você entende que o empregador está carregando algumas bobagens. O problema é que, em vez de "Administrador do sistema" no título da vaga, deve ser "DevOps-engineer" e, se esse título for alterado, tudo se encaixará.

No entanto, que impressão é criada ao ler essa vaga? Que a empresa está à procura de um operador de múltiplas ferramentas, que implantará um sistema de controle e monitoramento de versão e sacudirá os dentes com os dentes ...

Mas, para não aumentar o grau de dependência de drogas no mercado de trabalho, basta chamar as vagas pelos nomes próprios e entender claramente que o engenheiro do DevOps e o administrador do sistema são duas entidades diferentes. O único desejo irreprimível de alguns empregadores de apresentar ao candidato a lista mais ampla possível de requisitos leva ao fato de que os administradores de sistemas "clássicos" deixam de entender o que está acontecendo ao seu redor. O que, a profissão muda e fica para trás na vida?

Não, não e não novamente. Os administradores de infraestrutura que administrarão os servidores internos da empresa, ou ocuparão os cargos de suporte L2 / L3 e ajudarão outros funcionários, não foram a lugar algum e não vão.

Esses especialistas podem se tornar engenheiros de DevOps? Claro que eles podem. De fato, esse é o ambiente irmão, que requer habilidades de administração do sistema, mas, além disso, o trabalho com monitoramento, sistemas de entrega e, em geral, é adicionada uma interação estreita com a equipe de desenvolvimento e teste.

Outro problema do DevOps


De fato, tudo não se limita à contratação e confusão constante entre administradores e devops. Em algum momento, os negócios foram confrontados com o problema de fornecer atualizações e a interação da equipe de desenvolvimento com a infraestrutura final.

Talvez tenha sido quando um tio com olhos ardentes chegou ao local de uma conferência e disse: “Estamos fazendo isso e chamamos DevOps. Esses caras resolverão todos os seus problemas ”- e começaram a contar como ele vive na empresa após a implementação das práticas de DevOps.

No entanto, não basta contratar um engenheiro de DevOps para que tudo funcione como deveria. A empresa deve passar completamente pela transformação do DevOps, ou seja, o papel e os recursos de nossos desenvolvedores devem ser claramente entendidos também no lado da equipe de desenvolvimento e teste de produtos. Temos uma história "bonita" sobre esse assunto, que ilustra completamente toda a lata em alguns lugares.

A situação Devops são necessários para implantar um sistema de reversão de versão, sem investigar particularmente como ele funcionará. Suponha que, dentro do sistema Usuários, esses sejam campos separados sob o nome, sobrenome e senha. Uma nova versão do produto é lançada, mas para os desenvolvedores, a "reversão" é apenas uma varinha mágica que conserta tudo, e eles nem sabem como funciona. Assim, por exemplo, os desenvolvedores no próximo patch combinaram os campos de nome e sobrenome, lançaram no prod e a versão diminuiu por algum motivo. O que está havendo? O manual chega ao devoop e diz “Puxe o interruptor da faca!”, Ou seja, pede que ele volte para a versão anterior. O que os devops fazem? Ele volta para a versão anterior, mas como os desenvolvedores não queriam entender como essa reversão é feita, ninguém disse ao devo que também era necessário reverter a base. Como resultado, tudo cai para nós e, em vez do site que fica mais lento, os usuários veem o erro "500", porque a versão antiga não funciona com os campos do novo banco de dados. Devops não está ciente disso. Desenvolvidos são silenciosos. A gerência começa a perder nervos e dinheiro e recupera os backups, oferecendo a possibilidade de revertê-los para que "pelo menos algo funcione". Como resultado, os usuários perdem todos os seus dados por um período de tempo.

Os malucos vão, é claro, para os devops, que "não criaram o sistema de reversão correto", e o fato de os alces nesta história serem desenvolvedores não incomoda ninguém.

A conclusão é simples: sem uma abordagem normal do DevOps como tal, não há muito disso.
A principal coisa a lembrar: o engenheiro do DevOps não é um mágico e, sem comunicações de alta qualidade e interação bidirecional com o desenvolvimento, ele não será capaz de lidar com suas tarefas. Devops não podem ficar sozinhos com seus “problemas” ou receber o comando “não vá para desenvolvedores, codifique seus negócios” e espere que, em um momento crítico, tudo funcione como deveria. Então isso não funciona.

Essencialmente, os DevOps são competências na fronteira entre gerenciamento e tecnologia. Além disso, está longe de ser óbvio que nesse coquetel de tecnologias deveria haver mais do que gerenciamento. Se você realmente deseja criar processos de desenvolvimento mais rápidos e eficientes, deve confiar em seus desenvolvedores. Ele conhece as ferramentas certas, implementou projetos semelhantes, sabe como fazê-lo. Ajude-o, ouça seus conselhos, não tente se isolar em alguma unidade autônoma. Se os administradores puderem trabalhar sozinhos, os devops serão inúteis nesse caso; eles não poderão ajudá-lo a melhorar, se você não quiser aceitar essa ajuda.

E a última coisa: pare de ofender os administradores de infraestrutura. Eles têm seu próprio campo de trabalho extremamente importante. Sim, o administrador pode se tornar um engenheiro do DevOps, mas isso deve acontecer a pedido da própria pessoa, e não por baixo do bastão. E não há nada de errado com o fato de um administrador de sistema querer continuar sendo um administrador de sistema - essa é sua profissão separada e seu direito. Se existe um desejo de sofrer uma transformação profissional, não devemos, em caso algum, esquecer que será necessário desenvolver não apenas habilidades tecnológicas, mas também habilidades gerenciais. É mais provável que você, como líder, tenha que reunir todas essas pessoas e aprender a se comunicar em um idioma.

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


All Articles