GCP: Desglose da pila informática de Google Cloud Platform

A tradución do artigo foi elaborada expresamente para o alumnado do curso "Servizos na nube".

Estás interesado en desenvolverte nesta dirección? Mira a gravación dunha clase maxistral profesional "Servizo AWS EC2", que estivo a cargo de Egor Zuev - TeamLead en InBit e o autor do programa educativo en OTUS.

GCP: Desglose da pila informática de Google Cloud Platform

Google Cloud Platform (GCP) ofrece moitos servizos, e en particular a pila de cálculo que contén Google Compute Engine (GCE), Google Kubernetes Engine (anteriormente Container Engine) (GKE), Google App Engine (GAE) e Google Cloud Functions. (GCF). ). Todos estes servizos teñen nomes interesantes, pero poden non ser totalmente obvios sobre as súas características e o que os fai únicos entre si. Este artigo está destinado a aqueles que son novos nos conceptos de nube, en particular os servizos na nube e GCP.

GCP: Desglose da pila informática de Google Cloud Platform

1. Pila informática

A pila de cálculo pódese considerar como unha abstracción en capas sobre o que un sistema informático pode proporcionar. Esta pila ascende (move cara arriba) de "ferro nu" (metal espido) referíndose aos compoñentes de hardware reais do ordenador, ata as funcións (funcións), que é a unidade de cálculo máis pequena. O que é importante ter en conta sobre a pila é que os servizos vanse agregando a medida que avanzan na pila, como a sección "aplicacións" (aplicacións) que se mostra na Figura 1 a continuación debe conter todos os compoñentes básicos do recipiente (contenedores), máquinas virtuais (máquinas virtuais) e ferro. Do mesmo xeito, o compoñente da máquina virtual debe conter o hardware dentro para funcionar.

GCP: Desglose da pila informática de Google Cloud Platform

Figura 1: pila informática | Imaxe procedente de Google Cloud

Este modelo, que se mostra na Figura 1, é a base para describir as ofertas dos provedores de nube. Así, algúns provedores só poden proporcionar, por exemplo, contedores e servizos por debaixo da calidade da pila, mentres que outros poden proporcionar todo o que se mostra na Figura 1.

- Se estás familiarizado cos servizos na nube, vai a sección 3para ver o equivalente de GCP
- Se só queres un resumo dos servizos na nube, vai a sección 2.4

2. Servizos na nube

O mundo da computación na nube é moi diverso. Os provedores de nube ofrecen moitos servizos adaptados aos diferentes requisitos dos clientes. Quizais escoitou falar de termos como IaaS, PaaS, SaaS, FaaS, KaaS, etc. con todas as letras do alfabeto seguidas de "aaS". A pesar da estraña convención de nomenclatura, forman un conxunto de servizos de provedores na nube. Afirmo que hai 3 ofertas principais "como servizo" (como servizo) que case sempre ofrecen os provedores de nube.

Estes son IaaS, PaaS e SaaS, que significan Infraestrutura como servizo, Plataforma como servizo e Software como servizo, respectivamente. É importante visualizar os servizos na nube como capas de servizo. Isto significa que a medida que avanza ou baixa dun nivel a outro, vostede, como cliente, está atravesando varias opcións de servizo que se engaden ou se eliminan da oferta principal. É mellor pensar nisto como unha pirámide, como se mostra na Figura 2.
GCP: Desglose da pila informática de Google Cloud Platform

Figura 2: Pirámide AaS | Imaxe procedente de Garaxe Rubí

2.1 Infraestrutura como servizo (IaaS)

Este é o nivel máis baixo que pode ofrecer un provedor de servizos na nube e inclúe un provedor de nube que proporciona a infraestrutura simple, incluíndo middleware, cables de rede, procesadores, GPU, RAM, almacenamento externo, servidores e imaxes do sistema operativo base. Por exemplo, Debian Linux, CentOS, Windows, etc.

Se solicitas unha oferta a un provedor de servizos na nube IaaS, isto é o que deberías esperar. Corresponde a ti, como cliente, montar estas pezas para executar o teu negocio. A extensión do que tes que traballar pode variar dun provedor a outro, pero xeralmente só tes o hardware e o SO e ti fas o resto. Exemplos de IaaS son AWS Elastic Compute, Microsoft Azure e GCE.

Algunhas persoas quizais non lles guste o feito de que teñan que instalar imaxes do sistema operativo e xestionar a rede, o equilibrio de carga ou preocuparse polo tipo de procesador que é ideal para a súa carga de traballo. Aquí é onde ascendemos pola pirámide ata PaaS.

2.2 Plataforma como servizo (PaaS)

