Hoje, tenho o prazer de anunciar o projeto Harvester , software de infraestrutura hiperconvergente (HCI) de código aberto desenvolvido com Kubernetes. O Harvester fornece virtualização totalmente integrada e recursos de armazenamento em servidores bare-metal. Nenhum conhecimento de Kubernetes é necessário para usar o Harvester.
Por que Harvester?
Nos últimos anos, vimos muitas tentativas de trazer o gerenciamento de VM para plataformas de contêiner, incluindo nosso próprio RancherVM e outras soluções como KubeVirt e Virtlet. Vimos alguma demanda por soluções como essa, principalmente para executar software legado lado a lado com contêineres. Mas, no final, nenhuma dessas soluções chegou perto da popularidade dos produtos de virtualização padrão do setor, como vSphere e Nutanix.
Acreditamos que o motivo dessa falta de popularidade é que todos os esforços até agora para gerenciar VMs em plataformas de contêiner exigem que os usuários tenham um conhecimento substancial das plataformas de contêiner. Apesar do Kubernetes se tornar um padrão do setor, o conhecimento dele não é muito difundido entre os administradores de VM. Eles estão familiarizados com conceitos como imagens ISO, volumes de disco, NICs e VLANS – não conceitos como pods e PVCs.
Projeto Harvester.
O Project Harvester é uma alternativa de código aberto ao software de infraestrutura hiperconvergente proprietário tradicional. O Harvester foi desenvolvido com base em tecnologias de código aberto de ponta, incluindo Kubernetes, KubeVirt e Longhorn . Projetamos o Harvester para ser fácil de entender, instalar e operar. Os usuários não precisam entender nada sobre o Kubernetes para usar o Harvester e aproveitar todos os benefícios do Kubernetes.
Harvester v0.1.0 tem os seguintes recursos:
- Instalação de ISO
Você pode baixar o ISO da página de lançamento no Github e instalá-lo diretamente nos nós bare-metal. Durante a instalação, você pode escolher criar um novo cluster ou adicionar o nó atual a um cluster existente. O Harvester criará automaticamente um cluster com base nas informações fornecidas.
Instalar como um gráfico Helm em um cluster Kubernetes existente
Para fins de desenvolvimento, você pode instalar o Harvester em um cluster Kubernetes existente. Os nós devem ser capazes de suportar KVM por meio de virtualização de hardware (Intel VT-x ou AMD-V) ou virtualização aninhada.
2. VM Lifecycle Management
Desenvolvido por KubeVirt, Harvester suporta a criação / exclusão / atualização de operações para VMs, bem como injeção de chave SSH e inicialização em nuvem.
O Harvester também fornece um console gráfico e um console de porta serial para que os usuários acessem a VM na IU.
3. Gerenciamento de armazenamento
A Harvester possui um sistema de armazenamento em bloco integrado de alta disponibilidade com tecnologia Longhorn. Ele usará o espaço de armazenamento no nó, para fornecer armazenamento altamente disponível para as VMs dentro do cluster.
4. Gerenciamento de rede
O Harvester oferece várias opções diferentes para rede.
Por padrão, cada VM dentro do Harvester terá uma NIC de gerenciamento, com tecnologia de rede de sobreposição Kubernetes.
Os usuários também podem adicionar NICs adicionais às VMs. Atualmente, há suporte para VLAN.
A funcionalidade de várias redes no Harvester é fornecida pela Multus.
5. Gestão de Imagens
Harvester possui um repositório de imagens integrado, permitindo aos usuários baixar / gerenciar facilmente novas imagens para as VMs dentro do cluster.
O repositório de imagens é desenvolvido por MinIO.
Instalar
Para instalar o Harvester, basta carregar o ISO do Harvester em sua máquina bare-metal (máquina fisica) e inicializá-lo.
Para o primeiro nó onde você instala o Harvester, selecione Create a new Harvester cluster .
Posteriormente, você será solicitado a inserir a senha que será usada para entrar no console no host, bem como “Cluster Token”. O Cluster Token é um token necessário posteriormente para outros nós que desejam ingressar no mesmo cluster.
Em seguida, você será solicitado a escolher a NIC que o Harvester usará. O NIC selecionado será usado como a rede para o tráfego de gerenciamento e armazenamento.
Depois que tudo estiver configurado, você será solicitado a confirmar a instalação do Harvester.
Depois de instalado, o host será reinicializado e inicializado no console do Harvester.
Posteriormente, ao adicionar um nó ao cluster, será solicitado que você insira o endereço de gerenciamento (mostrado acima), bem como o token do cluster que você definiu ao criar o cluster.
Veja aqui uma demonstração do processo de instalação.
Como alternativa, você pode instalar o Harvester como um gráfico Helm em seu cluster Kubernetes existente, se os nós em seu cluster tiverem suporte para virtualização de hardware. Veja aqui para mais detalhes. E aqui está uma demonstração usando o Digital Ocean que oferece suporte à virtualização aninhada.
Como acessar e usar.
Depois de instalado, você pode usar o URL de gerenciamento mostrado no console do Harvester para acessar a UI do Harvester.
O nome de usuário / senha padrão é documentado aqui .
Uma vez logado, você verá o painel.
A primeira etapa para criar uma máquina virtual é importar uma imagem para o Harvester.
Selecione a página Imagens e clique no botão Criar , preencha o campo URL e o nome da imagem será preenchido automaticamente para você.
Em seguida, clique em Criar para confirmar.
Você verá o progresso em tempo real da criação da imagem na página Imagens .
Assim que a criação da imagem for concluída, você pode começar a criar a VM usando a imagem.
Selecione a página Máquina Virtual e clique em Criar .
Preencha os parâmetros necessários para a criação, incluindo volumes, redes, inicialização de nuvem, etc. Em seguida, clique em Criar .
VM será criada em breve.
Depois de criado, clique no botão Console para obter acesso ao console da VM.
Veja aqui uma demonstração da IU.
Status atual e roadmap
O Harvester está nos estágios iniciais. Acabamos de lançar a versão v0.1.0 (alfa). Experimente e faça parte desta iniciativa.
Temos os seguintes itens para o futuro em nosso roteiro:
- Suporte para migração online
- Suporte PXE
- Backup / restauração de VM
- Atualização com tempo de inatividade zero
Espero que tenha gostado do artigo, segue abaixo mais algumas artigos interessantes
unRAID – Solução de armazenamento, virtualização KVM e DOCKER numa única plataforma.