DevOps e DevSecOps Flashcards

1
Q

O que é DevOps?

A

DevOps é uma filosofia que promove a colaboração entre as equipes de desenvolvimento e operações, com o objetivo de entregar software de alta qualidade de forma mais rápida e eficiente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

O que é DevSecOps e como ele se relaciona com o DevOps?

A

DevSecOps é uma extensão do DevOps, que integra práticas de segurança em todas as fases do ciclo de vida do desenvolvimento de software. Ao contrário do que algumas pessoas podem pensar, isso não atrasa o processo de entrega contínua. Na verdade, ao integrar a segurança desde o início, minimiza-se a necessidade de revisões de segurança atrasadas, o que pode acelerar o processo geral.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que é Infraestrutura como Código (IaC) e qual é o seu papel no DevOps?

A

Infraestrutura como código (IaC) é um princípio fundamental do DevOps. Ele permite que os desenvolvedores gerenciem e provisionem a infraestrutura de TI através de scripts. Isso aumenta a eficiência e reduz o risco de erros humanos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quem é responsável pela segurança em um ambiente DevSecOps?

A

Em um ambiente DevSecOps, a segurança é uma responsabilidade compartilhada. Isso significa que todas as equipes - desenvolvimento, operações e segurança - têm um papel na garantia da segurança do software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Em um ambiente DevSecOps, a segurança é uma responsabilidade compartilhada. Isso significa que todas as equipes - desenvolvimento, operações e segurança - têm um papel na garantia da segurança do software.

A

Integração Contínua é uma prática de DevOps onde os desenvolvedores frequentemente mesclam suas alterações de código em um repositório central. Após a mesclagem, as alterações de código são validadas por meio da criação e teste automáticos, ajudando as equipes a detectar e corrigir problemas mais cedo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

O que é a prática de Entrega Contínua em DevOps?

A

Entrega Contínua é uma prática de DevOps que se concentra na liberação frequente de novas funcionalidades e melhorias para os clientes. Isso é feito através da automatização do processo de entrega, o que ajuda a reduzir os riscos associados à liberação e permite um feedback mais rápido dos usuários.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Como o monitoramento e o registro se encaixam no DevOps?

A

O monitoramento e o registro são componentes essenciais do DevOps. Eles ajudam as equipes a entender o desempenho e o comportamento de suas aplicações e infraestrutura em tempo real, permitindo a detecção rápida de problemas e a tomada de decisões informadas sobre otimizações e melhorias.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que é a cultura de aprendizado e compartilhamento no DevOps?

A

A cultura de aprendizado e compartilhamento é um aspecto fundamental do DevOps. Encoraja a colaboração, a comunicação aberta e a partilha de conhecimentos e melhores práticas entre as equipes. Isso ajuda a melhorar a eficiência, a inovação e a resiliência das equipes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

O que é a prática de Implantação Contínua em DevOps?

A

Implantação Contínua é uma prática de DevOps que se concentra na automatização do processo de implantação, permitindo que cada alteração que passe por todos os estágios do pipeline de produção seja lançada para os usuários, garantindo que o software esteja sempre em um estado implantável.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Como a automação se encaixa no DevOps?

A

A automação é um componente chave do DevOps. Ela ajuda a reduzir o tempo de lançamento de novas funcionalidades e correções, minimiza os erros humanos e permite que as equipes se concentrem em tarefas de maior valor. A automação pode ser aplicada em várias áreas, incluindo integração contínua, testes, implantação e monitoramento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

O que é a cultura de falha no DevOps?

A

A cultura de falha é um aspecto importante do DevOps. Ela encoraja a aprendizagem a partir de falhas e a melhoria contínua. Em vez de culpar os indivíduos por falhas, a ênfase é colocada na compreensão das causas subjacentes e na prevenção de falhas futuras

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

O que é a prática de Feedback Contínuo em DevOps?

A

Feedback Contínuo é uma prática de DevOps que enfatiza a importância de comunicação e colaboração contínuas entre as equipes. Isso permite que as equipes aprendam rapidamente com seus erros e melhorem seus produtos e processos de forma iterativa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Como a cultura Blameless se encaixa no DevOps?

A

A cultura Blameless é um aspecto importante do DevOps. Ela promove um ambiente onde os membros da equipe se sentem seguros para assumir riscos e aprender com seus erros, sem medo de serem punidos. Isso leva a uma maior inovação e melhoria contínua.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

