问题描述
想知道如何在K3s上安装KubeApps,并希望了解最少的必要步骤。
解决方案
请注意以下操作注意版本差异及修改前做好备份。
步骤1:安装K3s
首先,您需要安装K3s。您可以按照官方文档中的说明进行安装。以下是安装K3s的命令:
curl -sfL https://get.k3s.io | sh -
步骤2:为用户添加KUBECONFIG
在安装K3s后,您需要为用户添加KUBECONFIG。您可以按照以下步骤操作:
1. 创建一个名为~/.kube
的目录(如果不存在):
mkdir ~/.kube 2> /dev/null
- 使用以下命令将KUBECONFIG配置文件写入用户的
~/.kube/config
文件中:
export KUBECONFIG=~/.kube/config
sudo k3s kubectl config view --raw > "$KUBECONFIG"
chmod 600 "$KUBECONFIG"
步骤3:安装Helm
在安装K3s之后,您需要安装Helm。您可以按照官方文档中的说明进行安装。以下是安装Helm的命令:
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
步骤4:设置KubeApps
在安装了K3s和Helm之后,您可以开始安装KubeApps。按照以下步骤进行操作:
1. 添加Kubeapps的Helm仓库:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
- 使用以下命令安装KubeApps:
helm install -n kubeapps --create-namespace kubeapps bitnami/kubeapps
- 配置KubeApps:
kubectl create --namespace default serviceaccount kubeapps-operator
kubectl create clusterrolebinding kubeapps-operator --clusterrole=cluster-admin --serviceaccount=default:kubeapps-operator
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
metadata:
name: kubeapps-operator-token
namespace: default
annotations:
kubernetes.io/service-account.name: kubeapps-operator
type: kubernetes.io/service-account-token
EOF
kubectl get --namespace default secret kubeapps-operator-token -o jsonpath='{.data.token}' -o go-template='{{.data.token | base64decode}}' && echo
- 启动KubeApps(请注意,我们在
kubectl port-forward
命令中使用了一个稍微修改的参数--address 0.0.0.0
):
kubectl port-forward -n kubeapps --address 0.0.0.0 svc/kubeapps 8080:80
卸载KubeApps和K3s
如果您想要卸载KubeApps和K3s,可以按照以下步骤进行操作:
1. 运行以下命令卸载K3s:
sudo k3s-uninstall.sh
- 删除Helm和缓存:
sudo rm -rf /usr/local/bin/helm ~/.cache/helm /root/.cache/helm
- 删除日志:
sudo rm -rf /var/log/pods/
- 删除集群配置、密钥和kubeconfig文件:
sudo rm -rf ~/.kube
以上是在K3s上安装和卸载KubeApps的最少必要步骤。希望对您有所帮助!
正文完