fernando antonio venco teixeira da cunha gestÃo da

60
FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA INFRAESTRUTURA COMO SERVIÇO ATRAVÉS DAS FERRAMENTAS DE GERENCIAMENTO DE CONFIGURAÇÃO E MONITORAMENTO Trabalho de Conclusão de Curso apresentado ao curso MBA em Gestão da Tecnologia da Informação, de Pós- Graduação lato sensu, Nível de Especialização, da FGV/IDE como pré- requisito para a obtenção do título de Especialista. Orientador: Dr. Arnaldo Lyrio Barreto RIO DE JANEIRO – RJ 2018

Upload: others

Post on 07-Jul-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA

GESTÃO DA INFRAESTRUTURA COMO SERVIÇO ATRAVÉS DAS

FERRAMENTAS DE GERENCIAMENTO DE CONFIGURAÇÃO E

MONITORAMENTO

Trabalho de Conclusão de Curso apresentado ao curso MBA em Gestão da Tecnologia da Informação, de Pós-Graduação lato sensu, Nível de Especialização, da FGV/IDE como pré-requisito para a obtenção do título de Especialista.

Orientador: Dr. Arnaldo Lyrio Barreto

RIO DE JANEIRO – RJ

2018

Page 2: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

FUNDAÇÃO GETULIO VARGAS

PROGRAMA FGV MANAGEMENT

MBA EM GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

O Trabalho de Conclusão de Curso Gestão da infraestrutura como serviço através das

ferramentas de monitoramento e gerenciamento de configuração elaborado por Fernando

Antonio Venco Teixeira da Cunha e aprovado pela Coordenação Acadêmica do curso de

MBA em Gestão da Tecnologia da Informação, foi aceito como requisito parcial para a

obtenção do certificado do curso de pós-graduação, nível de especialização do Programa FGV

Management.

Rio de Janeiro, 02 de dezembro de 2018.

_________________________________________________ André Barcaui

Coordenador Acadêmico Executivo

_________________________________________________ Arnaldo Lyrio Barreto

Prof. Orientador

Page 3: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

TERMO DE COMPROMISSO

O aluno Fernando Antonio Venco Teixeira da Cunha, abaixo assinado, do curso de MBA em

Gestão da Tecnologia da Informação, Turma GETI-14 do Programa FGV Management,

realizado nas dependências da FGV Botafogo no período de novembro de 2016 a agosto de

2018, declara que o conteúdo do Trabalho de Conclusão de Curso intitulado Gestão da

infraestrutura como serviço através das ferramentas de monitoramento e gerenciamento de

configuração é autêntico, original e de sua autoria exclusiva.

Rio de Janeiro, 02 de dezembro de 2018.

_____________________________________________________

FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA

Page 4: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

Aоs meus pais, irmãos, minha esposa Chantala Ayres da Cunha que, cоm muito carinho е apoio, nãо mediram esforços para qυе еu chegasse аté esta etapa dе minha vida.

Page 5: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

AGRADECIMENTOS

Agradeço a minha esposa, Chantala Ayres da Cunha por todo o apoio e carinho que

me fazem permanecer forte rumo a meus objetivos, ao meu querido e amado irmão Gabriel

Severo Venco Teixeira da Cunha pelo incentivo e apoio.

Aos queridos amigos da turma GETI 14, pelo companheirismo e paciência nessa longa

jornada e ao orientador Arnaldo Lyrio, pelo apoio na construção deste trabalho.

Page 6: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

RESUMO

É perceptível o aumento que vem ocorrendo no decorrer dos últimos anos em relação a

serviços de cloud computing fornecidos pelos grandes players como Microsoft Azure,

Amazon e Google. Isso porque é uma tendência das empresas utilizarem cada vez mais

serviços na nuvem, abstraindo a responsabilidade da empresa no que não é seu core business.

Identifica-se que as empresas inicialmente tendem a migrar para um ambiente de nuvem IaaS

pela facilidade de migração e adaptação. Elas buscam tecnologias para reduzir o custo com

infraestrutura local e também pagar somente pelo serviço que utilizarem. Ainda, a nuvem

possui outras vantagens como flexibilidade, escalabilidade, agilidade, acesso à tecnologia de

ponta, software como serviço, entre outros. A gestão da tecnologia da informação, juntamente

com a cultura DevOps, são um ponto fundamental para obter os resultados desejados para as

empresas. As boas práticas apoiam toda a estrutura operacional que o fornecedor necessita

para garantir a integridade do ambiente, a segurança da infraestrutura, o desempenho do

sistema, a automatização de tarefas manuais etc. O trabalho consiste na apresentação e

comparação de três ferramentas para gerenciamento de configuração, quais sejam o Puppet,

um utilitário de código livre, e outras duas consolidadas no mercado, Ansible e Chef. Em

seguida são descritas outras três ferramentas para o monitoramento de rede: Zabbix, que

oferece uma interface 100% Web e é uma das ferramentas mais completas do mercado,

Nagios e CACTI. Tanto na gestão de configuração quanto na área de monitoramento de rede

identificam-se diversas ferramentas que atendem aos objetivos da gestão da infraestrutura.

Dessa forma, compreenda-se que este estudo não se propõe a apontar um software vencedor,

mas destacar as ferramentas mais utilizados no mercado e, a partir desses dados, apoiar e

auxiliar na decisão do pesquisador sobre qual ferramenta é a mais ideal para cada cenário.

Palavras-chave: Cloud Computing. Gestão da Tecnologia da Informação. IaaS. Puppet.

Ansible. Chef. Zabbix. Nagios. CACTI.

Page 7: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

ABSTRACT

It is noticeable the increase that has been occurring in recent years in relation to cloud

computing services provided by major players such as Microsoft Azure, Amazon and Google.

This is because it is a tendency of companies to use more and more services in the cloud,

abstracting the responsibility of the company from what is not its core business. It is identified

that enterprises initially tend to migrate to an IaaS cloud environment for ease of migration

and adaptation. They are looking for technologies to reduce the cost with local infrastructure

and to pay only for the service they use. In addition, the cloud has other advantages such as

flexibility, scalability, agility, access to state-of-the-art technology, software as a service, and

more. The management of information technology, along with the DevOps culture, are a key

point to get the desired results for companies. Good practices support the entire operational

structure that the provider needs to ensure the integrity of the environment, infrastructure

security, system performance, automation of manual tasks, and so on. The work consists of

the presentation and comparison of three tools for configuration management, such as Puppet,

a free code utility, and other two consolidated in the market, Ansible and Chef. Following are

three other tools for network monitoring: Zabbix, which offers a 100% Web interface and is

one of the most complete tools on the market, Nagios and CACTI. In configuration

management as well as in the area of network monitoring, several tools can be identified and

that meet the objectives of infrastructure management. In this way, it is understood that this

study does not intend to point out a winning software, but to highlight most used the tools in

the market and, based on these data, to support and assist in the researcher's decision on which

tool is the most ideal for each scenario.

Keywords: Cloud Computing. Information Technology Management. IaaS. Puppet. Ansible.

Chef. Zabbix. Nagios. CACTI.

Page 8: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

LISTA DE FIGURAS

Figura 1 – Timeline cloud technology ...................................................................................... 13

Figura 2 – Serviços Cloud Computing ..................................................................................... 16

Figura 3 – Comparação entre On-Premises e Cloud Computing. ............................................ 18

Figura 4 – Hypervisor. .............................................................................................................. 19

Figura 5 – Serviço PaaS ........................................................................................................... 20

Figura 6 – Nuvem híbrida ......................................................................................................... 24

Figura 7 – Funcionamento da Nuvem Comunitária ................................................................. 25

Figura 8 – Delimitação usual do controle dos recursos por modelo de serviço ....................... 28

Figura 9 – Cultura DevOps ....................................................................................................... 31

Figura 10 - Puppet .................................................................................................................... 35

Figura 11 Arquitetura da ferramenta Chef ............................................................................... 37

Figura 12 – Arquitetura da ferramenta Ansible ........................................................................ 38

Figura 13 - Módulos ................................................................................................................. 39

Figura 14 - Estrutura do Nagios ............................................................................................... 42

Figura 15 – Dashboard Nagios ................................................................................................. 43

Figura 16 – Dashboard Zabbix. ................................................................................................ 45

Figura 17 – Dashboard Cacti .................................................................................................... 47

Figura 18 – Comparação entre ferramentas .............................................................................. 51

Page 9: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

LISTA DE SIGLAS

Arpanet – Advanced Research and Projects Agency

AWS – Amazon Web Services

IaaS – Infrastructure as a Service

IaC – Infrastructure as Code

MIB – Management Information Base

MS-DOS – Microsoft Disk Operating System

MIT – Massachusetts Institute of Technology

NIST – National Institute of Standards and Technology

PaaS – Platform as a Service

SaaS – Software como serviço

SSH – Secure Shell

SNMP – Simple Network Management Protocol

HTTPS – Hyper Text Transfer Protocol Secure

VM – Virtual Machine

Page 10: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

SUMÁRIO

1 INTRODUÇÃO ........................................................................................................ 10

2 HISTÓRIA COMPUTAÇÃO EM NUVEM .......................................................... 12

2.1 CONSIDERAÇÕES INICIAIS .................................................................................. 12

2.2 COMPUTAÇÃO EM NUVEM ................................................................................. 14

2.3 SERVIÇOS DA COMPUTAÇÃO EM NUVEM ...................................................... 16

2.3.1 On Premises .............................................................................................................. 17

2.3.2 IaaS ............................................................................................................................ 18

2.3.3 PaaS ........................................................................................................................... 19

2.3.4 SaaS............................................................................................................................ 21

2.4 MODELOS DE IMPLANTAÇÃO ............................................................................ 22

2.4.1 Nuvem privada ......................................................................................................... 22

2.4.2 Nuvem Pública .......................................................................................................... 23

2.4.3 Nuvem Híbrida ......................................................................................................... 23

2.4.4 Nuvem Comunitária ................................................................................................. 24

3 GESTÃO DA TECNOLOGIA DA INFORMAÇÃO ............................................ 26

3.1 SEGURANÇA EM NUVEM ..................................................................................... 27

3.2 A IMPORTÂNCIA DA GESTÃO DO IAAS ............................................................ 29

4 DEVOPS .................................................................................................................... 30

4.1 INFRAESTRUTURA COMO CÓDIGO ................................................................... 32

4.2 GERENCIAMENTO DE CONFIGURAÇÃO .......................................................... 33

4.2.1 Puppet ........................................................................................................................ 33

4.2.2 Chef ............................................................................................................................ 35

4.2.3 Ansible ....................................................................................................................... 37

4.2.4 Comparação entre Puppet, Ansible e Chef ............................................................ 38

4.3 FERRAMENTAS DE MONITORAMENTO DE REDE .......................................... 40

4.3.1 Nagios ........................................................................................................................ 41

4.3.2 Zabbix ........................................................................................................................ 43

4.3.2.1 Servidor .................................................................................................................... 44

4.3.2.2 Banco de armazenamento ......................................................................................... 44

4.3.2.3 Interface Web ........................................................................................................... 44

4.3.2.4 Proxy ......................................................................................................................... 44

4.3.2.5 Agente ....................................................................................................................... 44

4.3.2.6 Fluxo de Dados ......................................................................................................... 45

4.3.3 Cacti ........................................................................................................................... 46

4.4 COMPARAÇÃO ENTRE AS FERRAMENTAS ..................................................... 48

4.4.1 Cacti ........................................................................................................................... 48

4.4.2 Nagios ........................................................................................................................ 48

4.4.3 Zabbix ........................................................................................................................ 49

5 CONCLUSÃO .......................................................................................................... 52

REFERÊNCIAS ..................................................................................................................... 53

Page 11: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

10

1 INTRODUÇÃO

A computação em nuvem é uma quebra de paradigma, uma alteração na forma de

entrega dos serviços computacionais. Não se faz mais necessário adquirir todos os recursos

para disponibilizar um serviço e ainda possui a vantagem de pagar somente pelo que se

utiliza. No entanto, não é somente a questão financeira que vem gerando a adoção ou

migração dos serviços on-premises para computação em nuvem. Questões envolvendo

confiabilidade, desempenho, disponibilidade e acessibilidade através de multiplataformas

também são fatores que são avaliados. Por esses motivos, muitas empresas têm optado por

algum tipo de serviço de computação em nuvem.

Segundo Grava (apud DINO, 2017), no que diz respeito à computação em nuvem, essa

ferramenta veio para “[...] ficar por muito tempo, os empresários sabem que se trata de uma

tecnologia modernizadora, capaz de otimizar processos, reduzir custos e flexibilizar a

estrutura e a escalabilidade, beneficiando de fato as empresas que utilizam o Cloud

Computing.”

Ainda, dentro da computação em nuvem, vamos apresentar os três principais tipos

disponíveis. São eles: a IaaS – Infrastructure as a Service; PaaS – Platform as a Service; e

SaaS – Software as a Service. Para este trabalho, o tipo IaaS encontra-se mais adequado para

o estudo, visto que o IaaS está entre os principais tipos de migrações das organizações pela