O que é a prática de Everything as Code em DevOps?

A

Everything as Code é uma prática de DevOps que enfatiza a automação e a consistência. Isso significa que todas as partes do processo de desenvolvimento de software - desde a infraestrutura até a configuração, testes e implantação - são codificadas e podem ser versionadas e reutilizadas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

O que significa a prática de “Shift Left”?

A

“Shift Left” é uma prática em DevOps e DevSecOps que envolve a movimentação de tarefas, processos e testes para as fases mais iniciais do ciclo de vida do desenvolvimento de software. O objetivo é encontrar e corrigir problemas mais cedo, melhorar a qualidade do software e reduzir o tempo de lançamento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Como “Shift Left” se aplica à segurança no DevSecOps?

A

No contexto do DevSecOps, “Shift Left” significa integrar práticas de segurança desde o início do ciclo de vida do desenvolvimento de software. Isso permite que as vulnerabilidades de segurança sejam detectadas e corrigidas mais cedo, reduzindo o risco e o custo de correções de segurança tardias.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Quais são os benefícios da prática de “Shift Left”?

A

Os benefícios da prática de “Shift Left” incluem a detecção precoce de defeitos, a redução do tempo de lançamento, a melhoria da qualidade do software e a redução dos custos de desenvolvimento. Também promove uma maior colaboração entre as equipes, pois incentiva a comunicação e a resolução de problemas desde o início.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Como a prática de “Shift Left” impacta a equipe de desenvolvimento?

A

A prática de “Shift Left” pode exigir uma mudança de mentalidade para a equipe de desenvolvimento, pois envolve a integração de tarefas como testes e considerações de segurança desde o início do processo de desenvolvimento. No entanto, isso também pode levar a um código de maior qualidade e a um processo de desenvolvimento mais eficiente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

O que é um proxy reverso?

A

Um proxy reverso é um servidor que recebe solicitações da Internet e as encaminha para um ou mais servidores back-end. Ele é comumente usado para balanceamento de carga, offloading SSL e como um cache.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Como o proxy reverso se encaixa no DevOps?

A

No contexto do DevOps, um proxy reverso pode ser usado para garantir que as solicitações sejam distribuídas de maneira eficiente entre vários servidores back-end. Isso pode melhorar a disponibilidade e a confiabilidade do serviço, o que é crucial para a entrega contínua de software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Como o proxy reverso se encaixa no DevSecOps?

A

No contexto do DevSecOps, um proxy reverso pode ser usado como uma camada adicional de segurança. Ele pode ocultar a existência e as características dos servidores back-end, protegendo-os contra ataques diretos. Além disso, pode ser configurado para fornecer funcionalidades de segurança adicionais, como prevenção de ataques DDoS e filtragem de solicitações mal-intencionadas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Quais são os benefícios de usar um proxy reverso?

A

Os benefícios de usar um proxy reverso incluem melhor desempenho através do balanceamento de carga e caching, segurança aprimorada através da ocultação de detalhes do servidor back-end e filtragem de tráfego, e maior disponibilidade do serviço.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Os benefícios de usar um proxy reverso incluem melhor desempenho através do balanceamento de carga e caching, segurança aprimorada através da ocultação de detalhes do servidor back-end e filtragem de tráfego, e maior disponibilidade do serviço.

A

Certo.

Em DevOps, a instalação e configuração das aplicações são de fato uma das etapas do provisionamento de um servidor. Isso é parte do conceito de Infraestrutura como Código (IaC), que é fundamental para a prática de DevOps.

24
Q

O que é o provisionamento de um servidor em DevOps?

A

O provisionamento de um servidor em DevOps envolve a preparação do servidor para o ambiente de execução, incluindo a instalação e configuração do sistema operacional, do software necessário e das aplicações. Isso é feito de forma automatizada como parte do conceito de Infraestrutura como Código (IaC).

25
Q

Com base nas etapas do DevOps, é correto afirmar que a ferramenta Jenkins está mais relacionada à etapa monitor que à etapa deploy.

A

Errado.

A afirmação está errada. Jenkins é uma ferramenta de integração contínua/entrega contínua (CI/CD) que é mais comumente usada para automatizar etapas como build, teste e deploy. Embora possa ser usada para algumas tarefas de monitoramento, sua principal função não é o monitoramento.