PaaS só inclúe un provedor de servizos na nube que ofrece unha plataforma específica na que os usuarios poden crear aplicacións. É unha abstracción sobre IaaS, o que significa que o provedor da nube coida todos os detalles dos tipos de CPU, memoria, RAM, almacenamento, redes, etc. Como se mostra na Figura 2, vostede, como cliente, ten pouco control sobre o real. plataforma porque o provedor xestiona todos os detalles da infraestrutura por ti. Solicita a plataforma escollida e constrúe o proxecto sobre ela. Un exemplo de PaaS é Heroku.

Para algúns, isto pode ser un nivel demasiado alto, xa que non necesariamente quere construír o proxecto na plataforma especificada, senón que necesita un conxunto de servizos directamente do provedor de servizos na nube. Aquí é onde SaaS entra en xogo.

2.3 Software como servizo (SaaS)

SaaS é o servizo máis común que ofrecen os provedores de servizos na nube. Están destinados aos usuarios finais e están dispoñibles principalmente a través de sitios web como Gmail, Google Docs, Dropbox, etc. En canto a Google Cloud, hai varias ofertas fóra da súa pila informática que son SaaS. Estes inclúen Data Studio, Big Query, etc.

2.4 Resumo dos servizos na nube

Compoñentes
IaaS
PaaS
SaaS

Que tes?
Obtén a infraestrutura e paga en consecuencia. A liberdade de usar ou instalar calquera software, sistema operativo ou combinación dos mesmos.
Aquí tes o que pides. Software, hardware, SO, entorno web. Obtén unha plataforma lista para usar e paga en consecuencia.
Aquí non tes que preocuparte por nada. Proporcionache un paquete personalizado preinstalado e só tes que pagar en consecuencia.

Valor
Nivel básico de informática
Top IaaS
É esencialmente un paquete completo de servizos.

Dificultades técnicas
Coñecementos técnicos necesarios
Ofrécese unha configuración básica, pero aínda é necesario o coñecemento do dominio.
Non hai que preocuparse cos detalles técnicos. O provedor de SaaS ofrece todo.

Con que funciona
Máquinas virtuais, almacenamento, servidores, rede, equilibradores de carga, etc.
Tempos de execución (como tempo de execución de Java), bases de datos (como MySQL, Oracle), servidores web (como Tomcat, etc.)
Aplicacións como servizos de correo electrónico (Gmail, Yahoo mail, etc.), sitios de interacción social (Facebook, etc.)

Gráfica de popularidade
Popular entre desenvolvedores altamente cualificados, investigadores que requiren personalización para adaptarse aos seus requisitos ou área de investigación
O máis popular entre os desenvolvedores xa que poden centrarse no desenvolvemento das súas aplicacións ou scripts. Non teñen que preocuparse por cargar tráfico ou xestionar o servidor, etc.
Máis popular entre os consumidores xerais ou empresas que usan software como correo electrónico, compartición de ficheiros, redes sociais, xa que non teñen que preocuparse polos detalles técnicos.

Figura 3: Resumo das principais ofertas de nube | Imaxe cortesía Amir en Blog Special

3. Paquete informático Google Cloud Platform

Despois de analizar as ofertas típicas dos provedores de nube na Sección 2, podemos comparalas coas ofertas de Google Cloud.

3.1 Google Compute Engine (GCE) - IaaS

GCP: Desglose da pila informática de Google Cloud Platform

Figura 4: icona de Google Compute Engine (GCE).

GCE é unha oferta IaaS de Google. Con GCE, pode crear libremente máquinas virtuais, asignar recursos de CPU e memoria, escoller o tipo de almacenamento como SSD ou HDD e a cantidade de memoria. É case coma se constrúas o teu propio ordenador/estación de traballo e te ocupases de todos os detalles de como funciona.

En GCE, podes escoller entre microinstancias con procesadores de 0,3 núcleos e 1 GB de RAM ata monstros de 96 núcleos con máis de 300 GB de RAM. Tamén pode crear máquinas virtuais de tamaño personalizado para as súas cargas de traballo. Para aqueles que estean interesados, estas son máquinas virtuais que pode construír.

Tipos de máquinas | Documentación de Compute Engine | Google Cloud

3.2. Google Kubernetes Engine (GKE) - (Caas/Kaas)

GCP: Desglose da pila informática de Google Cloud Platform

Figura 5: icona de Google Kubernetes Engine (GKE).

GKE é unha oferta informática única de GCP que é unha abstracción sobre Compute Engine. De forma máis xeral, GKE pódese clasificar como Container as a Service (CaaS), ás veces denominado Kubernetes as a Service (KaaS), o que permite aos clientes executar facilmente os seus contedores Docker nun ambiente Kubernetes totalmente xestionado. Para aqueles que non estean familiarizados cos contedores, os contedores axudan a modular os servizos/aplicacións, polo que diferentes contedores poden conter servizos diferentes, por exemplo, un contedor pode aloxar a interface da súa aplicación web e outro pode conter o seu back-end. Kubernetes automatiza, coordina, xestiona e desprega os teus contedores. Máis información aquí.