agilidade, compatibilidade e similaridade do ambiente local com a nuvem.

De acordo com Gartner (apud DINO, 2017), “[o] segmento de maior crescimento do

mercado é o de serviços de infraestrutura de sistemas em nuvem (infraestrutura como serviço

- IaaS), que deve crescer 35,9% em 2018 e alcançar US$ 40,8 bilhões.”

Serão abordados dois temas relevantes, sendo o primeiro sobre a Gestão da Tecnologia

da Informação, apresentando a importância do tema e suas atribuições e, o segundo, o termo

DevOps. De acordo com uma pesquisa feita pela Forrester, 50% das organizações estão

implementando a cultura DevOps, de maneira a apoiar o gerenciamento de configuração e

monitoramento da rede (STROUD, 2017).

Com a compreensão dos tópicos citados, aborda-se o Ciclo DevOps, que possui duas

áreas importantes para o estudo: a de gerenciamento de configuração e do monitoramento. Em

sequência, detalham-se três ferramentas para gerenciamento de configuração, quais sejam

Puppet, Ansible e Chef. A outra vertente é o monitoramento, essencial para controle e

Page 12: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

11

previsibilidade do ambiente. Para isso, abordam-se três ferramentas: Zabbix, Nagios e Cacti.

Essas estão entre as ferramentas mais recomendadas.

Diante das questões analisadas, é visível o aumento da adoção dos serviços da

computação em nuvem. Com esse aumento é necessário que os provedores desse tipo de

serviço estejam preparados para garantir a segurança, configuração e integridade dos

ambientes. Isso, sem que afete a disponibilidade dos serviços e promova as alterações

necessárias.

Para que isso seja realizado, a área de infraestrutura e a cultura DevOps trabalham

juntas e devem levantar questões sobre como atender essa demanda de uma forma ágil e

segura. Como é possível gerenciar o ambiente do cliente de forma automatizada? Como

podemos nos precaver de problemas com o monitoramento e através de quais ferramentas?

Como manter a homogeneidade no ambiente?

Uma das ramificações da cultura DevOps é o gerenciamento de configuração e

monitoramento. O objetivo é apresentar quais ferramentas podemos utilizar a nosso favor para

controlar nosso ambiente de forma saudável e antecipando-se aos problemas.

Cada vez mais as empresas estão em busca de foco no seu core business1, otimização

de processos e redução de custos. Para isso é necessária a utilização de tecnologia, a qual

muitas vezes é um meio para um fim. É perceptível o quanto a migração ou utilização de

serviços de computação em nuvem vêm tomando espaço no mercado. Dessa maneira, os

provedores de serviços de tecnologia necessitam estar preparados para garantir a segurança e

qualidade do ambiente. Busca-se, dessa forma, apresentar neste trabalho científico os

conceitos, definições e realizar a comparação entre as ferramentas, com o principal objetivo

de poder apoiar na decisão entre as ferramentas apresentadas, destacando também a

importância da gestão de TI em conjunto com a cultura DevOps.

1computação em nuvem (em inglês, cloud computing) refere-se à utilização da memória e da capacidade de armazenamento e cálculo de computadores e servidores Core business significa a parte principal de um determinado negócio, é o ponto forte de uma empresa que deve ser trabalhado estrategicamente

Page 13: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

12

2 HISTÓRIA COMPUTAÇÃO EM NUVEM

2.1 CONSIDERAÇÕES INICIAIS

Este capítulo tem por objetivo explicar um pouco da história da Cloud Computing e

seus grandes marcos, seguido dos conceitos relacionados, serviços e formas de implantação

que estão disponíveis para utilização. Ainda, quais os grandes players do mercado, dando

sequência na Classificação dos serviços que são oferecidos atualmente.

A computação em nuvem, apesar de ter sua notoriedade destacada nos últimos anos,

não é uma tecnologia recente. Em 1960 já era exposta uma ideia similar ao conceito atual de

Cloud Computing por dois grandes especialistas na área, John McCarthy e Joseph Carl

Robnett Licklider. O americano John McCarthy acreditava na possibilidade de oferecer a

computação como um serviço público da mesma forma como é cobrada a luz e a água, nas

quais se paga pelo que se usa. Outro aspecto estudado por ele foi o uso compartilhado do

computador em paralelo, com mais de um usuário. Essas ideias foram apresentadas em um

discurso realizado no Massachusetts Institute of Technology (MIT) nos EUA em 1961, de

modo que ele a definiu por intermédio do termo Utility Computing. Em 1962 o físico Joseph

Carl Robnett Licklider encontrou uma forma das pessoas poderem compartilhar os dados de

forma global e, com isso, criou a rede Arpanet (Advanced Research and Projects Agency). O

principal objetivo era unir as bases militares com os departamentos de pesquisa do governo

americano. Ambos são considerados grandes pioneiros da computação em nuvem, mas as

ideias de John McCarthy e Joseph Carl ficaram em stand by por um longo período. A partir

do momento que a tecnologia passou a ficar acessível para a população em 1997, o termo

computação em nuvem foi utilizado pela primeira vez pelo professor de sistema de

informação Ramnath Chellappa em uma palestra acadêmica. Em 1999, a empresa americana

Salesforce ficou conhecida por ser a primeira empresa a disponibilizar aplicações

empresariais pela web (IPM SISTEMAS, 2017).

Nessa década tem início um período revolucionário na computação, especulações

ganharam força nos anos 2000 e vários desenvolvedores começaram a criar seus sistemas com

o conceito de nuvem. A Cloud Computing começou a ter mais força e passou a ser oferecida

comercialmente. Após 2 anos, em 2002, a Amazon lançou diversos serviços que incluíam

armazenamento, computação e inteligência humana, tudo fundamentado em nuvem. Anos

depois a empresa ofereceu o primeiro serviço de infraestrutura de computação em nuvem, o

EC2/S3 com maior acessibilidade. Em 2008 a Google App Engine lançou seu serviço baseado

Page 14: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

13

na nuvem, com custos baixos e completo de inovações. No ano posterior a Microsoft Azure

lança sua plataforma especial para execução de aplicativos e serviços, também utilizando os

conceitos de computação em nuvem. (IPM SISTEMAS, 2017).

Conforme a Figura 1, podemos ver a timeline dos grandes marcos da evolução da

Cloud Computing:

Figura 1 – Timeline cloud technology

Fonte: Daconta (2014).

Dessa forma, podemos constatar que a computação em nuvem não é um conceito

recente e que já existe a um longo tempo. Contudo, no momento em que essa ideia surgiu a

infraestrutura/tecnologia não estava desenvolvida o suficiente para atender as necessidades

específicas que possui, diferentemente do que observamos hoje. O grande passo dado em

1999 pela empresa Salesforce com seu sistema voltado às necessidades dos clientes, quebrou

o paradigma de um mercado engessado pela venda de licenças de softwares (DANTAS,

2015).

Atualmente, a utilização da nuvem toma cada vez mais espaço dentro das empresas.

Conforme pesquisa realizada, 75% das empresas disseram que já utilizam algum tipo de

serviço em cloud computing. E, de acordo com o Gartner, os investimentos das empresas

brasileiras em cloud devem chegar a US$4,5 bilhões em 2017 e até 2020 cerca de US$20

bilhões (MEJÍAS, 2016).

Page 15: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

14

O que era tendência em migrar para nuvem se tornou quase uma necessidade, em

razão do fato de o mundo estar cada vez mais digital e exigir produtos que estejam

interligados via internet, com rapidez instantânea, qualidade e preços competitivos. Conforme

Julio Mejías (2016) “é indiscutível que em qualquer empresa a tecnologia se tornou a base da

sua operação, da produção e do atendimento aos seus clientes.” Dessa forma surge a

Computação em Nuvem, tema que será abordado no capítulo seguinte.

2.2 COMPUTAÇÃO EM NUVEM

Atualmente, serviços básicos e essenciais como água, luz e gás são entregues à

sociedade de forma transparente, apenas se paga pelo que foi utilizado. Esse tipo de

fornecimento é possível porque a infraestrutura existente permite entregar os serviços em

diversos lugares e a qualquer hora, de forma que seja possível simplesmente acender a luz, ou

abrir a torneira para que o serviço seja disponibilizado. E para cada tipo de serviço é feita uma

cobrança diferente, de acordo com a política aplicada. A ideia na área da informática e dentro

do contexto Cloud Computing é basicamente o mesmo, disponível sempre que necessário e

pago pelo que se utiliza.

A Cloud Computing é uma mudança de paradigma na forma como o serviço

computacional é disponibilizado e também como os serviços de Tecnologia da Informação

estão sendo criados, desenvolvidos e até comercializados (VIGGIANI; VELLASCO, 2014).

Grandes corporações como Amazon, VMware, Microsoft e Google já oferecem serviços de

computação em nuvem frequentemente utilizados, tais como o Gmail, Onedrive e o Youtube.

Além desses, há também o Office365 e o Google Docs, que permitem a edição de arquivos de

texto, elaboração de slides e planilhas eletrônicas, de maneira que os documentos podem ser

acessados em qualquer lugar do mundo e a qualquer hora (TAURION, 2009 apud PEREIRA

et al., 2016, p. 15).

Cada vez mais percebe-se um aumento de novos serviços para o mercado, com

fornecedores demostrando características e vantagens com seus novos produtos. Isso gera

grandes desafios para o setor de TI, principalmente pela complexidade de manutenção e com

o gerenciamento da infraestrutura que necessita ser cada vez mais eficiente e com menos

custos. O maior proveito da computação em nuvem é que outra empresa irá ser responsável

por manter sua aplicação no ar, sem que a empresa precise se preocuprar com questões de

Hardware ou Software. Toda a infraesturua necessária é disponibilizada pelo fornecedor e a

Page 16: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

15

empresa pode focar em seu Core bussiness. O serviço de Cloud Computing tem evoluído

constantemente e as empresas buscam cada vez mais serviços que possam ser integrados à

empresa, com objetivo de redução de custo ou melhoria nos processos (VELTE; VELTE;

ELSENPETER, 2012).

Visto isso, podemos abordar os conceitos sobre o que é computação em nuvem. Na

visão de Sousa et al. (2009) é um modelo de computação na qual temos uma rede interligada

de servidores2 físicos ou virtuais, ou recursos computacionais, disponibilizados na internet

como um serviço. De acordo com Vaquero et al (2008 apud BORGES et al, 2012, p.3)

nuvens são grandes repositórios de recursos virtualizados, tais como hardware, plataformas de desenvolvimento e software, que são facilmente acessíveis. Além disto, estes recursos podem ser configurados dinamicamente de modo a ajustar-se a diferentes cargas de trabalho com a intenção de otimizar sua utilização. O modelo de cobrança utilizado para a exploração destes repositórios está baseado em pagamento pelo uso.

A Computação em nuvem é uma forma muito eficiente no intuito de maximizar e

flexibilizar os recursos computacionais. Além disso, uma nuvem computacional é um

ambiente redundante e resiliente por natureza. Resiliente pode ser definido como a capacidade

de um sistema de informação continuar a funcionar corretamente, apesar do mau

funcionamento de um ou mais dos seus componentes (RUSCHEL; ZANOTTO; MOTA,

2010).

Por último, como definição de Cloud Computing temos o parecer 05/2012 relativo à

computação em nuvem do Grupo de Trabalho para a Proteção de dados instituído pelo artigo

29 da Diretiva 95/46/CE da União Européia (que trata sobre privacidade e proteção de dados):

A computação em nuvem consiste num conjunto de tecnologias e modelos de serviços centrados na utilização e fornecimento via Internet de aplicações informáticas, de capacidade de tratamento e armazenamento e de espaço de memória. A computação em nuvem pode gerar importantes benefícios económicos, uma vez que os recursos a pedido podem ser com bastante facilidade configurados, alargados e acedidos via Internet (VIGGIANI; VELLASCO, 2014).

Podemos entender computação em nuvem como um modelo computacional disponível

com intuito de abstrair questões de Hardware ou Software para o cliente e que procura utilizar

2 é um software ou computador, com sistema de computação centralizada que fornece serviços a uma rede de computadores

Page 17: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

16

os recursos de Hardware da melhor forma possível, com o objetivo de evitar desperdício e

agilizar ao máximo as plataformas de desenvolvimento de software ou para sua utilização.

Tem como base a resiliência, elasticidade, escalonamento, pay per use, acesssibilidade e

controle no custo de serviço.

2.3 SERVIÇOS DA COMPUTAÇÃO EM NUVEM

Podemos dividir a computação em nuvem em 3 classes, de modo que cada uma leva

em consideração a abstração do recurso que será fornecido. O nível de abstração pode ser

compreendido como a camada de arquitetura na qual os serviços superiores pode ser

compostos pelo serviços das camadas inferiores. As 3 classes de serviço são nomeadas da

seguinte forma: Infraestrutura como serviço (Iaas), Plataforma como Serviço (Paas) e

Software como serviço (PEDROSA, NOGUEIRA, 2018).

Na figura abaixo podemos ver como os serviços cloud computing são divididos. A

parte azul representa o que o cliente gerencia e a parte cinza é pelo que o fornecedor irá ser

