Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 

Repository files navigation

Deploy do Heimdall no Cluster Kubernetes

Este guia descreve como implantar o Heimdall em um cluster Kubernetes com k3s, utilizando um Deployment, Service e Persistent Volume Claim (PVC).

Índice

Pré-requisitos

  • 3 Raspberry Pi 4 com pelo menos 2GB de RAM.
  • Cartões microSD com pelo menos 16GB.
  • Sistema operacional: Ubuntu Server.
  • Rede interna com DHCP configurado.

Arquitetura do Cluster

  • Master Node: 1 Raspberry Pi (com k3s server).
  • Worker Nodes: 2 Raspberry Pi (com k3s agent).
  • Rede: Flannel como CNI (Container Network Interface).
  • LoadBalancer: MetalLB configurado em modo Layer 2.

Configuração do Heindall

    1. Arquivo de Deployment

    Crie um arquivo YAML chamado heimdall-deployment.yaml com o seguinte conteúdo:

    apiVersion: apps/v1
          kind: Deployment
          metadata:
            name: heimdall-deployment
          spec:
            replicas: 1
            selector:
              matchLabels:
                app: heimdall
            template:
              metadata:
                labels:
                  app: heimdall
              spec:
                containers:
                - name: heimdall
                  image: linuxserver/heimdall
                  ports:
                  - containerPort: 80
                  env:
                  - name: TZ
                    value: "America/Sao_Paulo"
                  volumeMounts:
                  - mountPath: /config
                    name: config-volume
                volumes:
                - name: config-volume
                  persistentVolumeClaim:
                    claimName: heimdall-pvc
       

    2. Arquivo de Persistent Volume (PV)

    Crie um arquivo YAML chamado heimdall-pv.yaml com o seguinte conteúdo:

    apiVersion: v1
      kind: PersistentVolume
      metadata:
        name: heimdall-pv
        labels:
          app: heimdall
      spec:
        capacity:
          storage: 2Gi
        accessModes:
          - ReadWriteOnce
        persistentVolumeReclaimPolicy: Retain
        storageClassName: standard
        hostPath:
          path: /mnt/data/heimdall
      

    3. Arquivo de Persistent Volume Claim (PVC)

    Crie um arquivo YAML chamado heimdall-pvc.yaml com o seguinte conteúdo:

    apiVersion: v1
      kind: PersistentVolumeClaim
      metadata:
        name: heimdall-pvc
      spec:
        accessModes:
          - ReadWriteOnce
        resources:
          requests:
            storage: 2Gi
        storageClassName: standard
        

    4. Arquivo de Service

    Crie um arquivo YAML chamado heimdall-service.yaml com o seguinte conteúdo:

    apiVersion: v1
      kind: Service
      metadata:
        name: heimdall
      spec:
        selector:
          app: heimdall
        ports:
          - protocol: TCP
            port: 80
            targetPort: 80
        type: LoadBalancer
      

    Aplicando os arquivos ao cluster

    Execute os seguintes comandos para aplicar os arquivos YAML ao cluster Kubernetes:

    kubectl apply -f heimdall-deployment.yaml
        kubectl apply -f heimdall-service.yaml
        kubectl apply -f heimdall-pvc.yaml
      

    Acessando o Heimdall

    Após a implantação, você poderá acessar o Heimdall através do IP alocado pelo MetalLB:

    http://<IP-externo-do-Heimdall:80>

    7. Conclusão

    Agora o Heimdall está em execução no seu cluster Kubernetes, pronto para ser usado como seu painel inicial de aplicativos!

    Recursos Adicionais

    Contribuições

    Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.

    Licença

    Este projeto está licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

About

Esse repositório irá auxiliar com a instalação do Heimdall com Kubernetes.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors