Tabla de contenido
Por que razão devemos contêr as nossas aplicações? Em primeiro lugar, é de notar que uma aplicação pode funcionar correctamente num sistema sem contentores ou dentro de um contentor. Pode funcionar correctamente em qualquer dos modos.
Então porquê “perder tempo” a passar a aplicação para contentores?
Quando preparamos uma aplicação para correr em contentores, não estamos a perder tempo. Pelo contrário, estamos a poupar tempo no futuro.
Deixe-me explicar, quando uma aplicação está preparada para funcionar em contentores, estamos a tornar a aplicação mais independente de um sistema porque podemos actualizar o sistema onde os contentores funcionam sem afectar a aplicação e, pelo contrário, podemos actualizar a imagem da aplicação sem afectar o sistema base. Por conseguinte, fornecemos uma camada de isolamento à aplicação.
É importante notar que a imagem que preparamos para a candidatura deve estar em conformidade com as normas da OCI ou Open Container Initiative (como pode ser verificado em https://opencontainers.org/ ), ou seja, a imagem está em conformidade com a OCI, podemos executar a imagem da nossa aplicação em todas as rotinas compatíveis, tais como:
- Docker
- Containerd
- Cri-o
- Rkt
- Runc
Bem, o que mais ganhamos em ter a aplicação pronta a correr num contentor?
Para além do acima referido, podemos tirar partido das rotinas anteriores e gestores autónomos como o Docker com orquestradores como os orquestradores:
- Docker-swarm (não é o mais utilizado)
- Kubernetes (o derradeiro orquestrador)
Este tipo de orquestrador oferece grandes vantagens para a nossa aplicação, tais como alta disponibilidade, escalabilidade, monitorização, flexibilidade, etc. Fornecem uma camada extra de abstracção que facilita a gestão de redes, volumes, gestão de instâncias, e tudo relacionado com a gestão de contentores.
Por exemplo, utilizando Kubernetes pode ter uma aplicação em produção e tê-la à escala baseada na utilização de CPU ou RAM. Pode também certificar-se de que há um certo número de casos. E, mais importante ainda, é possível deslocar-se sem causar um desastre, gerindo muito rapidamente um rollback, se necessário.
Conclusões
Há apenas alguns anos atrás, a indústria em geral só via isto como viável para ambientes não produtivos (excepto para os mais ousados), mas recentemente estamos a assistir a uma adopção cada vez mais generalizada deste tipo de tecnologia. De facto, a grande maioria dos principais actores da tecnologia das nuvens tem serviços relacionados com as nuvens no local.