responsável.

Figura 2 – Serviços Cloud Computing

Fonte: Stack24/7 (2015).

Para melhor compreensão do tema, em seguida iremos explicar cada conceito mais

detalhadamente.

Page 18: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

17

2.3.1 On Premises

On Premises é o mais tradicional e conhecido, onde a empresa compra o Hardware e

Software completos e é responsavel por ele, sendo que todo equipamento se encontra dentro

estrutura organizacional. Sobre a questão, observe-se:

Servidores on premises são hardwares físicos que ficam armazenados em uma sala de sua empresa, contam com controle de temperatura por ar-condicionado para evitar o superaquecimento, quase sempre requerem a utilização de um nobreak para prevenir quedas e picos repentinos de energia e exigem uma rotina de backup para precaver possíveis falhas ou avarias no dispositivo. Logo, a utilização desse tipo de tecnologia requer uma avaliação criteriosa sobre o servidor a ser comprado e todos os elementos periféricos necessários para processar, executar e suportar uma aplicação. Todos os itens que precisam ser adquiridos e mantidos por sua empresa precisam ser somados nesta conta (IPSENSE, 2017).

Um segundo conceito, porém mais simples, é de que “On Premises significa que uma

empresa mantém todo ambiente de TI no local e é responsável pela execução, manutenção e

suporte, bem como pelo backup e pela recuperação” (EBC GROUP, 2018). No modelo da

infraestrutura como serviço os recursos de hardware (capacidade de processamento,

armazenamento e comunicação de dados) são ofertados aos clientes em forma de serviço

oferecidos como serviço, de maneira que o fornecimento ocorre usualmente por intermédio de

máquinas virtuais (PEREIRA et al, 2016).

Fazendo uma comparação entre Cloud e On Premises dos serviços gerenciados,

observa-se que “[com] a cloud computing, muitos aplicativos, assim como arquivos e outros

dados relacionados, não precisam mais estar instalados ou armazenados no computador do

usuário ou em um servidor próximo” (WEBER, 2018). Dessa forma, quanto aos custos e

serviços, tem-se o seguinte:

Page 19: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

18

Figura 3 – Comparação entre On-Premises e Cloud Computing.

Fonte: Weber (2018).

2.3.2 IaaS

Referente ao modelo IaaS, ele é responsável por prover toda a infraestrutura necessária

para a PaaS e SaaS. O grande propósito do IaaS é ser acessível e de fácil fornecimento dos

recursos, como novos servidores, gerenciamento de disco, rede e outros recursos

computacionais necessários para obter o ambiente sob demanda, que será necessário para

suportar os sistemas operacionais e aplicativos.

Segundo Sousa (2009 apud Borges et al, 2012, p. 8), a finalidade principal é que se

torne fácil e acessível fornecer recursos que demandem servidores, redes, armazenamento,

além de outros necessários à construção de ambientes sob demanda, sejam sistemas

operacionais ou aplicativos. Dessa maneira, a infraestrutura pode ser escalada de forma

dinâmica para atender as necessidades específicas das aplicações, vez que está fundada na

virtualização dos recursos computacionais. Outra grande vantagem desse modelo é que:

[...] não há mais necessidade de investimento na compra dos equipamentos. Você utiliza o que é necessário segundo a demanda da empresa e paga de acordo com a utilização, isto é, a quantidade de dados que trafegam pela

Page 20: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

19

rede, o armazenamento de dados e arquivos, a utilização dos servidores etc. (EITI GESTÃO DE TI, 2016).

Para melhor compreensão do funcionamento do IaaS, a figura 4 demonstra como é

feita a divisão dos recursos entre as máquinas virtuais.

Figura 4 – Hypervisor.

Fonte: Batra (2015).

Algumas das vantagens de se trabalhar com IaaS são (BORGES et al, 2012, p. 9):

• A redução de investimentos em hardware, bem como a preocupação com a depreciação; • Eliminação de custos com segurança e manutenção; • Otimização do desempenho; • Liberação de espaço físico na empresa; • Flexibilidade para ampliar e reduzir a capacidade de processamento e/ou armazenamento.

2.3.3 PaaS

A plataforma como serviço (PaaS) é um ambiente mais focado no desenvolvimento e

implantação na nuvem. O usuário possui os recursos necessários através de uma provedora de

serviços de nuvem e o acesso é feito via internet. O PaaS comporta os recursos como

infraestrutura, servidores, armazenamento e rede, além de middleware, ferramentas de

desenvolvimento, serviços de business intelligence (BI) e sistemas de gerenciamento de banco

de dados. “A plataforma como serviço dá suporte ao ciclo de vida do aplicativo incluindo

compilação, teste, implantação, gerenciamento e atualização” (RESOURCE IT SOLUTIONS,

2018).

Page 21: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

20

O terceiro modelo Plataforma como Serviço (PaaS) fornece os recursos necessários e o

ambiente para permitir aos desenvolvedores a elaboração e aperfeiçoamento dos aplicativos a

partir da internet, onde serão disponibilizados e executados (SANTOS, 2012).

O PaaS, de acordo com, “[é] a camada intermediária do modelo conceitual sendo

composta por hardware virtual disponibilizado como serviço. Oferece tipos específicos de

serviços como sistemas operacionais, banco de dados, serviços de mensagens, serviços de

armazenamento de dados e etc.” (BORGES et al, 2012, p. 9).

Ainda, “[nesse] ambiente, o desenvolvedor não necessita se preocupar com o hardware

sobre o qual está desenvolvendo e executando suas aplicações, terceirizando os serviços de

desempenho necessários para rodar tais aplicações” (LECHETA, 2015; CHARD et al., 2016

apud PEREIRA et al, 2016, p. 17). Como exemplo de PaaS pode-se citar a Google App

Engine e Aneka (VECCHIOLA et al, 2009 apud BORGES et al, 2012, p. 9). O Facebook

também pode ser citado como exemplo de PaaS, pois desenvolvedores tem a possibilidade de

criar aplicativos específicos para a plataforma e deixá-los disponíveis os usuários (tais como

jogos) (VIGGIANI; VELLASCO, 2014, p. 7).

Figura 5 – Serviço PaaS

Fonte: (PEREIRA et al, 2016, p. 16)

Vantagens do PaaS (EITI GESTÃO DE TI, 2016):

• Altíssimo nível de programação, com baixa complexidade. • Possibilidade de desenvolvimento descentralizado (próprio e de terceiros), dentro dos mesmos padrões de qualidade e segurança. • Baixo investimento inicial e/ou custo de capital. • Fornecedor único para todas as necessidades de desenvolvimento.

Page 22: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

21

2.3.4 SaaS

O software como serviço é usado para disponibilizar aplicativos através da internet.

Nessa forma as empresas que oferecem serviços de computação em nuvem hospedam e

encarregam-se dos aplicativos do usuário, tendo apenas o trabalho de se conectar pela internet

e utilizar o navegador, seja por telefone ou computador (OLIVEIRA, 2016). Nesse sentido,

outra abordagem é de que:

A capacidade fornecida ao consumidor é usar as aplicações do fornecedor que funcionam em uma infra-estrutura da nuvem. As aplicações são acessíveis dos vários dispositivos do cliente através de uma relação do thin client tal como um web browser. O consumidor não administra ou controla a infra-estrutura básica, incluindo nuvens de rede, servidores, sistemas operacionais, armazenamento, ou mesmo capacidades de aplicação individual, com a possível exceção de limitada aplicação específica e definições de configuração de utilizadores (CORREIA, 2011).

Outro conceito que se pode citar acerca de SaaS é o de que é:

A camada mais alta da arquitetura da computação na nuvem tem a responsabilidade de disponibilizar aplicações completas ao usuário final. Este acesso é provido pelos prestadores de serviço através de portais web, sendo completamente transparente ao usuário, o que permite a execução de programas que executam na nuvem a partir de uma máquina local. Para oferecer esta transparência, o SaaS utiliza-se das duas camadas inferiores, o PaaS e o IaaS (PEDROSA; NOGUEIRA, 2018, p. 2).

Vantagens do SaaS (EITI GESTÃO DE TI, 2016):

• Evita gasto de capital com software e recursos de desenvolvimento; • Risco de ROI reduzido; • Atualizações simplificadas e interativas; • Disponibilidade independente de fronteiras geográficas; • Gestão e segurança centralizados; • Menor investimento com infraestrutura e equipes; • Facilidade de adoção por todas as equipes.

O modelo Saas é uma forma de distribuição de software ou serviço no qual a aplicação

é hospedada no fornecedor e fica disponível pela rede aos usuários, sendo que a

responsabilidade de updates, gerenciamento da aplicação, base de dados e do

desenvolvimento é toda do fornecedor. O pagamento pode ser feito anual ou mensalmente,

sendo que normalmente está incluída a licença de software, suporte e outras taxas (BATRA,

2015).

Page 23: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

22

Exemplos de SaaS: Google Apps, Dropbox, Salesforce, Cisco WebEx, Concur e

GoToMeeting.

2.4 MODELOS DE IMPLANTAÇÃO

No que se refere à disponibilidade de ambientes de computação em nuvem, temos os

tipos de modelos de implantação. O controle e o acesso dependem de cada negócio, do tipo de

informação e do nível de visão. É perceptível que certas empresas não pretendem

disponibilizar determinados acessos ou recursos do seu ambiente de computação em nuvem.

Dessa maneira, temos a necessidade de ambientes mais restritos, nos quais alguns usuários

podem utilizar determinados recursos ou serviços somente através da autorização. Os modelos

disponíveis na computação em nuvem podem ser divididos em nuvem pública, privada,

comunidade e híbrida (MOREIRA; SOUSA; MACHADO, 2009).

De acordo com a NIST - National Institute of Standards and Technology - temos

quatro meios de implantação de cloud computing: a) Nuvem privada; b) Nuvem pública; c)

Nuvem híbrida; e, d) Nuvem Comunitária (UNITED STATES DEPARTMENT OF

COMMERCE, 2011).

2.4.1 Nuvem privada

Cloud privada: A infraestrutura é fornecida exclusivamente para uma única

organização, composta por diversos clientes. Pode ser de propriedade, gerenciado e operado

pela organização, por terceiros ou uma combinação de ambos.

De acordo com Taurion (2009 apud BORGES et al, 2012, p. 11), as nuvens privadas

diferenciam-se das demais pois há restrição de acesso, vez que se encontram protegidas pelo

firewall das empresas. Assim, essas aderem à tecnologia e são beneficiadas por suas

vantagens, mas conseguem manter o controle do nível de serviço e sob as regras de segurança

da instituição.

Nesse modelo de implantação as políticas de acesso são mais restritivas, aumentando a

segurança e privacidade da organização, o que gera maior interesse em adotá-lo. Outra

vantagem é que o dimensionamento é mais assertivo em relação às necessidades da

companhia, especialmente no que diz respeito às empresas de grande porte.

Page 24: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

23

2.4.2 Nuvem Pública

De acordo com NIST, nesse modelo a infraestrutura é disponível para o uso aberto do

público em geral. A infraestrutura tem recursos compartilhados, padronizados e com

autoatendimento pela internet. “Pode pertencer, ser mantida e operada por uma empresa, uma

organização governamental ou mesmo acadêmica, ou uma combinação delas” (VIGGIANI;

VELLASCO, 2014, p. 9).

As nuvens públicas são aquelas executadas por terceiros. As aplicações são utilizadas

por diversos usuários ou empresas, ficam misturadas nos sistemas de armazenamento. A

nuvem pública avalia questões como desempenho e segurança. O fato de outras aplicações

rodarem no mesmo ambiente é transparente, tanto para o usuário quanto para o prestador de

serviço (RUSCHEL; ZANOTTO; MOTA, 2010, p. 9).

A nuvem pública é o modelo padrão de cloud computing, na qual o prestador de

serviço oferece os recursos como aplicativos, tais como armazenamento para o público em

geral através da Web. É comum alguns serviços serem gratuitos ou oferecidos em um modelo

pay-per-usage (pague pela utilização).

2.4.3 Nuvem Híbrida

A nuvem híbrida, como o próprio nome sugere, é composta por uma ou mais nuvens,

de modo que elas podem ser privadas, de comunidade ou públicas e que permanecem como

uma entidade única, mas ligada por uma tecnologia padronizada ou que habilita dados e

portabilidade de aplicação. Busca-se fornecer aos clientes elementos de TI sem

complexidades, em que o provedor da nuvem é responsável pela instalação, gerenciamento,

disponibilização e manutenção.

Um ponto relevante é que esse modelo permite que uma nuvem privada consiga

ampliar seus recursos computacionais a partir de uma reserva de recursos na nuvem pública.

Essa característica possui a vantagem de manter os níveis de serviço, mesmo que haja

flutuações rápidas na necessidade dos recursos.

Nesse modelo de implantação a limitação de acessos não é aplicada. Quanto ao

gerenciamento de rede, a aplicação de técnicas de autenticação e autorização também não é

disponível. Na figura abaixo podemos entender melhor como é uma nuvem hibrida

Page 25: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

24

Figura 6 – Nuvem híbrida

Fonte: Thirawat (2014).

2.4.4 Nuvem Comunitária

No que diz respeito à infraestrutura de nuvem comunitária, inúmeras organizações

compartilham e suportam uma comunidade específica, com interesses e preocupações

coincidentes (tais como a missão, requisitos de segurança, políticas etc.). A administração

pode ser realizada por organizações ou terceiros, baseada no local ou remotamente.

(RUSCHEL; ZANOTTO; MOTA, 2010, p. 9).

Nesse mesmo sentido, conforme Cavalini (2018), a nuvem comunitária tem sua

infraestrutura compartilhada entre várias organizações que possuem interesses comuns

(segurança, jurisdição, conformidade etc.). Podem ser administradas internamente ou por

terceiros, com a opção de serem hospedadas interna ou externamente. Dessa maneira os

custos acabam distribuídos por uma quantidade menor de usuários se comparada à nuvem

pública, porém mais distribuída se considerada a nuvem privada. Nesse cenário, nem todos os

benefícios são realizados com efetividade.

A figura a seguir destaca o funcionamento da nuvem comunitária:

Page 26: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

25

Figura 7 – Funcionamento da Nuvem Comunitária

Fonte: Borges et al. (2012).

Page 27: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

26

3 GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

Com toda a evolução na área de sistemas de informação e com as empresas aderindo

ao Cloud Computing para o desenvolvimento das organizações como negócio, entendemos

que cada vez mais o investimento na área de TI é maior. De acordo com Figueredo e Cordeiro

(2016), “[investir] em TI é sinônimo de retorno positivo quando utilizada de forma eficaz e

eficiente nas organizações. Cabe às empresas gerir a Tecnologia da Informação para alavancar

os processos e obter benefícios a favor dos negócios da empresa.”

O fato de as organizações atenderem seus clientes de forma mais segura e on-time é

uma necessidade. Para que isso ocorra da melhor forma, é crucial que a gestão da tecnologia

seja feita utilizando-se processos e ferramentas que possam corresponder a essas demandas.

Nesse sentido, é importante destacarmos o conceito de gestão de Tecnologia da Informação.

Essa, de uma forma geral, pode ser definida como gerenciamento de software, hardware e

também de pessoas de uma empresa. O principal objetivo é a melhoria e otimização dos

processos e procedimentos que envolvem a área de TI (UNICESUMAR, 2018).

Sobre o tema, Nascimento (2018) afirma que “[gestão] da Tecnologia da Informação

ou simplesmente Gestão de TI é o conjunto de atividades, projetos e metodologias criadas

com recursos de computação ou não com a finalidade de alinhar a TI ou Tecnologia da

Informação às estratégias do negócio.”

No mesmo sentido, de acordo com Barbosa, Araújo e Torres (2011), a Gestão da

Tecnologia da Informação emprega “[...] uma série de modelos, metodologias, processos,

técnicas e ferramentas que vão ajudar a organização a alcançar seus objetivos estratégicos por

meio da tecnologia da informação. Portanto, ela vai além da informática e envolve pessoas,

processos e tecnologia.”

A gestão da tecnologia da informação sendo feita de forma precisa gera um retorno

adequado tanto para organização quanto para o cliente. As ferramentas detêm valores

indispensáveis no momento de planejar a estratégia em qualquer ambiente corporativo

(CORREA, 2018b).

De acordo com Correa (2018a), podemos dizer que a gestão de TI possui 4 atribuições

principais:

a) Manutenção do desempenho de serviços: deve-se proporcionar tomadas de

decisões ágeis e adequadas às necessidades do negócio, sem prejudicar a performance;

Page 28: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

27

b) Promover a transformação digital da empresa: é responsabilidade da área

de TI apresentar inovações que agreguem valor à empresa, de maneira a promover uma

transformação digital proativa, independente de solicitações externas. A TI, assim, mostra-se

comprometida com a melhoria do negócio;

c) Manter a satisfação dos usuários e clientes dos serviços: a área de TI

necessita manter um diálogo franco e aberto, de forma permanente, com as demais áreas que

usufruem dos serviços. Dessa forma, pode assegurar um atendimento adequado àqueles que

os contratam;

d) Fazer a gestão de equipe: manter e promover a capacitação contínua da

equipe de TI, de modo a assegurar que a equipe esteja preparada, capacitada e motivada.

A gestão de TI está correlacionada as rotinas do dia-a-dia da tecnologia da informação,

inclusive na parte operacional. O objetivo é entregar os melhores serviços, elevar o

desempenho do negócio e garantir a segurança das informações através de ações que possam

evitar algum tipo de acesso indevido. Para que isso aconteça é essencial que a TI esteja

sempre em busca de novas soluções e ferramentas para auxiliar nesse desafio. A área de TI

não é apenas uma área de apoio e sim uma ferramenta estratégica para os negócios. Para que a

TI consiga oferecer seus serviços de uma forma segura e automatizada, se faz necessário a

utilização de instrumentos que possam prover segurança, integridade e acompanhamento em

tempo real.

3.1 SEGURANÇA EM NUVEM

Uma das vantagens da computação em nuvem é que em seu modelo já estão

embutidos diversos recursos de segurança. Isso é exposto como um benefício, mas também

pode conter algumas características que são vistas como um problema. Sobre a questão é

necessário avaliar as responsabilidades da segurança dos serviços executados em nuvens

computacionais, de acordo com o tipo de serviço e recurso oferecidos. De qualquer maneira,

sempre teremos a responsabilidade do usuário e do provedor, nenhuma das partes é

desprovida de responsabilidade no que se refere à segurança (GONZALEZ et al., 2013, p. 30).

O desenvolvimento e implementação de aplicações em nuvem trouxe consigo a necessidade do desenvolvimento de técnicas para o tratamento seguro da maciça quantidade de recursos provenientes dos serviços prestados pelos provedores, tais como e-mails, desenvolvimento de aplicativos

Page 29: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

28

personalizados para os clientes, armazenamento de dados e gestão de infraestrutura (TAURION, 2009 apud PEREIRA et al, 2016, p. 19).

Conforme figura abaixo, cada modelo oferece a limitação dessas responsabilidades.

Podemos identificar que, mesmo em serviços do tipo SaaS, ainda há responsabilidade entre

usuários e provedor.

Figura 8 – Delimitação usual do controle dos recursos por modelo de serviço

Fonte: Computer Support Services Inc. (2015).

Vê-se que a responsabilidade no ambiente IaaS em relação aos recursos

computacionais como internet, processamento, rede e armazenamento é responsabilidade do

provedor. No entanto o gerenciamento dos recursos internos de cada servidor virtual é

responsabilidade do contratante. Sendo assim, a segurança é uma das grandes preocupações

que precisam estar sempre em primeiro lugar.

Page 30: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

29

3.2 A IMPORTÂNCIA DA GESTÃO DO IAAS

Neste capítulo vamos entender a importância de gerenciar um ambiente IaaS e quais

problemas podemos ter em relação ao mau gerenciamento.

Conforme podemos avaliar, o modelo IaaS é aderente a grande parte das empresas. O

IaaS pode ser utilizado para desenvolver soluções de TI acessíveis e facilmente escaláveis,

pois a estrutura complexa de interligação e as despesas com gerenciamento do hardware são

responsabilidades do provedor (MOREIRA, 2018). As empresas investem cada vez mais em

tecnologia, o que é uma tendência tratando-se de Cloud Computing. Consequentemente, é

necessário aumentar o gerenciamento no local em que essas informações estão armazenadas.

A indisponibilidade da informação ou serviço, mesmo que por pouco tempo, afeta o negócio e

a produtividade da equipe. Independentemente do tamanho da empresa, todas as organizações

sofrem com a falta de gerenciamento de TI (OLIVEIRA, 2015). Podemos destacar alguns

dados relacionados à gestão de infraestrutura (CAPITAL INFORMAÇÃO, 2010):

- Mais de 40% do tempo despendido na busca da resolução de problemas é gasto na análise e não na resolução (IDC); - 75% de um orçamento típico de TI é gasto em problemas de simples gerenciamento. (Forrester); - 75% de todos os PCs corporativos são infectados com algum tipo de malware. (Enterprise Networks & Servers).

Dessa forma elencam-se alguns problemas que podem surgir na falta da gestão da

infraestrutura como serviço:

• Ambiente Desatualizado

• Não ter conhecimento entre as integrações dos sistemas e infraestrutura

• Não conseguir mostrar os resultados em tempo real

• Acessos não autorizados

• Ambiente heterogêneo

• Servidores Lentos

• Equipe de TI despreparada

Page 31: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

30

4 DEVOPS

Para atender alguns dos elementos elencados no anterior, vamos buscar compreender a

cultura DevOps, seguido das ferramentas para uso na operação das áreas de Configure e

Monitore.

Em 2007, durante uma consultoria de migração de Data Center para o governo da

Bélgica, o administrador de sistemas Patrick Debois viu-se frustrado com os constantes

conflitos entre desenvolvedores e administradores de sistema. No ano posterior, na

conferência de Desenvolvimento Ágil em Toronto, o desenvolvedor de software Andrew

Shafer anunciou a sessão de Infraestrutura Ágil. Patrick se interessou e ambos conversaram e

formaram o grupo de Administração de Sistemas Ágil O’Reilly Velocity 09. John Allspaw e

Paul Hammond fizeram seu discurso intitulado “10+ Deploys a Day: Dev and Ops

Cooperation at Flickr”. Patrick aderiu à ideia e decidiu organizar um evento de Velocidade na

Bélgica, nomeado DevOpsDays é formada pela combinação de desenvolvimento (do inglês

Development) com operações (do inglês Operations) (SILVA, 2016).

De acordo com a Wikipedia:

O termo DevOps deriva da junção das palavras “desenvolvimento” (development) e “operações” (operations), sendo uma prática de engenharia de software que possui o intuito de unificar o desenvolvimento de software (Dev) e a operação de software (Ops). A característica principal do movimento DevOps é defender fortemente a automação e monitoramento em todas as fases da construção do software, da integração, teste, liberação para implantação e gerenciamento de infraestrutura. DevOps pretende fornecer, em ciclos de desenvolvimento menores, frequência de implantação aumentada, liberações mais seguras, em alinhamento próximo com os objetivos de negócio (DEVOPS, 2018).

DevOps é um termo usado para se referir a um conjunto de práticas que enfatizam a

colaboração e a comunicação entre Desenvolvedores e Operação de TI propriamente dita. Seu

objetivo é estabelecer uma cultura, onde a construção, os testes e as liberações ocorram de

forma rápida e confiável (RESENDE, 2018).

DevOps não é considerado um processo, tecnologia ou padrão, mas uma cultura que

tem por objetivo agilizar a comunicação, colaboração e integração entre desenvolvedores de

software e os profissionais de operações de TI. A imagem a seguir mostra que a Cultura

DevOps trabalha com a integração contínua, divididas em 7 fases:

Page 32: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

31

Figura 9 – Cultura DevOps

Fonte: Sempreupdate (2018).

Com relação às fases apresentadas na figura, temos que:

a) Plan: Planejar. Efetuar o levantamento dos requisitos e das necessidades da

Operação.

b) Create: Criar. Criar ou melhorar a solução em si.

c) Verify: Verificar. Efetuar testes da solução desenvolvida.

d) Package: Pacote. Após todos os testes, entregar o produto para a Operação,

inclusive com documentação e manuais de operação.

e) Release: Lançamento. A Operação recebe todas as informações da fase

anterior.

f) Configure: Configurar. Configurar e preparar o ambiente para implementar o

novo serviço em produção. Efetuar ajustes finos.

g) Monitor: Monitorar. Monitorar o comportamento do novo serviço, analisar

performance e reportar possíveis melhorias ou problemas para o Desenvolvimento.

Sua necessidade ficou em destaque com o surgimento e aplicação das Metodologias

Ágeis no trabalho das equipes de desenvolvimento, as quais tiveram um aumento na demanda

por deploys, que passaram a serem mais frequentes (entrega contínua). Isso acabou gerando

um gargalo na distribuição, sendo que a área de infraestrutura é responsável por essa entrega.

Com isso é perceptível como as equipes evoluem em ritmos diferentes e a ausência da

comunicação e contribuição entre elas é um fator fundamental. Com essa percepção de

Page 33: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

32

integração entre as áreas e times, o DevOps busca auxiliar no gerenciamento e lançamento de

novos produtos, através da automação dos processos e distribuição (SILVA; GOMES, 2016).

Conforme Cavalini (2017), metodologia ágil é “[...] uma nova forma de gestão e

desenvolvimento de software que usa uma abordagem de planejamento e execução interativa

e incremental voltado para processos empíricos [...].” A metodologia ágil é um conjunto de

práticas que buscam permitir, através de verificação e adaptação frequente, entregas rápidas,

com qualidade e alinhadas às necessidades do cliente e da empresa.

4.1 INFRAESTRUTURA COMO CÓDIGO

Denominada também de automação, pode ser considerada como a “[...] utilização de

scripts e ferramentas que permitem automatizar processos repetitivos e reduzem o acesso pelo

ser humano. Na Cultura DevOps tudo que é repetitivo é passível de automação.”

