Infraestrutura para Sistemas de Software
Semana 1 4
Os componentes de uma rede precisam ser implementados de acordo com as necessidades dos usuários que também fazem parte da estrutura de rede. Os dispositivos definem se os dados poderão ser transmitidos somente dentro da rede ou se serão retransmitidos a outras redes a partir da internet. Os elementos podem fazer partes de diferentes camadas, como as placas de redes e roteadores (na camada de rede) e o switch (na camada de enlace).
Após análise do argumento apresentado, avalie as asserções a seguir e a relação proposta entre elas.
I. Quando se usa um switch, as informações trafegarão na mesma rede, já que os switches são componentes de comutação que funcionam na rede local para interconectar dispositivos que estão no mesmo perímetro e não podem trafegar informações externamente.
PORQUE
II. Para isso, deve-se iniciar o processo de roteamento, no qual o roteador é o dispositivo da camada de rede responsável por encaminhar pacotes e dados entre as redes, construindo tabelas que permitam conhecer esses caminhos.
A respeito dessas asserções, assinale a alternativa correta:
Um datagrama ou pacote definido em IPV4 tem um formato específico.
Considerando as características do pacote no IPV4, julgue se são (V) verdadeiras ou (F) falsas as afirmativas a seguir.
( ) O comprimento do pacote é medido em bytes, e seu tamanho máximo teórico é 65.535, de acordo com o padrão estabelecido.
( ) Tanto o endereço fonte como o destino são definidos por 32 bits, separados em quadro octetos.
( ) Uma máscara de rede tem 32 bits e é utilizada para a permitir a identificação do endereço da rede e do endereço do host.
( ) Dependendo do tipo de serviço (type of service), presente no cabeçalho do pacote, pode ser dada certa prioridade ao seu encaminhamento.
Agora, assinale a alternativa que apresenta a sequência CORRETA.
A comunicação entre serviços de rede se dá por meio de um tradutor, que é responsável por comunicar diferentes tipos de serviços e portas de comunicação. No âmbito das redes de comunicação, é conhecido pelo nome de ________, o qual define o formato e a ordem das mensagens trocadas entre duas ou mais entidades comunicantes e controla as ações desde a transmissão até a recepção. A internet e as ______________, em geral, fazem um uso intenso dos protocolos. Diferentes tipos são utilizados para realizar diferentes tarefas de comunicação.
Preencha as lacunas assinalando a alternativa CORRETA.
Atualmente, a infraestrutura computacional é importante para garantir a disponibilidade do serviço. Ela é responsável por manter ativas as aplicações que milhões de usuários utilizam todos os dias.
Sobre isso, analise as asserções a seguir e a relação proposta entre elas.
No contexto atual, em que grande parte das aplicações são executadas em algum tipo de nuvem computacional, muitos aspectos precisam ser avaliados.
PORQUE
A segurança do acesso dos usuários, a conectividade com os data centers e a disponibilidade dos servidores são aspectos a serem considerados nas infraestruturas.
Com base na análise das asserções, conclui-se que:
Semana 2 8
O servidor web é responsável por aceitar requisições HTTP. De acordo com o protocolo HTTP, quando o navegador (cliente) envia uma solicitação para obter um arquivo desejado, o servidor, em geral, envia o texto da página para o navegador, que lê o arquivo e formata a página na tela.
Considerando as características do servidor web, julgue se são (V) verdadeiras ou (F) falsas as afirmativas a seguir.
( ) O HyperText Transport Protocol (HTTP) é um protocolo no nível de aplicação para sistemas distribuídos e colaborativos que trocam informações por hipermídia (HTML, links etc.).
( ) Uma das características do servidor webé a troca de informações (request e response) entre o cliente e o servidor.
( ) O servidor web espera, trata e responde as requisições.
( ) Os servidores web, atualmente, estão em obsolescência, sendo os menos utilizados nas aplicações na internet, pois apresentam muitos erros e tendem a não disponibilizar aplicações variadas.
Agora, assinale a alternativa que apresenta a sequência CORRETA.
Para garantir a segurança e o controle dos recursos de rede, listas de controle de acesso (ACL, do inglês Access Control List)
são um recurso importante a ser usado pelos administradores de rede.
Uma ACL permite associar permissões de acesso a recursos do
sistema.
Assinale a alternativa que trata corretamente a filtragem de pacotes via ACL.
Leia o conteúdo apresentado a seguir.
Há três princípios básicos que norteiam a definição de requisitos de segurança da informação. O princípio _____________ diz respeito à certeza de que os dados estão acessíveis quando forem necessários e onde forem necessários. Já o princípio _____________ diz respeito à certeza de que os dados não foram modificados de forma indevida, ou seja, de que não há a possibilidade de inconsistência. Obedecendo ao princípio _____________ garante-se que somente os indivíduos autorizados a acessar os dados podem fazê-lo.
Assinale a alternativa que apresenta correta e respectivamente os elementos que completam as lacunas anteriores.
Um dos servidores web de código aberto mais conhecidos e implementados é o Apache HTTP, que pode ser instalado em servidores Linux e Windows, passando a permitir que os serviços possam ser acessados de diferentes navegadores. O Apache HTTP pode ser instalado com o auxílio do pacote RPM (Red Hat Package Manager). Após tal instalação, determinados arquivos são colocados em diretórios bem definidos.
Em relação ao diretório /etc/httpd/conf, assinale a alternativa CORRETA.
O firewall pode trabalhar de diversas formas, mas sempre com o objetivo de proteger o fluxo de requisições de entrada e saída da rede. Algumas formas de segurança são os bloqueios por meio das ACL (access control) ou o controle de acesso através da implementação do proxy squid, que bloqueia a entrada de determinados conteúdos.
Com relação ao comando que instala o proxy squid na versão do ubuntu ou derivados, assinale a alternativa CORRETA:
O controle de acesso é um mecanismo muito importante para a segurança das aplicações. Com ele, determinamos quais recursos podem ser acessados e quais operações podem ser realizadas a partir dos recursos.
Com relação às características do controle de acesso, avalie as afirmativas a seguir.
O controle de acesso visa limitar as ações que um usuário de um sistema pode realizar no ambiente.
O controle de acesso tem como objetivo prevenir que o sistema/aplicação esteja ou vá para um estado inseguro.
O controle de acesso tem a capacidade de permitir ou bloquear a utilização de algo por alguém.
O principal objetivo do controle de acesso é restringir a utilização de determinados recursos por um usuário ou grupo de usuários.
Está correto o que se afirma em:
Para o controle de dados e requisições, tanto da entrada quanto da saída, é preciso ter uma aplicação que funcione como um filtro para a rede, possibilitando criar uma barreira de proteção. O ____________ de conexões indesejadas e o recebimento de dados com base em uma fonte de destino e em conteúdos são as principais características do firewall. O firewall, além de realizar bloqueios para a proteção da rede, pode ser responsável por ____________ o tráfego (requisições) que passou por ele.
Preencha as lacunas assinalando a alternativa CORRETA.
O nmap é um varredor de portas de rede, e sua principal função é verificar um conjunto de hosts de destino para saber quais portas TCP e UDP possuem servidores executando nelas, já que a maioria dos serviços de rede está associada a um número de portas “bem conhecidas”. O comando utilizado no nmap é o seguinte: # nmap -sT host1.example.com.
Com relação ao comando utilizado no nmap e sua função, assinale a alternativa CORRETA.
Semana 3 8
São três os principais tipos de computação em nuvem, cada um com suas características e soluções.
Considerando os principais tipos de computação em nuvem, correlacione os termos a seguir aos seus principais conceitos.
1 – SAAS.
2 – PAAS.
3 – IAAS.
I – Middlewares e sistemas operacionais, em conjunto com a infraestrutura de comunicação.
II – De forma transparente, o software/ aplicação que o usuário utiliza ou deseja implantar faz uso dos sistemas operacionais virtualizados e de toda a infraestrutura de comunicação e processamento.
III – Provisão em geral de rede de comunicação e hardware para processamento e armazenamento de dados.
Agora, assinale a alternativa que apresenta a sequência correta.
Acerca das diferenças entre o modelo ISO/OSI e o modelo/arquitetura TCP/IP, assinale a alternativa correta:
Usando-se a computação em nuvem, uma classe de soluções é a 'Infraestrutura como Serviço' (IaaS, do inglês Infrastructure as a Service)
Acerca da IaaS, assinale a alternativa que apresente sua definição de forma mais completa.
Considere o arquivo httpd.conf e suas diretivas de configuração que são usadas para ajustar o funcionamento do servidor Web Apache. Analise as afirmações abaixo e escolha a alternativa correta.
I. As configurações em tempo de execução são armazenadas no arquivo httpd.conf. Este arquivo pode ser usado para controlar o comportamento-padrão do servidor Web Apache.
II. Todas as diretivas apresentadas no arquivo apenas configuram um valor.
III. A diretiva ServerRoot indica o caminho relativo para o diretório raiz do servidor, ou seja, em que local encontrar todos os recursos (arquivos, pastas etc.).
IV. A diretiva Listen indica em qual porta deve ser executado o servidor. O padrão da porta é 8080.
A computação em nuvem é para o cliente como um ambiente em que ele solicita recursos computacionais como serviço e é atendido mediante pagamento pelo uso. O cliente é parte integrante de toda uma cadeia complexa de elementos que envolvem custos para manutenção de hardware, software etc. Sobre esse assunto, assinale a alternativa correta:
Os modelos de implementação de computação em nuvem influenciam diretamente na forma como o gerenciamento é conduzido e nas responsabilidades atribuídas à organização contratante e ao provedor de nuvem.
Avalie as afirmações a seguir sobre os três modelos de computação em nuvem, e relacione adequadamente tais modelos às afirmações que os descrevem.
1 – Nuvem híbrida.
2 – Nuvem privada.
3 – Nuvem pública.
I – A organização gerencia seus recursos computacionais e pode optar por manter o data center num modelo gerenciado em sua infraestrutura interna ou hospedada por terceiros. Os responsável pelo oferecimento dos serviços, bem como, seus usuários pertencem à mesma organização.
II – A organização tipicamente terceiriza atividades não críticas, contratando provedores externos de serviços de computação em nuvens. Os serviços mais críticos são mantidos em nuvem privada.
III – O provedor se responsabiliza por manter, proteger e configurar os recursos, mas compartilha o ambiente entre múltiplos usuários em ambiente independente.
Assinale a alternativa que correlaciona adequadamente os dois grupos de informação:
O oferecimento de serviços de computação em nuvens conta com servidores remotos, o que implica a aquisição de infraestrutura de comunicação e de processamento pelo provedor. Dessa forma, a organização que contrata tais serviços costuma ter como um de seus benefícios, a economia de recursos, ficando isenta de investir em bens de capital e de arcar com custos de manutenção de infraestrutura.
Em relação a outros possíveis benefícios geralmente trazidos aos contratantes, identifique se são (V) verdadeiras ou (F) falsas as afirmativas a seguir.
I. ( ) A contratação de serviços de computação em nuvens permite que o controle da carga de trabalho seja realizado em tempo real e que o pagamento seja realizado com base nos recursos alocados.
II. ( ) A contratação de serviços de computação em nuvens propõe o uso de recursos e componentes para segurança, desempenho e monitoramento da nuvem, além de garantir a disponibilidade e o uso de serviços sob demanda.
III. ( ) Os serviços de computação em nuvens fazem uso de virtualização, assim sendo é facilitado o acesso dos contratantes a tais serviços, por meio de diferentes dispositivos e sistemas operacionais.
Assinale a alternativa que apresenta a sequência CORRETA.
Existem várias ferramentas em código aberto (open source) voltadas ao oferecimento de serviços em nuvem. Uma delas é o OpenStack que consiste num middleware construído em projeto iniciado em 2010, pela Rackspace. Sua arquitetura viabiliza a criação de infraestrutura como serviço e possui como características importantes ser simples de implementar e altamente escalável. Ele é formado por componentes, apresentando uma arquitetura modular.
Em relação aos componentes do OpenStack, identifique se são (V) verdadeiras ou (F) falsas as afirmativas a seguir.
I. ( ) O componente Horizon fornece autenticação e autorização para todos os serviços OpenStack.
II. ( ) O componente Nova fornece máquinas virtuais (VMs) sob demanda. Já o componente Neutron fornece conectividade de rede como serviço entre dispositivos de interface gerenciados por serviços OpenStack.
III. ( ) O componente Glance fornece APIs com compatibilidade e confiáveis. Já o componente Swift gerencia a criação de instâncias em execução nos hipervisores.
Semana 5 8
O Representational State Transfer (REST) utiliza URI, que são nomes aplicados para identificar recursos na Web, e é definido de diferentes formas, podendo ser visto como um estilo arquitetural para definir sistemas fracamente acoplados.
Assinale a alternativa correta que compreende o estilo arquitetural REST:
Os serviços Web são caracterizados por um conjunto de funções de aplicação relacionadas entre si. Para exemplificar a utilização de um Web service e a sua relação com o modelo de negócios, podemos considerar a comunicação entre a empresa X e Y. Considerando que a empresa X é o cliente e a empresa Y é o servidor, uma conexão A dinâmica deve permitir o uso de uma linguagem de programação capaz de suportar XML e HTTP do lado do cliente e implementar diferentes ambientes. É importante lembrar, porém, que os serviços Web trazem muitas vantagens, mas também desvantagens.
Assim, assinale a alternativa que representa uma desvantagem dos serviços Web.
Os web services são, essencialmente, baseados em três padrões fundamentais: SOAP, WSDL e UDDI.
Considerando as características dos protocolos de web services, julgue se são (V) verdadeiras ou (F) falsas as afirmativas a seguir.
I.
O XML-RPC é um protocolo de web service
utilizado para chamadas remotas de procedimento utilizando XML,
podendo ser considerado o antecessor do protocolo SOAP.
II. ( ) O protocolo UDDI é uma especificação técnica para descrever, descobrir e integrar os web services.
III. ( ) O protocolo UDP é orientado a conexão e implementa mecanismos de recuperação de erros.
IV.
O SOAP é um protocolo que define regras rígidas de
comunicação, e que tem vários padrões a ele associados para o
controle de todos os aspectos da troca de dados. Usando-se o SOAP são
definidas a sintaxe, a semântica e a ordem das mensagens que serão
trocadas entre aplicações e servidores.
Agora, assinale a alternativa que apresenta a sequência CORRETA.
Uma arquitetura orientada a serviços é um padrão de arquitetura de software de ______, cujas funcionalidades implementadas nos serviços/aplicações são disponibilizadas na forma de serviços para os ______ do serviço.
Os serviços Simple Object Access Protocol (SOAP) são baseados em uma estrutura multicomponente. O protocolo UniversalDescription, Discoveryand Integration (UDDI) é o diretório responsável por registrar informações dos serviços Web para que os clientes se comuniquem. Os dados armazenados e descritos pelo protocolo UDDI são segmentados em três principais categorias: páginas brancas, amarelas e verdes.
Assinale a alternativa que apresenta as informações tratadas pelas páginas brancas.
Sobre as características mais importantes dos serviços web que são projetados para suportar interoperabilidade entre máquinas pela rede, é correto afirmar que:
Um dos componentes da Arquitetura Orientada a Serviços (SOA) é o Enterprise Service Bus (ESB).
Identifique se as afirmativas a seguir sobre o Enterprise Service Bus (EBS) são (V) verdadeiras ou (F) falsas.
I.
Os serviços dependem do componente da SOA denominado EBS para terem controle sobre a lógica que encapsulam.
II.
O ESB possibilita que o fornecedor registre/publique
serviços no diretório, além de possibilitar que o consumidor encontre o
serviço que gostaria de requisitar.
III.
O EBS trata aplicativos como serviços, estabelecendo padrãos de
conectividade, trocas de mensagens e fornecendo apoio a outras tarefas.
Assinale a alternativa que apresenta a sequência correta.
Os web services são tecnologias para computação ____________ baseada na web. Eles permitem que diferentes serviços distribuídos sejam executados em uma variedade de plataformas e ____________.
Preencha as lacunas assinalando a alternativa CORRETA.
Semana 6 8
A Microservice Architecture (MSA) é um padrão de arquitetura distribuída criado para tratar de partes menores de software de forma independente, a fim de resolver a complexidade da arquitetura monolítica em um modelo publicado mediante processos separados e independentes.
Assinale a alternativa correta.
A Arquitetura de Microsserviços (MSA, do inglês, Microservice Architecture) é um padrão para construção de aplicações distribuídas. Trata-se de uma abordagem de desenvolvimento de software que consiste em dividir um aplicativo em serviços independentes e autônomos, cada um com sua própria responsabilidade.
Assinale a alternativa que contenha apenas vantagens comumente associadas ao uso da arquitetura de microserviços.
Assinale a alternativa correta a respeito da estrutura de microsserviços, considerando que ela está sendo comparada à estrutura monolítica.
Ao realizar uma análise comparativa entre os padrões arquiteturais P2P e cliente-servidor (CS), é correto afirmar que:
Padrão arquitetural é um conjunto de decisões de projeto de software que define utilidade, tipos de elementos, tipos de relações, propriedades de elementos e restrições de como os elementos se relacionam. Por exemplo, o padrão Layers (camadas) agrupa entidades de softwares em camadas de funcionalidades e permite o seu uso entre elas.
Quais são as principais arquiteturas padrões no âmbito de um projeto de software?
Assinale a alternativa CORRETA, a seguir.
Um padrão arquitetural é utilizado em projetos de software como um modelo de solução, para tornar possível resolver problemas após documentar e testar diferentes ações que envolvem a tomada de decisão. Esse padrão pode definir diferentes componentes, assim como estabelecer a utilidade de cada um deles.
Com base nas informações apresentadas, identifique se são (V) verdadeiras ou (F) falsas as afirmativas a seguir.
I.
Em um padrão arquitetural, são definidos componentes, serviços e
módulos, os quais são tipos de relações e dependência e de colaboração e
controle que representam as formas de elementos.
II.
O padrão arquitetural layer é definido em camadas, e cada uma delas explica quais entidades estão relacionadas ao software.
III.
O padrão arquitetural cliente-servidor permite a interação entre dois componentes por meio de solicitações request/reply, nas quais os clientes invocam e os servidores fornecem serviços.
Assinale a alternativa que apresenta a sequência correta.
Considerando microsserviços e sua arquitetura, analise as afirmações a seguir.
I. Não basta apenas desmembrar as aplicações em microsserviços. Também é necessário gerenciar esses microsserviços e orquestrá-los, além de processar os dados gerados e modificados por eles.
II. Uma importante característica dos microsserviços é o forte acoplamento da solução.
III. A escalabilidade encontra-se entre os benefícios importantes dos microsserviços.
IV. Podem ser usadas APIs diversas de modo que os desenvolvedores têm a liberdade de usar a linguagem e a tecnologia mais adequadas para o desenvolvimento de determinado microsserviço.
Está correto o que se afirma em:
Podemos citar como vantagens dos microsserviços em relação às construções de software de forma monolítica:
I. Para ser executada como uma aplicação funcional, uma arquitetura de microsserviços independe de trocas de mensagens entre os serviços.
II. Microsserviços implantados em diferentes contêineres possibilitam um melhor aproveitamento do hardware.
III. A atualização de uma aplicação grande que tem seus componentes separados, trabalhando juntos para resolver uma tarefa, tende a ser facilitada.
IV. Todas as partes implantáveis ficam linkadas na mesma aplicação.
Semana 7 5
Amazon é um dos principais provedores de nuvem por meio de software, infraestrutura e plataforma. Os serviços disponibilizados estão hospedados em data centers distribuídos geograficamente. Para os diferentes tipos de serviços, podem ser considerados modelos distintos de cobrança.
Considerando os modelos de cobrança aplicados na plataforma AWS, avalie as afirmações a seguir e as relacione adequadamente aos termos aos quais se referem.
1 — On demand.
2 — Instância spot.
3 — Instância reservada.
I — A utilização dos recursos não é considerada parâmetro, além disso, o valor é fixo, mesmo que seja ou não consumido algo.
II — A quantia a ser paga, varia conforme o tempo de utilização.
III — O provedor informa o cliente sempre que a capacidade da instância está perto de ser excedida.
Assinale a alternativa que correlaciona adequadamente os dois grupos de informação.
A
plataforma Azure é mantida e gerenciada pela Microsoft e permite que
aplicativos e serviços sejam executados na nuvem. O modelo de
implementação é baseado nos conceitos de computação em nuvem e promovem a
expansão do negócio.
Com relação aos serviços oferecidos e às suas características, avalie as afirmações a seguir.
I. Por sua elasticidade, é característica da computação em nuvem permitir que a capacidade dos serviços seja alterada em tempo real.
II. O Azure Spring Apps é uma plataforma de aplicativo sem servidor que permite criar, implantar, dimensionar e monitorar seus aplicativos de middleware Java Spring na nuvem.
III. Para serviços de dados e armazenamento pode ser usado o Azure Cosmos DB, que é um serviço de banco de dados multimodelo globalmente distribuído.
IV. A plataforma Azure é formada por mais de uma centena de serviços, que podem ser adaptados às necessidades do negócio.
Está correto que se afirma em:
Os serviços on-line exigem que o usuário realize um cadastro na plataforma, a fim de identificar e utilizar as informações de login para realizar acessos posteriores às soluções. Para criar uma conta no console AWS, alguns passos precisam ser seguidos.
Assinale a alternativa que apresenta passos a ser seguidos para criar a conta após o acesso à plataforma.
A plataforma AWS oferece diversos recursos de segurança para garantir que os clientes estejam protegidos ao utilizar seus serviços. O recurso de_______é utilizado para monitorar o ambiente de nuvem e os acessos ao ambiente, considerando o que é feito, quem faz e como é feito. Dentre os recursos utilizados para prover segurança à rede, estão os(as) _______, que permitem o uso de um conjunto de regras para controlar o tráfego. Já a _______ protege os dados da origem ao destino, evitando que sejam interceptados indevidamente.
Preencha as lacunas e marque a alternativa correta a seguir.
A tendência é que cada vez mais os serviços sejam acessados de forma distribuída. Essa abordagem não só permite o acesso aos recursos de qualquer lugar, sem a dependência de uma infraestrutura, como também provê maior desempenho para o processamento, considerando a segmentação e o balanceamento de carga aplicada aos ambientes de nuvem. Além disso, provedores como a Microsoft fornecem, por meio de suas plataformas, recursos que facilitam a autenticação, o monitoramento e a integração entre as equipes.
Analise os seviços específicos da Azure relacionados a diferentes necessidade de aplicações descritos a seguir.
1 — Azure Functions.
2 — Azure Service Fabric.
3 — Serviço de aplicativo do Azure (Azure App Service).
I — Esta plataforma fornece autenticação utilizando provedores sociais, dimensionamento automático baseado em tráfego, teste em produção e implantações baseadas em contêiner e contínuas. Recomenda-se este serviço quando for necessário dar suporte a clientes móveis e quando for necessário expor APIs REST.
II — Plataforma de sistemas distribuídos, a qual facilita compilar, empacotar, implantar e gerenciar microsserviços escalonáveis e confiáveis. É sugerido o uso deste serviço sempre que for necessário maior controle sobre a infraestrutura subjacente.
III — Mediante seu uso, a execução do código é disparada por solicitações HTTP, webhooks, eventos de serviço de nuvem ou em um agendamento. A codificação pode ser feita em várias linguagens de desenvolvimento.
Assinale a alternativa que correlaciona adequadamente os dois grupos de informação.