install required packages
sudo apt update -y
sudo apt upgrade -y
sudo apt install -y curl wget apt-transport-https
wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo cp minikube-linux-amd64 /usr/local/bin/minikube
sudo chmod +x /usr/local/bin/minikube
minikube start --driver=docker --cpus=4 --memory=8g --disk-size=20g --network-plugin=cni --cni=calico
OR
minikube start --driver=docker --cpus=4 --memory=8g --disk-size=20g --cni=calico
verify minikube installation
curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
git clone https://github.com/k8snetworkplumbingwg/multus-cni
cd multus-cni
cat ./deployments/multus-daemonset-thick-plugin.yml | kubectl apply -f -
kubectl create namespace free5gc
helm repo add towards5gs 'https://raw.githubusercontent.com/Orange-OpenSource/towards5gs-helm/main/repo/'
helm repo update
-n free5gc(namespace) free5gc-v1(name of the helm deployment) towards5gs/free5gc(chart name)
helm -n free5gc install free5gc-v1 towards5gs/free5gc
kubectl get pods -n free5gc
kubectl get svc -n free5gc
kubernets port forward to access the NodePort service
kubectl port-forward --namespace free5gc svc/webui-service 5000:5000
ssh -L localhost:5000:localhost:5000 ubuntu@192.168.5.95
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm search repo prometheus-community
kubectl create namespace prometheus
helm install prometheus prometheus-community/kube-prometheus-stack -n prometheus
kubectl get pods -n prometheus
grafana runs on ClusterIP 80
change svc clusterIP to NodePort
kubectl get svc -n prometheus | grep grafana
kubectl port-forward -n prometheus prometheus-grafana-8568977b76-mh9k5 3000
ssh -L localhost:3000:localhost:3000 ubuntu@192.168.5.95
the default credentials(username/password) are admin/prom-operator credentials are base64 encoded
kubectl get secret --namespace prometheus prometheus-grafana -o yaml