(SEMPREUPDATE, 2018). Uma das formas de garantirmos a segurança do ambiente com a

infraestrutura como código é assegurar que a configuração de uma aplicação/servidor, mesmo

que alterada por engano, seja resolvida através do gerenciador de configuração.

Utilizando a cultura DevOps em conjunto com a infraestrutura como código, essa

possui uma característica na implementação de melhores práticas de DevOps, no qual

desenvolvedores tornam-se mais envolvidos nas configurações de máquinas e times de

operações se envolvem mais cedo no processo de desenvolvimento. As ferramentas que

utilizam infraestrutura como código trazem visibilidade para o estado e configuração dos

servidores para os envolvidos, tornando sinérgica as relações entre as equipes (CARLOS;

BILJON, 2015).

A IaC (Infraestructure as Code) pode ser vista como “a entrega de uma infraestrutura

ágil, utilizando-se de codificação simples e objetiva, sem a necessidade mais de diversos

passos e processos para se preparar um ambiente, sem perder o poder de controle, segurança,

qualidade e disponibilidade” (CARLOS; BILJON, 2015).

O grande benefício da infraestrutura como código é facilitar a implementação de

integração contínua, pois permite a execução automática, isolada, concorrente de testes de

integração em ambientes idênticos a produção (RICARDO, 2016).

Para o cenário em questão é fundamental a utilização desse conceito juntamente com

as ferramentas que o compõem, visto adiante.

Page 34: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

33

4.2 GERENCIAMENTO DE CONFIGURAÇÃO

É um processo que busca garantir a consistência entre os ativos físicos e lógicos em

um ambiente operacional. Nesse processo busca-se identificar e rastrear itens individuais de

configuração, documentando capacidades funcionais e interdependências (ROCHA, 2018). O

objetivo de uma ferramenta de configuração é facilitar a rotina dos administradores dos

serviços e sistemas mantendo uma uniformidade no quesito de configuração

De acordo com Oliveira (2017) podemos ter os seguintes ganhos:

• Em caso de uma alteração indevida em um servidor automaticamente o gerenciador de configuração irá fazer a correção e poderá gerar um relatório do fato;

• Caso algum serviço que deveria estar ativo e ficou inativo, automaticamente o gerenciador de configuração irá subir este serviço, sem necessidade de acionamento para realização do mesmo;

• A instalação de qualquer serviço ou ferramenta (jboss, glassfish, jenkins, etc) será feita via gerencia de configuração e descrição do grupo de nós que devem ter aquele padrão, evitando instalação e manutenção manual;

• Maior controle do parque de máquinas (físicas ou VM’s) com SLA de atendimento e recuperação baixo;

• Resulta em equipes de alta performance realizando implementações com mais frequência e entregam projetos em prazos menores;

• Permite realizar alterações com menos erros e conserto de falhas mais rapidamente.

Hoje, existem diversas ferramentas de Gerenciamento de Configuração para

provisionar o ambiente de hospedagem da aplicação, cada uma com seus benefícios e

peculiaridades. As mais utilizadas são Puppet, Chef e Ansible (HUMBLE, 2014 apud

SILVA, 2016).

De acordo com Nexthink (2018), vamos abordar 3 ferramentas que oferecem essa

padronização: Ansible, Puppet e Chef.

4.2.1 Puppet

É uma ferramenta para gestão de configuração de código livre, produzido pela Puppet

Labs e fundada por Luke Kanies em 2005. Possui a capacidade de gerenciar servidores em

nuvens públicas, servidores físicos e servidores virtuais. Diversas organizações, incluindo

Google, Twitter, Oracle e Rackspace, utilizam o Puppet para gerenciar a infraestrutura. Ainda,

é compatível com Linux e Windows (PUPPET, 2017).

Page 35: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

34

O Puppet possui duas versões: Enterprise e Open Source. A versão Enterprise é paga e

possui uma interface web para visualização de relatórios e configurações de ambiente. Pode-

se gerenciar até 10 servidores gratuitamente. A versão Open Source é gratuita e não possui

limite de servidores a serem gerenciados, porém não tem uma versão gráfica oficial para

gerenciamento. No entanto, a comunidade desenvolveu ferramentas que possibilitam a

visualização de relatórios (PIRES, 2017).

A configuração é basicamente simples, sendo feita a instalação em um servidor

chamado Puppet Master que contém as configurações principais. Nos servidores clientes são

instalados o Puppet Agent. O Puppet utiliza um servidor que centraliza as configurações entre

os nós e agrupa esses nós conforme seu tipo. Cada agente Puppet é executado como um

daemon e permite aplicar mudanças.

O funcionamento do Puppet é geralmente (mas nem sempre) usado como

cliente/servidor3. O ciclo de operação nesses casos é o seguinte: 1. Os clientes (chamados de

nó, ou node) possuem um agente instalado que permanece em execução e se conecta a um

servidor central (chamado tipicamente de master), periodicamente (a cada 30 minutos, por

padrão). 2. O node solicita a sua configuração, que é compilada e enviada pelo master. 3. Essa

configuração "compilada" é chamada de catálogo. 4. O agente aplica o catálogo no node. 5. O

resultado da aplicação do catálogo é reportado ao master, havendo divergências ou não.

3 Cliente-servidor é uma estrutura de aplicação distribuída, que distribui as tarefas e cargas de trabalho entre os fornecedores de um recurso ou serviço, designados como servidores, e os requerentes dos serviços, designados como clientes

Page 36: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

35

Figura 10 - Puppet

Fonte: 8kmiles (2016).

Dessa forma realiza-se a gerência de configuração, automação de instalação de

pacotes, estabelece e garante normas e facilidade de auditoria (OLIVEIRA, 2017).

Importante, também, ressaltar algumas vantagens:

• Redução de custos de manutenção de computadores; • Diminuição do downtime de seu ambiente; • Maior facilidade e flexibilidade para implantar novas soluções com menor

trauma e consequentemente menor custo; • Maior facilidade e flexibilidade para distribuir configurações para todo o parque

de forma controlada (PUPPET VS. ANSIBLE, 2017).

4.2.2 Chef

Chef é uma ferramenta conhecida, utilizada no Gerenciamento de configuração criado

pela empresa de mesmo nome. É compatível e facilmente integrada à plataformas de

computação em nuvem, como Internap, Amazon EC2, Google Cloud Platform, OpenStack,

SoftLayer, Microsoft Azure e Rackspace, provendo e configurando servidores de forma

automatizada.

Em comparação com o Puppet o Chef é considerado mais fácil de se utilizar

especialmente por desenvolvedores, pois todas as instruções do Chef são escritas na

Page 37: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

36

linguagem Ruby, uma linguagem que os desenvolvedores estão acostumados a trabalhar.

Também possui uma versão open Source e outra comercial.

Os componentes do Chef fazem analogia aos componentes de uma cozinha: O

funcionamento do Chef é da seguinte forma: o usuário escreve as “recipes” (receitas) que

contém as informações de como o Chef deve gerenciar as aplicações, servidores e utilitários.

Essas “recipes” podem ser agrupadas em “cookbooks” (livros de receitas) e possuem a

descrição de uma série de recursos que devem estar em determinado estado. Esses recursos

podem ser pacotes, serviços ou mesmo arquivos.

No Chef, três componentes centrais interagem entre si: o servidor Chef (Chef Server),

os nós e a estação de trabalho Chef (Chef Workstation). O Chef executa os cookbooks, que

consistem em receitas que realizam ações automatizadas em nós, como por exemplo instalar e

configurar software ou adicionar arquivos. O servidor contém dados de configuração para

gerenciar diversos nós. Os arquivos e recursos de configuração armazenados no servidor Chef

são capturados pelos nós quando solicitados (SILVA, 2016).

Os administradores interagem com o servidor Chef através da linha de comando do

Chef. Os nós (nodes) podem ter uma ou mais funções (roles). Cada uma dessas funções

possui as configurações especificas do nó juntamente com as receita para aquele nó.

As receitas de um nó também são conhecidas como lista de execução e são executadas

conforme listadas.

Conforme figura abaixo, o administrador cria uma nova instância do servidor na

nuvem, nesse caso na AWS. Logo que a instância começa a ser executada, ele faz contato

com o servidor principal (Chef) e transfere o cliente Chef. Neste ponto, um handshake4

seguro ocorre, e o servidor Chef gera um certificado de segurança. A instancia nova criada irá

executar as receitas de configuração que o servidor enviar para ele. Dessa forma o estado do

servidor Chef é modificado (SILVA, 2016).

4 Handshake ou aperto de mão é o processo pelo qual duas máquinas afirmam uma a outra que a reconheceu e está pronta para iniciar a comunicação

Page 38: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

37

Figura 11 Arquitetura da ferramenta Chef

Fonte: Silva (2016).

4.2.3 Ansible

O Chef e o Puppet ganharam notoriedade no mundo do gerenciamento de

configuração, porém ambos apresentam alta complexidade para sua operacionalização. O

Ansible é um projeto open source, tem como objetivo atender ambientes complexos e em

nuvem em que há necessidade de gerenciamento de grupos de nós.

O Ansible é independente de linguagem de programação e utiliza o SSH para

comunicação, é de fácil instalação e é capaz de se integrar com qualquer linguagem com

suporte Json.

O software trabalha com o conceito de inventário (lista de máquinas que serão

gerenciadas), playbooks (comandos ou passo-a-passo a ser executado) e roles (modularização

do código). Possui uma linguagem própria baseada em YAML e Python. O Ansible pertence a

Red Hat. E é mais indicado para provisionamento de novas máquinas e configurações

temporais (SEMPREUPDATE, 2018).

Cria-se um playbook (código que vai executar alguma ação em um sistema

operacional) no servidor Ansible, depois informa-se uma lista de máquinas em que ele vai se

conectar para rodar aquele playbook. A VM que possui o Ansible instalador converte aquele

playbook em um código python e se conecta nas máquinas utilizando a rede para aplicá-lo.

Para que o script seja executado nas máquinas é necessário ter o python e as python-libs. A

Page 39: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

38

conexão é feita utilizando o protocolo SSH e depende disso para funcionar. Nesse caso, é

necessário verificar em cada VM se possui a liberação no firewall (CARVALHO, 2016).

Figura 12 – Arquitetura da ferramenta Ansible

Fonte: Costa (2013).

Destacam-se abaixo as vantagens do Ansible:

• Não adiciona dependências adicionais ao ambiente de trabalho; • Consistente; • Não requer agentes nas máquinas nós, apenas requer OpenSSH; • As playbooks do Ansible quando bem escritas podem ser idempotentes; • Os playbooks fazem uso de uma linguagem descritiva baseada em

templates YAML e Jinja.

4.2.4 Comparação entre Puppet, Ansible e Chef

Conforme vimos as ferramentas Puppet, Ansible e Chef atendem as questões de

gerenciamento de configuração, características padrões de implantação, configurar e gerenciar

servidores, gerenciar a configuração, provisionamento dinâmico e automatizado de ambientes.

O principal objetivo dessas ferramentas é tornar a configuração mais fácil e manter, centena

de servidores. Sendo que essas ferramentas também se aplicam para pequenas empresas,

Page 40: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

39

fornecendo a automatização e gerenciamento de forma mais simples. Conforme a revista

InfoWorld de 2013 foi feita uma pesquisa avaliando as características de escalabilidade,

disponibilidade, desempenho, valor aquisição, gestão e interoperabilidade e pontuação geral, e

cada fator pode ter nota entre zero e 10.

Figura 13 - Módulos

Fonte: Venezia (2013).

O Puppet é mais maduro e provavelmente o mais acessível dos 3 sistemas

comparados, porém é necessário um conhecimento de Ruby para ser gerenciado. É uma

ferramenta segura para ambiente heterogêneos, e possui um custo de U$120,00 dólares por

máquina por ano. Esse software atende a um cenário inteiro de data center abrangendo

praticamente todos os sistemas operacionais e oferece para os principais sistemas operacionais

mais funcionalidades. A versão Enterprise possui uma interface Web mais completa do grupo,

e permite em tempo real o gerenciamento dos servidores. Ainda possui relatórios bem

desenvolvidos, fornecendo informações profundas sobre como os agentes estão se

comportando e quais mudanças foram feitas. Conforme verificado as ferramentas Puppet e o

Chef terão maior atração para os desenvolvedores, e o Ansible mais focado nas necessidades

Page 41: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

40

dos administrares de sistemas. Uma das vantagens do Ansible é interface simples e a

usabilidade que se encaixam de acordo com a mentalidade do administrador de sistema, ainda

quando utilizado em sistema Linux e Unix o Ansible é rápido e facil de utilizar. Em relação

ao custo do Ansible é a partir de U$150,00 dólares por máquina por ano (EDUREKA!, 2017).

O Chef possui um layout bem desenhado e estável, e embora não esteja no mesmo

nível do Puppet em termos de recursos brutos, é uma solução muito capaz. Chef possui uma

curva de aprendizado mais difícil para administradores que não possuem familiaridade com

programação. Referente ao preço possui uma versão gratuita para iniciar, porém os preços

variam de entre U$ 72,00 e U$137 dólares por servidor por ano.