26
Q

Qual é a principal função da ferramenta Jenkins no DevOps?

A

Jenkins é uma ferramenta de integração contínua/entrega contínua (CI/CD) que é usada para automatizar várias etapas do ciclo de vida do desenvolvimento de software, incluindo build, teste e deploy.

27
Q

Jenkins pode ser usado para monitoramento em DevOps?

A

Embora Jenkins possa ser usado para algumas tarefas de monitoramento, sua principal função é automatizar o processo de integração contínua/entrega contínua (CI/CD), e não o monitoramento.

28
Q

O que é integração contínua em DevOps?

A

Integração contínua é uma prática de DevOps que envolve a mesclagem frequente de alterações de código em um repositório central. Após a mesclagem, as alterações de código são validadas por meio da criação e teste automáticos.

29
Q

O que é entrega contínua em DevOps?

A

Entrega contínua é uma prática de DevOps que se concentra na liberação frequente de novas funcionalidades e melhorias para os clientes. Isso é feito através da automatização do processo de entrega.

30
Q

Como Jenkins se encaixa na prática de integração contínua?

A

Jenkins é uma ferramenta que automatiza o processo de integração contínua. Ele pode compilar o código, executar testes e gerar relatórios de teste automaticamente sempre que uma alteração é feita no repositório de código.

31
Q

Como Jenkins se encaixa na prática de entrega contínua?

A

enkins pode ser configurado para automatizar o processo de entrega contínua. Ele pode fazer isso ao automatizar o deploy de aplicações para ambientes de teste ou produção sempre que o código passa por todas as etapas do pipeline de integração contínua.

32
Q

Quais são alguns dos benefícios de usar Jenkins em DevOps?

A

Alguns dos benefícios de usar Jenkins em DevOps incluem a aceleração do ciclo de vida do desenvolvimento de software, a detecção precoce de bugs e problemas de integração, a redução do tempo de lançamento e a melhoria da qualidade do software.

33
Q

Jenkins é a única ferramenta para integração contínua/entrega contínua (CI/CD)?

A

Não, Jenkins é uma das muitas ferramentas disponíveis para integração contínua/entrega contínua (CI/CD). Outras ferramentas populares incluem CircleCI, Travis CI, GitLab CI/CD e muitas outras.

34
Q

Em DevOps, a análise estática de código e geração de documentação fazem parte do processo de build de uma aplicação.

A

Certo.

Em DevOps, a análise estática de código e a geração de documentação podem ser integradas ao processo de build de uma aplicação. Isso ajuda a garantir a qualidade do código e a manter a documentação atualizada.

35
Q

O que é análise estática de código?

A

A análise estática de código é uma técnica usada para detectar erros de programação, bugs, estilos de codificação inadequados e outros problemas de qualidade, analisando o código sem executá-lo.

36
Q

Como a análise estática de código se encaixa no DevOps?

A

No DevOps, a análise estática de código pode ser integrada ao processo de build para detectar e corrigir problemas de qualidade do código mais cedo. Isso pode melhorar a qualidade do software e reduzir o tempo de lançamento.

37
Q

O que é geração de documentação em DevOps?

A

A geração de documentação em DevOps envolve a criação automática de documentação a partir do código e de outros artefatos de software. Isso pode incluir documentação de API, comentários de código e documentação de usuário.

38
Q

Como a geração de documentação se encaixa no DevOps?

A

No DevOps, a geração de documentação pode ser integrada ao processo de build para garantir que a documentação esteja sempre atualizada e em sincronia com o código atual.

39
Q

Quais são os benefícios da análise estática de código e da geração de documentação em DevOps?

A

Os benefícios da análise estática de código e da geração de documentação em DevOps incluem a melhoria da qualidade do software, a detecção precoce de problemas, a redução do tempo de lançamento e a manutenção de documentação atualizada.

40
Q

A análise estática de código e a geração de documentação são obrigatórias em DevOps?

A

Embora a análise estática de código e a geração de documentação possam trazer muitos benefícios, elas não são estritamente obrigatórias em DevOps. As práticas exatas podem variar dependendo das necessidades e circunstâncias específicas de cada equipe.

41
Q

Quais são algumas ferramentas que podem ser usadas para análise estática de código e geração de documentação em DevOps?

