Está disponível o lançamento da plataforma PaaS livre Cozystack 0.30.0, construída sobre Kubernetes. O projeto visa fornecer uma plataforma pronta para provedores de hospedagem e um framework para construir nuvens privadas e públicas. A plataforma é instalada diretamente em servidores e abrange todos os aspectos da preparação da infraestrutura para a oferta de serviços gerenciados. O Cozystack permite iniciar e fornecer clusters Kubernetes, bancos de dados e máquinas virtuais. O código da plataforma está disponível no GitHub e é distribuído sob a licença Apache-2.0.
Como stack de tecnologia básica, utiliza-se Talos Linux e Flux CD. As imagens com o sistema, kernel e módulos necessários são pré-formadas e atualizadas de forma atômica, o que permite a dispensa de componentes como dkms e gerenciadores de pacotes, garantindo um funcionamento estável. Um método simples de instalação em um data center vazio é proporcionado através de PXE e um instalador semelhante ao Debian chamado talos-bootstrap.
A plataforma inclui uma implementação livre da infraestrutura de rede (fabric) baseado em Kube-OVN, e usa Cilium para organizar a rede de serviços, MetalLB para anunciar serviços externamente. O armazenamento é implementado no LINSTOR, onde é oferecido o uso de ZFS como camada base para o armazenamento e DRBD para replicação. Há uma pilha de monitoramento pré-configurada baseada em VictoriaMetrics e Grafana. Para executar máquinas virtuais, utiliza-se a tecnologia KubeVirt, que permite rodar máquinas virtuais clássicas diretamente em contêineres Kubernetes e já possui todas as integrações necessárias com o Cluster API para iniciar clusters Kubernetes gerenciados dentro de um cluster Kubernetes 'bare metal'.
Nos últimos um ano e meio, a equipe do projeto lançou sete novas versões: 0.24-0.30. Entre as mudanças nestas versões estão:
- Estabilização da plataforma para uso em configurações multi-DC. Foi feito um grande trabalho de ajuste no etcd, Cilium, Kuve-OVN, Linstor e outros componentes.
- Fortalecimento e aprimoramento da pilha de observabilidade. Foram adicionados painéis de controle para vários componentes e as configurações do Grafana foram otimizadas, acelerando seu desempenho.
- Lançamento de uma ferramenta adicional, cozy-proxy, que permite emitir endereços IP máquinas virtuais em K8s.
- Aparição do Vertical Pod Autoscaler. O VPA define automaticamente os limites de recursos que uma aplicação pode consumir. Os limites são determinados com base em métricas históricas.
- Refatoração e adição de novas seções na documentação.
- Mudança do repositório da plataforma e ferramentas auxiliares da organização aenix-io para a organização cozystack após a transferência do projeto para o CNCF Sandbox.
- Cozystack 0.30: Apresentado o GPU-operator e adicionada a suporte a GPU em máquinas virtuais. O suporte a GPU permite usar a plataforma para executar tarefas relacionadas ao aprendizado de máquina.
- Cozystack 0.29: Trabalhos realizados para aumentar a estabilidade e confiabilidade da plataforma. Vulnerabilidade CVE-2025-1974 no ingress-nginx corrigida. Conjunto de presets adicionado para limitar o consumo de recursos. Implementação da renovação automática de certificados. Adicionado firewall host Cilium. Adicionado processo para executar testes e2e no GitHub CI.
- Cozystack 0.28: Aparecimento do Vertical Pod Autoscaler, que define automaticamente os limites de recursos disponíveis para diferentes aplicações. A isolação de tenants é habilitada por padrão. A responsabilidade pela validação do source-ip foi transferida do Cilium para o Kube-OVN.
- Cozystack 0.27: Um conjunto de scripts linstor plunger foi proposto para corrigir automaticamente erros no LINSTOR (por exemplo, conexão perdida do DRBD, dispositivo loop travado, etc.). Foi adicionada a possibilidade de distribuir réplicas do PostgreSQL entre diferentes nós. Foram criados dashboards para monitoramento do ClickHouse e Piraeus.
- Cozystack 0.26: A estabilidade foi melhorada ao trabalhar em configurações multidata center. Foi adicionado o monitoramento da conectividade de rede. Agora é possível limitar recursos para inquilinos específicos dentro do cluster. O Goldpinger foi adicionado como ferramenta para monitorar latências entre data centers. A migração ao vivo de máquinas virtuais foi habilitada por padrão. A possibilidade de criar snapshots de volumes LINSTOR foi introduzida.
- Cozystack 0.25: Foi adicionado a ferramenta auxiliar cozy-proxy, que permite atribuir endereços IP inteiros às máquinas virtuais — em vez de portas separadas. No Cosyastack, as máquinas virtuais são baseadas em KubeVirt e geridas de forma similar aos pods. O Kubernetes não prevê a atribuição de endereços IP inteiros aos pods. O cozy-proxy resolve esse problema, o que é importante, por exemplo, para clientes de provedores de serviços cujas aplicações rodam em máquinas virtuais e precisam de um endereço IP separado. O monitoramento do etcd, Flux, Kafka foi aprimorado e dashboards correspondentes foram adicionados. Usuários que têm acesso apenas a determinados inquilinos agora podem baixar o kubeconfig.
- Cozystack 0.24: Adicionada a possibilidade de implantação via PXE, para carregar automaticamente o Talos Linux nos nós. O pacote smee (servidor dhcp+pxe) do conjunto Tinkerbell foi incluído. O Darkhttp foi substituído por uma solução desenvolvida internamente, o cozystack-assets-server. Plugins foram integrados na imagem do Grafana para que ele inicie mais rapidamente.
Fonte: opennet.ru