4.3 FERRAMENTAS DE MONITORAMENTO DE REDE

O monitoramento dos itens de rede é uma atividade importante na Cultura DevOps e,

assim, mantê-los operando corretamente através da verificação contínua e controle das

atividades. Alguns itens básicos como obter informações da rede, tratar estar informações

com objetivo de diagnóstico e identificar soluções dos problemas. Para isso, aplicações de

gerência devem estar anexadas nos componentes de uma rede, e que permitam descobrir,

prever e reagir a alterações. (DUARTE 1996)

É através do monitoramento que garantimos que o sistema ou servidor necessário

esteja em funcionamento, independentemente do tamanho da organização não é possível

ignorar os dispositivos de monitoramento. E atualmente temos disponível diversos softwares

de código aberto que permitem monitorar a infraestrutura e informar sobre qualquer falha.

De acordo com Stallings (1998 apud BLACK, 2008, p. 14) o gerenciamento e

monitoração de redes são tarefas extremamente importantes para a saúde de uma rede de

computadores, sendo que, sem operações de gerenciamento, uma rede local não tem como

manter-se operacional por muito tempo. Em especial, grandes redes corporativas estão

fadadas ao caos sem estas funções. Além de agirem reativamente, as tarefas gerenciais de rede

também são proativas no sentido de prevenir e detectar possíveis problemas.

A seguir, avaliaremos três ferramentas de código aberto, com base em Kumar (2018).

Page 42: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

41

4.3.1 Nagios

A Nagios é uma aplicação popular de monitoramento de rede de código aberto. É

permitido monitorar tanto os servidores físicos ou virtuais, além de serviços, e alertando

quando ocorrer algum problema ou correção do erro (NAGIOS, 2018).

Ethan Galstad desenvolveu em 1996 utilizando o MS-DOS com a execução de pings

em diversos dispositivos de rede, porem identificou uma limitação e foi necessário dar

continuidade com o Linux, dessa forma o sistema ficaria mais robusto e granular permitindo

possuir seus plug-ins e integrando com módulos de rede (NAGIOS-BR, 2013).

O Nagios roda em cima da plataforma Linux como um daemon5 e possui vários outros

arquivos, tem início com o binário do Nagios que quando executado ele lê o principal arquivo

que possui as configurações do sistema. O Nagios executa diversas tarefas através dos

respectivos comandos parametrizados nos arquivos de configuração (NAGIOS-BR, 2013).

O principal arquivo é Nagios.cfg contém os paths dos principais arquivos de

monitoramento, como o caminho onde estão configurados o monitoramento dos servidores

Windows.

• Nagio oferece 4 soluções de monitoramento open source

• Nagios Core é uma ferramenta de linha de comando, com todas as funções

básicas.

• Nagios XI: Uma segunda opção que possui interface web e monitoramentos

através GUI (graphical user interface)

• Nagios Log Server: permite pesquisar dados de registro e configurar alertas

sobre possíveis ameaças.

• Nagios Fusion: permite monitorar diversas redes ao mesmo tempo

Para facilitar o entendimento da arquitetura do Nagios, a figura abaixo possui o fluxo.

5 Daemon é um programa de computador que executa como um processo em plano de fundo, em vez de estar sob o controle direto de um usuário interativo

Page 43: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

42

Figura 14 - Estrutura do Nagios

Fonte: Nagios-Br (2012).

Abaixo, um exemplo da dashboard de monitoramento do Nagios Core.

Page 44: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

43

Figura 15 – Dashboard Nagios

Fonte: Trimble (2015).

4.3.2 Zabbix

O Zabbix foi criado por Alexei Vladishev em 1998, é um software de monitoramento

Open Source criado apartir de uma demanda para monitorar seus servidores. Em 2001 foi

lançada a primeira versão estável da ferramenta. Em 2005 foi fundada a Zabbix SIA

Company, empresa responsável pelo suporte técnico e comercial do produto (PRETEL,

2014).

O Zabbix possui a capacidade de monitorar um ambiente de Tecnologia de Informação

completo. Oferece uma interface amigável para configuração e manutenção, o que causa

grande autoridade diante das ferramentas concorrentes. A coleta dos dados de monitoramento

é realizada através do agente próprio ou SNMP, SSH, módulo Vmware , Scripts dentre outros.

O Zabbix possui em sua estrutura diversos componentes de software, abaixo vamos destacar

os principais (ZABBIX, 2015).

Page 45: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

44

4.3.2.1 Servidor

Servidor Zabbix é o componente central da solução e, em ambientes centralizados, os

agentes enviam os dados coletados (sobre integridade, disponibilidade e estatísticos) para ele.

Em ambientes descentralizados o envio dos dados é feito para um componente intermediário:

o proxy.

4.3.2.2 Banco de armazenamento

Todas as informações de configuração e os dados recebidos pelo Zabbix são

armazenados em um sistema gerenciador de banco de dados (SGBD).

4.3.2.3 Interface Web

Para acesso rápido, e a partir de qualquer dispositivo, a solução vem com uma

interface web. Normalmente esta interface é parte da mesma máquina do Servidor Zabbix,

apesar de ser possível sua instalação em outro servidor.

Caso o servidor Zabbix seja instalado usando como banco de dados o SQLite, passa a

ser obrigatório que a interface web esteja na mesma máquina do Servidor Zabbix.

4.3.2.4 Proxy

O Proxy Zabbix pode coletar dados de desempenho e disponibilidade em nome do

Servidor Zabbix. Este é um componente opcional na implantação do Zabbix, no entanto, pode

ser muito benéfico para seu ambiente distribuir a carga de coletas entre o Servidor Zabbix e

um ou mais proxies.

4.3.2.5 Agente

O Agente Zabbix é instalado nos servidores alvo da monitoração e pode monitorar

ativamente os recursos e aplicações locais, enviando os dados obtidos para o Servidor ou

Proxy Zabbix.

Page 46: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

45

4.3.2.6 Fluxo de Dados

Além dos componentes do Zabbix temos o fluxo das informações. Para que seja

possível coletar qualquer informação de um servidor é necessário que seja criado um host, em

seguida é necessário criar triggers para identificar os eventos e incidentes, e estas trabalham

com os dados dos itens. Para que uma notificação ou comando remoto seja executado é

necessário que tenha uma alteração no estado da trigger.

No caso de você precisar receber um alerta sobre um excesso de consumo de CPU no

servidor X você precisa seguir a seguinte ordem.

1. Cadastrar um host para representar o servidor X; 2. Cadastrar um item para acompanhar o consumo de CPU; 3. Cadastrar uma trigger que alerte quando o consumo de CPU for maior do

que o desejado; 4. Criar uma ação que envia um e-mail, ou executa um comando remoto;

(ZABBIX, 2017).

Abaixo, vê-se um modelo da dashboard do Zabbix:

Figura 16 – Dashboard Zabbix.

Fonte: Zabbix (2015)

Page 47: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

46

4.3.3 Cacti

Da mesma forma que o Nagios o CACTI também é uma ferramenta open source e não

possui custo na licença para o usuário. O software:

é uma ferramenta software livre administrativa de rede, que recolhe e exibe informações sobre o estado de uma rede de computadores através de gráficos, permitindo o monitoramento e gerenciamento de redes simples até redes complexas, com centenas de dispositivos. Foi desenvolvido para ser flexível de modo a se adaptar facilmente a diversas necessidades, bem como ser robusto e adicionando a isto uma interface Web intuitiva e fácil de usar. Monitora o estado de elementos de rede e programas bem como largura de banda utilizada e uso de CPU (CACTI, 2018).

O objetivo da ferramenta é exibir informações sobre o estado de uma rede de

computadores através de gráficos, é um frontend para a ferramenta RRDTool, que guarda

todas as informações necessárias para geração dos gráficos e insere em um banco de dados

MySQL.

O intuído do Cacti é ser flexível e adaptável as diversas necessidades, sendo um

sistema solido e de fácil usabilidade. Realiza o monitoramento dos ativos de rede e

programas, link de banda utilizada e uso dos recursos dos ativos. A interface foi desenvolvida

em PHP e possui suporte ao protocolo SNMP.

O RRDToll é um sistema de base de dados Round-Robin, com o a função de

armazenar e monitorar dados em série obtidos durante um determinado período. É

responsável por armazenar os dados gerados e, fornece-lo para a elaboração dos gráficos, e

dessa forma são repassadas as informações a uma ferramenta utilizando o script, e com a base

dessas informações são gerados os dados.

É possível gerar gráficos referentes ao uso de memória física, memória virtual,

quantidade de processos, processamento, tráfego de rede, quantidade de espaço em disco etc.

O SNMP permite o acesso a gráfico dos sistemas operacionais Linux e Windows e também de

dispositivos físicos como roteadores e switches ou qualquer outro equipamento que suporte

SNMP. O protocolo SNMP é utilizado pelo Cacti e, segundo Alvarenga e Ramos (2011):

O SNMP é um protocolo padrão, integrante do conjunto de protocolos TCP/IP, e tem como finalidade o gerenciamento de dispositivos em uma rede IP. As principais funcionalidades do protocolo consistem em monitoramento dos dispositivos da rede e configuração remota de parâmetros nos mesmos, tanto de forma manual ou quanto automaticamente

Page 48: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

47

em resposta a um incidente determinado. Neste trabalho é realizado um estudo contextual do protocolo SNMP aplicado ao gerenciamento de redes, bem como avaliada a evolução e estado atual de sua aplicabilidade e modelo de segurança

O funcionamento do modelo de gerenciamento SNMP é de forma centralizada, possui

um servidor que é setado como gerente, e os demais ativos de rede são denominados Agentes.

Cada Agente faz a comunicação entre o gerente e os equipamentos que não implementam o

SNMP. Cada agente possui uma MIB (Management Information Base) que pode ser definido

como “[...] o conjunto dos objetos gerenciados, que procura abranger todas as informações

necessárias para a gerência da rede, possibilitando assim, a automatização de grande parte das

tarefas de gerência” (OTSUKA, 2018). Para cada objeto gerenciado, cada MIB possui as

variáveis relativas a cada objeto.

Importante destacar que o Cacti não é compatível apenas com o protocolo SNMP

somente, podendo ser alimentado de outras formas, através do apontamento para um script ou

comando externo – padrão “nix bash scripts”, scripts Perl, ou qualquer script executado a

partir do prompt de comando dos servidores *nix. Na figura abaixo está um exemplo da

Dashboard do Cacti.

Figura 17 – Dashboard Cacti

Fonte: Black (2008).

Page 49: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

48

4.4 COMPARAÇÃO ENTRE AS FERRAMENTAS

Conforme figura 18 as três ferramentas descritas possuem muitas semelhanças entre si,

e atendem a basicamente a todas as funcionalidades necessárias para gestão dos ativos.

4.4.1 Cacti

O Cacti é uma ferramenta muito ampla, com gráficos surpreendentes e de fácil

usabilidade, sendo que não é impactado caso alguma condição adversa como desligamento ou

ligamento de alguma máquina da rede, efetuar flood, broadcasts e ping’s da morte. É uma

ferramenta leve e faz uso do RRDTool e do SNMP.

De acordo com Galiano Filho (2010) e Costa (2012), o Cacti é uma ferramenta

poderosa para o administrador por algumas razões:

a) Número ilimitado de gráficos por host;

b) Envio de alertas via e-mail e script personalizado;

c) Armazenamento configurável de históricos;

d) Rápido resequenciamento dos itens gráficos;

e) Suporte completo ao RRDTOOL;

f) Suporte ao protocolo SNMP;

g) Modelos gráficos pré-configurados;

h) Gerenciamento totalmente web;

i) Multiusuário web com níveis de acessos.

4.4.2 Nagios

A ferramenta Nagios possui uma vasta documentação na internet, é um software

extenso e bem maduro com algumas particularidades, principalmente no que se diz respeito a

segurança, e possui suporte às tecnologias padrões de mercado, tais como SSL, kerberos,

HTTPS no WebGUI e outras configurações especificas para o seu código facilmente

encontradas na sua documentação.

Importante destacar, de acordo com Galiano Filho (2010), algumas funcionalidades do

Nagios, tais como:

Page 50: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

49

a) Monitoramento de aplicação, serviços, sistemas operacionais e componentes de

infraestrutura;

b) API para desenvolvimento de sistemas customizados;

c) Cliente proprietário;

d) Suporte ao protocolo SNMP;

e) Visão centralizada de todos os sistemas monitorados;

f) Informações detalhadas dos componentes monitorados na interface web;

g) Rápida detecção de problemas na infraestrutura;

h) Alertas via email e SMS;

i) Alertas customizáveis, para o envio diretamente a pessoa responsável;

j) Base de conhecimento para problemas com soluções conhecidas;

k) Configurações de eventos para ações préconfiguradas, como reiniciar o serviço

com problema;

l) Planejamento de infra-estrutura para o acompanhamento do envelhecimento do

parque tecnológico;

m) Paradas programadas, para o sistema não enviar alertas nesses períodos;

n) Relatórios para o acompanhamento dos SLA’s;

o) Históricos de envio de alertas e notificações;

