Inicio Linux & Systems Networks & Infrastructure Cybersecurity Cloud & DevOps SIEM & Monitoring DFIR & Threat Intel Development & Other Todas las categorias Herramientas Proyectos Sobre

Instalación Kubeapps en Kubernetes

Instalación Kubeapps en Kubernetes

Tabla de contenidos

¿Que es Kubeapps? 

Kubeapps es una interfaz de usuario basada en web para implementar y administrar aplicaciones en clústeres de Kubernetes

Antes de nada, debemos instalar helm, para ello lo podemos realizar de múltiples formas, brew o snap.

Instalación de brew

BASH
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

Agregamos /home/linuxbrew/.linuxbrew/bin/brew en nuestro path, para ello editamos /etc/environment

CODE
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/linuxbrew/.linuxbrew/bin/brew"

exportamos las variables

BASH
source /etc/environment && export PATH

Instalación de helm

Instalación mediante brew

CODE
brew install kubernetes-helm

Instalar helm mediante snap

BASH
sudo snap install helm --classic

Inicializamos el servicio 

CODE
helm inithelm init --service-account tiller
helm init --service-account tiller

Agregamos el repositorio de bitnami e instalamos el servicio

PHP
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install --name kubeapps --namespace kubeapps bitnami/kubeapps

Creamos la API token para poder conectarnos 

SQL
kubectl create serviceaccount kubeapps-operator
kubectl create clusterrolebinding kubeapps-operator --clusterrole=cluster-admin --serviceaccount=default:kubeapps-operator

Obtenemos la API token 

BASH
kubectl get secret $(kubectl get serviceaccount kubeapps-operator -o jsonpath='{range .secrets[*]}{.name}{"\n"}{end}' | grep kubeapps-operator-token) -o jsonpath='{.data.token}' -o go-template='{{.data.token | base64decode}}' && echo

Realizamos un forward del servicio

BASH
http://127.0.0.1:8080 export POD_NAME=$(kubectl get pods --namespace kubeapps -l "app=kubeapps" -o jsonpath="{.items[0].metadata.name}")
kubectl port-forward --namespace kubeapps $POD_NAME 8080:8080

Una vez realizado el forward ya podemos acceder mediante nuestro navegador. 

Comentarios