Google Kubernetes Engine | Google Cloud

3.3 Google App Engine (GAE) - (PaaS)

GCP: Desglose da pila informática de Google Cloud Platform

Figura 6: Icona de Google App Engine (GAE).

Como se mencionou na sección 2.2, PaaS sitúase por riba de IaaS e, no caso de GCP, tamén se pode ver como unha proposta por riba de GKE. GAE é un Google PaaS especializado, e como mellor se describen eles mesmos, "trae o teu código, nós encargarémonos do resto".

Isto garante que os clientes que usan GAE non teñan que lidiar con hardware/middleware subxacente e xa poidan ter unha plataforma preconfigurada lista para funcionar; o único que teñen que facer é proporcionar o código necesario para executalo.

GAE xestiona automaticamente a escala para satisfacer a carga e a demanda dos usuarios, o que significa que se o seu sitio de flores alcanza un pico de súpeto porque se achega o Día de San Valentín, GAE encargarase de escalar a infraestrutura subxacente para satisfacer a demanda e garantir que o seu sitio web non caiga debido ao aumento da demanda. . Isto significa que paga exactamente polos recursos que a súa aplicación precisa neste momento.

GAE usa Kubernetes ou a súa versión integrada para xestionar todo isto para que non teñas que preocuparte por iso. GAE é o máis adecuado para empresas que non están interesadas na infraestrutura subxacente e só se preocupan por facer accesible a súa aplicación da mellor maneira posible.

Na miña opinión, GAE é o mellor lugar para comezar se es un programador cunha gran idea pero non queres ocuparte da tarefa de configurar servidores, equilibrar a carga e todos os demais traballos de devops/SRE que consumen moito tempo. Co paso do tempo, podes probar GKE e GCE, pero esa é só a miña opinión.

Exención de responsabilidade: AppEngine úsase para aplicacións web, non para aplicacións móbiles.

Para información: App Engine: crea backends web e móbiles escalables en calquera idioma | Google Cloud

3.4 Funcións de Google Cloud - (FaaS)

GCP: Desglose da pila informática de Google Cloud Platform

Figura 7: Icona de Google Cloud Functions (GCF).

Espero que teñades notado unha tendencia analizando as propostas anteriores. Canto máis alto subas na escaleira de GCP Computing, menos tes que preocuparte pola tecnoloxía subxacente. Esta pirámide culmina na unidade de cálculo máis pequena posible, a función, como se mostra na sección 1.

GCF é unha oferta GCP relativamente nova que aínda está en fase beta (no momento de escribir este artigo). As funcións na nube permiten que determinadas funcións escritas por un programador sexan activadas por algún evento.

Están dirixidos por eventos e están no corazón da palabra de moda "sen servidor", o que significa que non coñecen servidores. As funcións na nube son moi sinxelas e teñen moitos usos diferentes que requiren pensar en eventos. Por exemplo, cada vez que se rexistra un novo usuario, pódese activar unha función na nube para alertar aos desenvolvedores.

Nunha fábrica, cando un determinado sensor alcanza un determinado valor, pode activar unha función na nube que faga algún procesamento da información, ou avise a algún persoal de mantemento, etc.

Cloud Functions - Computación de servidor impulsada por eventos | Google Cloud

Conclusión

Neste artigo, falamos sobre as diferentes ofertas na nube como IaaS, PaaS, etc. e como a pila de Google Compute implementa estas diferentes capas. Vimos que as capas de abstracción ao pasar dunha categoría de servizo a outra, como IaaS a Paas, requiren menos coñecemento do subxacente.

Para a empresa, isto proporciona unha flexibilidade crítica que non só cumpre os seus obxectivos operativos, senón que tamén satisface outras áreas clave como a seguridade e o custo. Resumindo:

motor de cálculo - permítelle crear a súa propia máquina virtual asignando certos recursos de hardware, como RAM, procesador, memoria. Tamén é bastante práctico e de baixo nivel.

Motor Kubernetes é un paso adiante respecto de Compute Engine, que che permite usar Kubernetes e contedores para xestionar a túa aplicación, o que che permite escalala segundo sexa necesario.

App Engine é un paso máis que Kubernetes Engine, que che permite centrarse só no teu código, mentres que Google ofrece todos os requisitos da plataforma subxacente.

Funcións da nube é o cumio da pirámide computacional, o que lle permite escribir unha función sinxela que, cando se executa, utiliza toda a infraestrutura subxacente para calcular e devolver un resultado.

Спасибо за внимание!

Twitter: @martinomburajr

Fonte: www.habr.com

Engadir un comentario