p) Suporte a plugins de terceiros;

q) Multiusuário web com níveis de acessos.

4.4.3 Zabbix

O Zabbix ao que indica é uma excelente ferramenta que permite o monitoramento de

toda a infra-estrutura de uma rede. É atualmente considerado uma das melhores ferramentas

de monitoramento, muito pelo fato que diversas funcionalidades foram herdades do Nagios e

do Cacti, tornando-a uma das ferramentas mais poderosas e completas disponíveis. Abaixo,

conforme Santos e Sitta (2017), as características e vantagens são as seguintes:

a) Possui suporte a maioria dos sistemas operacionais: Linux, Solaris, HP-UX,

AIX, FreeBSD, OpenBSD, NetBSD, Mac OS X, Windows, entre outros;

b) Monitora serviços simples (http, pop3, imap, ssh) sem o uso de agentes;

c) Suporte nativo ao protocolo SNMP;

d) Interface de gerenciamento Web, de fácil utilização;

Page 51: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

50

e) Integração com banco de dados (MySQL, Oracle,PostgreSQL ou SQLite);

f) Geração de gráficos em tempo real;

g) Fácil instalação e customização;

h) Agentes disponíveis para diversas plataformas: Linux, Solaris, HP-UX, AIX,

FreeBSD, OpenBSD, SCO-OpenServer, Mac OS X, Windows 2000/XP/2003/Vista;

i) Agentes para plataformas 32 bits e 64 bits;

j) Integração com os Contadores de Performance do Windows;

k) Software Open Source distribuído pela Licença GPL v2;

l) Excelente Manual (Em Inglês) – Possui licenciamento próprio – Não GPL;

m) Envio de alertas para: e-mail, Jabber, SMS;

n) Scripts personalizados.

Como vantagens podem-se elencar a facilidade para manipular os objetos, de modo a

agilizar o trabalho diário. Como exemplo, em situações em que é necessário monitorar o

tráfego de rede em 50 switches idênticos.

Em sequência, a tabela de comparação entre as ferramentas apresentadas.

Page 52: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

51

Figura 18 – Comparação entre ferramentas

Fonte: Black (2008).

Page 53: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

52

5 CONCLUSÃO

A gestão da Tecnologia da Informação e a cultura DevOps modificaram a forma de

trabalho do setor de infraestrutura na computação, principalmente na operação e manutenção

do ambiente. Tornou-se uma necessidade da área de infraestrutura automatizar suas atividades

de forma ágil e entregar melhorias contínuas para o ambiente que será gerenciado. Conforme

visto, é uma tendência das empresas utilizarem cada vez mais serviços de computação em

nuvem por diversos motivos, seja para reduzir custos ou automatizar processos.

Este trabalho objetivou apresentar a relevância da gestão da computação em nuvem no

modelo IaaS, como a cultura DevOps contribui com gerenciamento dessa estrutura. Ainda,

apresentaram-se as ferramentas que podem auxiliar nesse processo de controle. Como foi

possível observar no decorrer do desenvolvimento da pesquisa, essas têm características e

vantagens específicas. Desse modo, é de extrema importância a correta identificação das

necessidades dos clientes e usuários e, assim, proporcionar soluções de forma assertiva, ágil e

adequada. Nesse sentido, a própria equipe de TI precisa manter-se atenta às novas

tecnologias, capacitando-se constantemente

Conclui-se, dessa maneira, que as ferramentas de gerenciamento de configuração e

monitoramento são fundamentais para garantir a segurança, integridade e agilidade do

ambiente. Todas as ferramentas apresentadas podem ser utilizadas e implantadas em

ambientes On-premisses, Iaas, Paas ou Saas. Todas atendem questões cruciais como aplicação

de regras ou políticas, aplicação múltipla nos servidores, controle de alteração, gerenciamento

web, execução de scripts, open source, buscando manter a homogeneidade do ambiente.

Modelos tradicionais de controle individual de servidores não são recomendados pelo

esforço demasiado na operacionalização e manutenção, além da falta de controle, tanto para

gerenciamento de configuração quanto para questões de monitoramento. É compreensível que

para implantação das ferramentas apresentadas exista certo esforço, contudo, é de extrema

necessidade para garantir desempenho e integridade de um ambiente robusto.

Page 54: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

53

REFERÊNCIAS

8KMILES. Puppet: an introduction. 13 mar. 2016. 8kmiles (blog). Disponível em: <https://8kmiles.com/blog/puppet-an-introduction/>. Acesso em: 22 nov. 2018. ALVARENGA, Igor Drummond; RAMOS, Bruno Lange. Simple network management protocol (SNMP). 2011. Disponível em: <https://www.gta.ufrj.br/grad/11_1/snmp/index.html>. Acesso em: 26 nov. 2018. BARBOSA, Cristian Suzuki; ARAÚJO, David Campos; TORRES, Isabelle Vasconcelos. Governança de ti utilizando as práticas da itil. Revista Tecnologias em Projeção. v.2, n.1, p. 34-38, jun. 2011. Disponível em: <http://revista.faculdadeprojecao.edu.br/index.php/Projecao4/article/view/79/66>. Acesso em: 28 nov. 2018 BATRA, Vipin. Introduction to cloud computing. 2015. Disponível em: <https://www.slideshare.net/VipinBatra/introduction-to-cloud-computing-43350599?from_action=save >. Acesso em: 11 nov. 2018. BLACK, Tomas Lovis. Comparação de ferramentas de gerenciamento de redes. 2008. 63 f. Monografia (Especialização em Tecnologias, Gerência e Segurança de Redes de Computadores) – Instituto de Informática, Universidade Federal do Rio Grande do Sul (UFRGS), Porto Alegre, 2008. BORGES, Hélder Pereira; SOUZA, José Neuman de; SCHULZE, Bruno; MURY, Antonio Roberto. Computação em nuvem. Petrópolis: LNCC, 2012. Disponível em: <http://livroaberto.ibict.br/bitstream/1/861/1/COMPUTA%C3%87%C3%83O%20EM%20NUVEM.pdf >. Acesso em: 09 nov. 2018. CACTI. In: WIKIPÉDIA, a enciclopédia livre. Flórida: Wikimedia Foundation, 2018. Disponível em: <https://pt.wikipedia.org/w/index.php?title=Cacti&oldid=51782195>. Acesso em: 25 nov. 2018. CAPITAL INFORMAÇÃO. Gerenciamento de infraestrutura de ti: sem segredos. Jornal Brasil on-line. 19 maio 2010. Disponível em: <https://jornalbrasil.com.br/noticia/gerenciamento-de-infraestrutura-de-ti-sem-segredos.html>. Acesso em: 28 nov. 2018. CARLOS, Alan Nascimento; BILJON, Edward von. ALM – DevOps – Infraestrutura como código ou “infrastructure as code.” 9 jun. 2015. TechNet. Disponível em: <https://social.technet.microsoft.com/wiki/pt-br/contents/articles/31246.alm-devops-infraestrutura-como-codigo-ou-infrastructure-as-code.aspx>. Acesso em: 20 nov. 2018. CARVALHO, Guto. Puppet vs ansible? 02 jun. 2016. Guto Carvalho (blog). Disponível em: <http://gutocarvalho.net/blog/2016/06/02/puppet-vs-ansible/>. Acesso em: 22 nov. 2018. CAVALINI, Marcelo. Modelos de implementação cloud computing. Disponível em: <http://cavas.com.br/gestao/modelos-de-implementacao-cloud-computing/>. Acesso em: 28 nov. 2018

Page 55: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

54

CAVALINI, Mariani. Metodologia ágil: o que é + 6 motivos para você usá-la em projetos de marketing digital. 30 nov. 2017. Resultados Digitais (blog). Disponível em: <https://resultadosdigitais.com.br/blog/metodologia-agil/>. Acesso em: 20 nov. 2018. COMPUTER SUPPORT SERVICES INC. On-premise, iaas, paas, saas: who’s responsible for what? 04 mar. 2015. Disponível em: <https://computersupportservicesinc.files.wordpress.com/2015/03/cloud-computing-variants.png>. Acesso em: 09 nov. 2018. CORREA, Rafael Murilo. Gestão e governança de ti: qual o papel de cada uma? 30 maio 2018a. EUAX. Disponível em: <https://www.euax.com.br/2018/05/gestao-e-governanca-de-ti-papel-de-cada-uma/>. Acesso em: 28 nov. 2018. CORREA, Rafael Murilo. O que é gestão da tecnologia da informação? Entenda como a TI pode ser uma aliada estratégica do negócio. 30 ago. 2018b. EUAX. Disponível em: <https://www.euax.com.br/2018/08/gestao-da-tecnologia-da-informacao/>. Acesso em: 28 nov. 2018. CORREIA, Fernando. Definição de computação em nuvem segundo o NIST. 21 nov. 2011. Plataforma Nuvem (blog). Disponível em: <https://plataformanuvem.wordpress.com/2011/11/21/definicao-de-computacao-em-nuvem-segundo-o-nist/>. Acesso em: 11 nov. 2018. COSTA, Francisco Aldevan Barbosa. Trabalho sobre cacti. 2012. Faculdade Sumaré, São Paulo. Trabalho não publicado. Disponível em: <https://pt.slideshare.net/ComandosLinux/cacti-15176007>. Acesso em: 26 de nov. 2018. COSTA, Marcelo. Ansible: uma nova opção para gerenciamento de configuração. 08 abr. 2013. InfoQ (homepage). Disponível em: <https://www.infoq.com/br/news/2013/04/ansible1.1>. Acesso em: 21 nov. 2018. DACONTA, Michael C. The history of cloud computing. Disponível em: <https://greatcloudmigration.wordpress.com/2014/03/03/the-history-of-cloud-computing/>. Acesso em: 06 nov. 2018. DANTAS, Rodrigo. Conheça a história da Salesforce, líder no mercado de cloud computing. Disponível em: < https://blog.vindi.com.br/conheca-a-historia-da-salesforce-lider-no-mercado-de-cloud-computing/>. Acesso em: 06 nov. 2018. DEVOPS. In: WIKIPÉDIA, a enciclopédia livre. Flórida: Wikimedia Foundation, 2018. Disponível em: <https://pt.wikipedia.org/w/index.php?title=DevOps&oldid=53450837>. Acesso em: 20 nov. 2018. DINO. Empresas brasileiras investem cada vez mais em tecnologias com Cloud Computing. Revista Exame.com, 29 nov. 2017. Disponível em: <https://exame.abril.com.br/negocios/dino/empresas-brasileiras-investem-cada-vez-mais-em-tecnologias-com-cloud-computing/>. Acesso em: 27 nov. 2018.

Page 56: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

55

EBC GROUP. On premises vs cloud. Disponível em: <https://www.ebcgroup.co.uk/on-premises-vs-cloud>. Acesso em: 10 nov. 2018. EDUREKA! Chef vs. puppet vs. ansible vs. saltstack: configuration tool comparison. 22 maio 2017. 30 slides. Disponível em: <https://www.slideshare.net/EdurekaIN/chef-vs-puppet-vs-ansible-vs-saltstack-configuration-management-tools-comparison-edureka>. Acesso em: 25 nov. 2018. EITI GESTÃO DE TI. Os três principais tipos de nuvem: IaaS, PaaS, SaaS. 2016. Disponível em: <https://eitisolucoes.com.br/blog/tipos-de-nuvem-saas-paas-e-iaas/>. Acesso em: 11 nov. 2018. FIGUEREDO, Drucila Macário; CORDEIRO, Adiny Heimy Muller. Gestão da tecnologia da informação: um estudo de caso na empresa Solimões Material de Construção Ltda. In: CONGRESSO INTERNACIONAL DE ADMINISTRAÇÃO. 2016, Natal/RN. Anais... Natal/RN: 2016. Disponível em: <http://www.admpg.com.br/2016/down.php?id=2060&q=1>. Acesso em: 28 nov. 2018. GALIANO FILHO, Adilson. Avaliação da ferramenta zabbix. 2010. 35 f. Artigo (especialização em Redes e Segurança de Sistemas) – Pontifícia Universidade Católica do Paraná, Curitiba, 2010. Disponível em: <https://www.ppgia.pucpr.br/~jamhour/RSS/TCCRSS08B/Adilson%20Galiano%20-%20Artigo.pdf>. Acesso em: 26 nov. 2018. GONZALEZ, Nelson Mimura; MIERS, Charles Christian; REDÍGOLO, Fernando Frota; ROJAS, Marco Antônio Torrez; CARVALHO, Tereza Cristina Melo de Brito. Segurança das nuvens computacionais: uma visão dos principais problemas e soluções. Revista USP, São Paulo, n. 97, p. 27-42, mar./abr./maio 2013. Disponível em: <https://www.revistas.usp.br/revusp/article/download/61683/64572/>. Acesso em: 28 nov. 2018. IPM SISTEMAS. História da computação em nuvem: como surgiu a cloud computing? Disponível em: <https://www.ipm.com.br/blog/historia-da-computacao-em-nuvem-como-surgiu-a-cloud-computing/>. Acesso em: 05 nov. 2018. IPSENSE. On premise e cloud servers: entenda as principais diferenças. 2017. Disponível em: <https://www.ipsense.com.br/blog/on-premise-e-cloud-servers-entenda-as-principais-diferencas/>. Acesso em: 10 nov. 2018. KUMAR, Chandan. 5 best open source monitoring software for it infrastructure. 22 abr. 2018. Geekflare (blog). Disponível em: <https://geekflare.com/best-open-source-monitoring-software/>. Acesso em: 25 nov. 2018. MEJÍAS, Julio. Cloud computing e as tendências para 2017. Disponível em: <https://33giga.com.br/__trashed-2/>. Acesso em: 07 nov. 2018. MOREIRA, Esdras. IaaS: a infraestrutura da era digital. Transformação Digital. 25 jun. 2018. Disponível em: <https://transformacaodigital.com/iaas-a-infraestrutura-da-era-digital/>. Acesso em: 28 nov. 2018.