A

Algumas ferramentas que podem ser usadas para análise estática de código incluem SonarQube, ESLint e Pylint. Para a geração de documentação, algumas ferramentas populares incluem Doxygen, Sphinx e Javadoc.

42
Q

A análise estática de código e a geração de documentação são feitas antes ou depois do deploy em DevOps?

A

Em DevOps, a análise estática de código e a geração de documentação são geralmente feitas como parte do processo de build, que ocorre antes do deploy. Isso permite que quaisquer problemas sejam detectados e corrigidos antes que o software seja lançado.

43
Q

O que é Integração Contínua (CI) em DevOps?

A

Integração Contínua (CI) é uma prática de DevOps que envolve a integração regular de alterações de código em um repositório central, seguida por builds automáticas e testes.

44
Q

Como a Integração Contínua (CI) contribui para a segurança em DevSecOps?

A

A CI permite a detecção precoce de vulnerabilidades de segurança no código, pois cada integração é verificada por builds automáticas e testes, incluindo testes de segurança.

45
Q

O que é Entrega Contínua (CD) em DevOps?

A

Entrega Contínua (CD) é uma prática de DevOps que se concentra na liberação frequente de novas funcionalidades e melhorias para os clientes, através da automatização do processo de entrega.

46
Q

Como a Entrega Contínua (CD) contribui para a segurança em DevSecOps?

A

A CD permite a implementação rápida de atualizações de segurança e correções de bugs, minimizando o tempo que os sistemas estão vulneráveis.

47
Q

O que é Implementação Contínua em DevOps?

A

Implementação Contínua é uma prática de DevOps que vai além da Entrega Contínua, automatizando também a implantação de alterações de código em produção.

48
Q

Como a Implementação Contínua contribui para a segurança em DevSecOps?

A

A Implementação Contínua permite a rápida implantação de atualizações de segurança em produção, minimizando o tempo de exposição a vulnerabilidades.

49
Q

Quais são alguns benefícios da Integração Contínua (CI), Entrega Contínua (CD) e Implementação Contínua?

A

Essas práticas melhoram a eficiência do desenvolvimento, permitem a detecção precoce de problemas, aceleram o tempo de lançamento de novas funcionalidades e melhoram a segurança através da detecção e correção rápidas de vulnerabilidades.

50
Q

Quais são algumas ferramentas comuns usadas para CI/CD?

A

Algumas ferramentas comuns para CI/CD incluem Jenkins, CircleCI, Travis CI, GitLab CI/CD e Spinnaker.

51
Q

Como a automação se encaixa na CI/CD?

A

A automação é um componente chave da CI/CD, permitindo a execução rápida e consistente de tarefas como build, teste e deploy.

52
Q

Como o monitoramento se encaixa na CI/CD?

A

O monitoramento permite que as equipes acompanhem o desempenho das suas aplicações e infraestrutura, detectem problemas rapidamente e obtenham feedback sobre o impacto das alterações implementadas através da CI/CD.

53
Q

Como o gerenciamento de configuração se encaixa na CI/CD?

A

O gerenciamento de configuração permite que as equipes gerenciem e rastreiem as configurações de suas aplicações e infraestrutura, o que é crucial para a consistência e a reprodutibilidade na CI/CD.

54
Q

Como a CI/CD se encaixa na cultura DevOps?

A

A CI/CD é uma prática central do DevOps, apoiando a colaboração entre as equipes de desenvolvimento e operações e permitindo a entrega rápida e confiável de software.

55
Q

Como a CI/CD se encaixa na cultura DevSecOps?

A

No DevSecOps, a CI/CD é usada para integrar a segurança em todas as fases do ciclo de vida do desenvolvimento de software, permitindo a detecção e correção rápidas de vulnerabilidades.

56
Q

Como a CI/CD pode ser usada para melhorar a qualidade do software?

A

A CI/CD melhora a qualidade do software ao permitir a detecção precoce de bugs e outros problemas, através de builds e testes automáticos a cada integração.

57
Q

Como a CI/CD pode ser usada para acelerar o tempo de lançamento de novas funcionalidades?

A

A CI/CD acelera o tempo de lançamento de novas funcionalidades ao automatizar o processo de build, teste e deploy, permitindo que as alterações sejam implementadas rapidamente.