hongming
谢谢!
按照这个教程后,我执行了下面的操作:
在主集群的服务器,配置了aws credentials,然后执行了
aws eks --region us-west-2 update-kubeconfig --name xxxxxx
kubectl config use-context kubernetes-admin@cluster.local # 不执行这个,后面会报错
cat <<EOF >kubesphere-secret.yaml apiVersion: v1 kind: Secret metadata: name: kubesphere namespace: kubesphere-system annotations: kubernetes.io/service-account.name: "kubesphere" type: kubernetes.io/service-account-token EOF
kubectl apply -f kubesphere-secret.yaml
TOKEN=`kubectl -n kubesphere-system get secret kubesphere -o jsonpath='{.data.token}' | base64 -d` kubectl config set-credentials kubesphere --token=${TOKEN}
kubectl config set-context --current --user=kubesphere
最后得到了如下的config(删减了一些其他信息)
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CR【省略】
server: https://【省略】.gr7.us-west-2.eks.amazonaws.com
name: arn:aws:eks:【省略】:cluster/pageguo
contexts:
- context:
cluster: arn:aws:eks:【省略】:cluster/pageguo
user: kubesphere
name: arn:aws:eks:【省略】:cluster/pageguo
current-context: arn:aws:eks:【省略】:cluster/pageguo
kind: Config
preferences: {}
users:
- name: arn:aws:eks:【省略】:cluster/pageguo
user:
exec:
apiVersion: client.authentication.k8s.io/v1beta1
args:
- --region
- us-west-2
- eks
- get-token
- --cluster-name
-【省略】
command: aws
env: null
interactiveMode: IfAvailable
provideClusterInfo: false
- name: kubesphere
user:
token: eyJhbGciOiJSU【省略】
将上面的config添加到控制台以后,现在在网页控制台Network里提示:
然后我执行了下面的命令:
kubectl logs -n kubesphere-system ks-apiserver-686ddff57b-b99p4
得到了如下的输出
error: You must be logged in to the server (Unauthorized)
我怀疑是EKS上没有安装Kubesphere导致的。但是我看帖子里都讲,现在不需要在EKS里安装KubeSphere了。尤其是在执行kubectl apply -f kubesphere-secret.yaml
的时候,当前的context应该是哪个?