Page 57: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

56

MOREIRA, Leonardo O.; SOUSA, Flavio Rubens de Carvalho; MACHADO, J. C. Computação em nuvem: conceitos, tecnologias, aplicações e desafios. In: SANTOS NETO, Pedro de Alcantara (Org.). II Escola Regional de Computação Ceará, Maranhão e Piauí (ERCEMAPI). 2009. Disponível em: <https://www.researchgate.net/profile/Javam_Machado/publication/237644729_Computacao_em_Nuvem_Conceitos_Tecnologias_Aplicacoes_e_Desafios/links/56044f4308aea25fce3121f3/Computacao-em-Nuvem-Conceitos-Tecnologias-Aplicacoes-e-Desafios.pdf>. Acesso em: 13 nov. 2018. NAGIOS. In: WIKIPÉDIA, a enciclopédia livre. Flórida: Wikimedia Foundation, 2018. Disponível em: <https://pt.wikipedia.org/w/index.php?title=Nagios&oldid=52231219>. Acesso em: 25 nov. 2018. NAGIOS-BR. Entendendo a estrutura do nagios. 27 mar. 2012. Nagios Brazilian Community Site (blog). Disponível em: <http://nagios-br.com/entendendo-a-estrutura-do-nagios>. Acesso em: 25 nov. 2018. NAGIOS-BR. Monitorando Windows server com nagios core. 04 jun. 2013. Nagios Brazilian Community Site (blog). Disponível em: <http://nagios-br.com/monitorando-windows-server-com-o-nagios-core>. Acesso em: 25 nov. 2018. NASCIMENTO, Marcelo Brenzink do. Você sabe o que significa gestão da tecnologia da informação ou gestão de ti? 20 jul. 2018. DLTEC do Brasil. Disponível em:<http://www.dltec.com.br/blog/redes/voce-sabe-o-que-significa-gestao-da-tecnologia-da-informacao-ou-ti/>. Acesso em: 28 nov. 2018. NEXTHINK. The best configuration management tools. Disponível em: <https://www.nexthink.com/blog/the-best-configuration-management-tools/>. Acesso em: 21 nov. 2018. OLIVEIRA, André Bernardo de. Infraestrutura de ti: a importância de um bom gerenciamento. Strati. 22 abr. 2015. Disponível em: <http://www.strati.com.br/gerenciamento-da-infraestrutura-de-ti/>. Acesso em: 28 nov. 2018. OLIVEIRA, Marco. Devops e o gerenciamento de configuração. 27 out. 2017. Medium (blog). Disponível em: <https://medium.com/@marcoaurelioso/devops-e-o-gerenciamento-de-configura%C3%A7%C3%A3o-ea1a002428ef>. Acesso em: 21 nov. 2018. OLIVEIRA, Paulo. O que é e por que utilizar computação em nuvem. 2016. Disponível em: <https://www.escolalinux.com.br/blog/o-que-e-e-por-que-utilizar-computacao-em-nuvem>. Acesso em: 11 nov. 2018. OTSUKA, Joice Lee. O que é uma MIB? Management Information Base (homepage). Disponível em: <http://penta.ufrgs.br/gr952/trab1/2conceit.html>. Acesso em: 26 nov. 2018 PEDROSA, Paulo H. C.; NOGUEIRA, Tiago. Computação em nuvem. Disponível em: <http://www.ic.unicamp.br/~ducatte/mo401/1s2011/T2/Artigos/G04-095352-120531-t2.pdf>. Acesso em: 10 nov. 2018.

Page 58: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

57

PEREIRA, A.L; PENHA, E.W.M; GOMES, N.A; FREITAS, R.R. (2016). Computação em nuvem: a segurança da informação em ambientes na nuvem e em redes físicas. Brazilian Journal of Production Engineering (BJPE). 2 (1): 12-27. ISSN: 2447-5580. Disponível em: < http://periodicos.ufes.br/BJPE/article/viewFile/EO02_2016/pdf>. Acesso em: 09 nov. 2018. PIRES, Aécio dos Santos. Gerência de configuração com puppet. São Paulo: Novatec, 2017. PRETEL, Jorge. Conheça o zabbix, história e arquitetura. 16 jul. 2014. Jorge Pretel (blog). Disponível em: <https://jorgepretel.com.br/2014/07/conheca-o-zabbix-historia-e-arquitetura/>. Acesso em: 25 nov. 2018. PUPPET. In: WIKIPÉDIA, a enciclopédia livre. Flórida: Wikimedia Foundation, 2017. Disponível em: <https://pt.wikipedia.org/w/index.php?title=Puppet&oldid=49659279>. Acesso em: 21 nov. 2018. PUPPET VS. ANSIBLE. In: WIKIVERSIDADE. 2017. Disponível em: <https://pt.wikiversity.org/wiki/Puppet_vs._Ansible>. Acesso em: 21 nov. 2018. RESENDE, Carlos. DevOps e ITSM: conflitantes ou complementares? ITSM na prática (blog). Disponível em: <https://www.itsmnapratica.com.br/devops-e-itsm/>. Acesso em: 19 nov. 2018. RESOURCE IT SOLUTIONS. Segunda década de cloud computing: o que vem por aí? Disponível em: <http://www.resourceit.com/wp-content/uploads/2017/09/Segunda-decada-de-cloud-computing-o-que-vem-por-ai-1.pdf>. Acesso em: 11 nov. 2018. RICARDO, Luiz. Infraestrutura como código. 03 nov. 2016. State of the Art (blog). Disponível em: <http://luizricardo.org/2016/11/infraestrutura-como-codigo/>. Acesso em: 20 nov. 2018. ROCHA, Marcelo Cavalcante. Chef: automação e gerenciamento de configuração. 01 abr. 2018. Marcelo Cavalcante Rocha – Hacking the damn life... (blog). Disponível em: <https://blog.marcelocavalcante.net/blog/2018/04/01/chef-aautomacao-e-gerenciamento-de-configuracao/>. Acesso em: 21 nov. 2018. RUSCHEL, Henrique; ZANOTTO, Mariana Susan; MOTA, Wélton Costa da. Computação em nuvem. 2010. 15 f. Artigo (Especialização em Redes e Segurança de Sistemas) – Pontifícia Universidade Católica do Paraná (PUC/PR), Curitiba, 2010. Disponível em: <https://www.ppgia.pucpr.br/~jamhour/RSS/TCCRSS08B/Welton%20Costa%20da%20Mota%20-%20Artigo.pdf >. Acesso em: 09 nov. 2010. SANTOS, Emerson; SITTA, Vinicius. Monitoramento com zabbix. 2017. Altatech (homepage). Disponível em: <http://www.altatech.com.br/pages/monitoramento-com-zabbix.html>. Acesso em: 26 nov. 2018. SANTOS, Érika. Modelos de serviço em cloud computing. 2012. Disponível em: <http://erikapss.blogspot.com/2012/08/modelos-de-servico-em-cloud-computing.html >. Acesso em: 11 nov. 2018

Page 59: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

58

SEMPREUPDATE. Cultura DevOps e seus paradigmas. 30 ago. 2018. Disponível em: <https://sempreupdate.com.br/cultura-devops-e-seus-paradigmas/>. Acesso em: 21 nov. 2018. SILVA, Patrezze de Alvarenga; GOMES, Rafael Nascimento. Estudo de caso de utilização da metodologia devops para atender ao processo de continuidade de serviços conforme o framework itil. 2016. 36 f. Monografia (Pós-Graduaçãp lato sensu em Análise e Gestão de Sistemas de Informação) – Instituto Federal de Educação, Ciência e Tecnologia Fluminense, Campo de Goytacazes/RJ, 2016. Disponível em: <http://bd.centro.iff.edu.br/bitstream/123456789/1129/1/ESTUDO%20DE%20CASO%20DE%20UTILIZA%C3%87%C3%83O%20DA%20METODOLOGIA%20DEVOPS%20PARA%20ATENDER%20AO%20PROCESSO%20DE%20CONTINUIDADE%20DE%20SERVI%C3%87OS%20CONFORME%20O%20FRAMEWORK.pdf>. Acesso em: 20 nov. 2018. SILVA, Rachel Reuters da. O crescimento de DevOps no mercado de tecnologia da informação. 2016. 47 f. Monografia (Pós-Graduação em Gestão da Tecnlogia da Informação e da Comunicação) – Universidade Cândido Mendes (UCAM/RJ), Rio de Janeiro, 2016. Disponível em: <https://pt.slideshare.net/RachelReuters/monografiadevops>. Acesso em: 18 nov. 2018. STACK24/7. Azure: on premises vs iaas vs paas vs saas. 2015. Disponível em: <https://stack247.wordpress.com/2015/05/21/azure-on-premises-vs-iaas-vs-paas-vs-saas/>. Acesso em: 10 nov. 2018. STROUD, Robert. 2018: the year of enterprise devops. 17 out. 2017, Forrester (hompage). Disponível em: <https://go.forrester.com/blogs/2018-the-year-of-enterprise-devops/>. Acesso em: 28 nov. 2018. THIRAWAT, Aruj. Throughwave Thailand recruitment presentation 2014. 2014. 44 slides, color. Disponível em: <https://www.slideshare.net/arujthirawat/throughwave-thailand-recruitment-presentation-2014-slideshare-30051737?next_slideshow=1>. Acesso em: 27 nov. 2018. TRIMBLE, Marc. Nagios core dashboard. 09 jun. 2015. Nagios (homepage). Disponível em: <https://www.nagios.com/products/attachment/nagios-core-dashboard/>. Acesso em: 25nov. 2018. UNICESUMAR. O que faz um profissional de gestão de tecnologia da informação? Descubra agora! Disponível em: <https://www.unicesumar.edu.br/blog/gestao-de-tecnologia-da-informacao-o-que-faz/>. Acesso em: 28 nov. 2018. UNITED STATES DEPARTMENT OF COMMERCE. National Institute of Technology. Special Publication 800-145: the NIST definition of cloud computing: recommendations of the national institute of standards and technology. Gaithersburg/MD, 2011. Disponível em: <https://nvlpubs.nist.gov/nistpubs/legacy/sp/nistspecialpublication800-145.pdf >. Acesso em: 11 nov. 2018. VELTE, Anthony T.; VELTE, Toby J.; ELSENPETER, Robert. Computação em nuvem: uma abordagem prática. Rio de Janeiro: Alta Books, 2012.

Page 60: FERNANDO ANTONIO VENCO TEIXEIRA DA CUNHA GESTÃO DA

59

VENEZIA, Paul. Review: puppet vs. chef vs. ansible vs. salt: the leading configuration management and orchestration tools take different paths to server automation. 21 nov. 21013. InfoWorld (blog). Disponível em: <https://www.infoworld.com/article/2609482/data-center/data-center-review-puppet-vs-chef-vs-ansible-vs-salt.html>. Acesso em: 24 nov. 2018. VIGGIANI, Tatiana S.; VELLASCO, Welton R. V. Aspectos contratuais na contratação de serviços de computação em nuvem. In: ROVER, Aires José; CELLA, José Renato Gaziero; AYUDA, Fernando Galindo. (Org.). Direito e Novas Tecnologias. Florianópolis: CONPEDI, 2014, v. 1, p. 421-442. Disponível em: <http://publicadireito.com.br/artigos/?cod=04c0e78a0e5ff325>. Acesso em: 08 nov. 2018. WEBER, Everson. Entenda o que é computação em nuvem e quais são as suas vantagens. Disponível em<https://arkansystem.com.br/cloud-computing-e-suas-vantagens/>. Acesso em: 17 nov. 2018. WILSON, Marc. Best nagios alternatives for server, application and network monitoring. PC&Network Downloads. Disponível em: <https://www.pcwdld.com/nagios-alternatives>. Acesso em: 25 nov. 2018. ZABBIX. Zabbix Documentation 3.0: 03 nov. 2015. Zappix (homepage). Disponível em: <https://www.zabbix.com/documentation/3.0/pt/manual/introduction/overview>. Acesso em: 25 nov. 2018. ZABBIX. Zabbix Documentation 4.0: 10 jun. 2017. Zappix (homepage). Disponível em: <https://www.zabbix.com/documentation/4.0/pt/manual/introduction/overview>. Acesso em: 25 nov. 2018.