kubernetes ui安装

k8s ui 安装各种采坑,Dashboard 是k8s的插件,安装k8s要安装image和一个kubernetes-dashboard.yaml文件。

把拉取的镜像安装在了docker下,docker创建进行

docker search Kubernetes-dashboard

安装下载量对多的,

docker pull   docker.io/mritd/kubernetes-dashboard-amd64

安装完成后打标签,存放到私有库

docker tag docker.io/mritd/kubernetes-dashboard-amd64:latest 192.168.101.135:5000/kubernetes-dashboard-amd64

 push 上传到私有仓库

docker push 192.168.101.135:5000/kubernetes-dashboard-amd64:latest

创建namespace

vi kube-namespace.yaml

piVersion: v1
kind: Namespace
metadata:
  name: kube-system

 编写yaml文件

vi  k8s.yaml

kind: Deployment
apiVersion: extensions/v1beta1
metadata:
  labels:
    app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kube-system
spec:
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: kubernetes-dashboard
  template:
    metadata:
      labels:
        app: kubernetes-dashboard
      # Comment the following annotation if Dashboard must not be deployed on master
      annotations:
        scheduler.alpha.kubernetes.io/tolerations: |
          [
            {
              "key": "dedicated",
              "operator": "Equal",
              "value": "master",
              "effect": "NoSchedule"
            }
          ]
    spec:
      containers:
      - name: kubernetes-dashboard
        image: 192.168.101.135:5000/kubernetes-dashboard-amd64
        imagePullPolicy: Always
        ports:
        - containerPort: 9090
          protocol: TCP
        args:
          # Uncomment the following line to manually specify Kubernetes API server Host
          # If not specified, Dashboard will attempt to auto discover the API server and connect
          # to it. Uncomment only if the default does not work.
          # - --apiserver-host=http://my-address:port
          - --apiserver-host=http://192.168.101.134:8080
        livenessProbe:
          httpGet:
            path: /
            port: 9090
          initialDelaySeconds: 30
          timeoutSeconds: 30
---
kind: Service
apiVersion: v1
metadata:
  labels:
    app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kube-system
spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 9090
  selector:
    app: kubernetes-dashboard

创建pod和service
kubectl create -f  k8s.yaml

然后查看pod

kubectl get pods --all-namespaces

在浏览器里访问 http://IP:8080/ui

安装过程中遇到的问题:

执行了命名查看到的错误

kubectl describe pods/kubernetes-dashboard-3773930492-54h8n  --namespace="kube-system"

Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for registry.access.redhat.com/rhel7/pod-infrastructure:latest, this may be because there are no credentials on this request.  details: (open /etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt: no such file or directory)"

解决方法:

执行了yum install *rhsm* -y 后还有没解决

接下来有执行了

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm

rpm -ivh python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm

如果执行报错,执行

yum remove subscription-manager-rhsm-certificates -y

安装完后在节点服务器node上手动执行

docker pull registry.access.redhat.com/rhel7/pod-infrastructure:latest

删除rc重新安装

kubectl delete -f k8s.yaml

在创建

kubectl create -f k8s.yaml

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kubernetes Dashboard是一个开源的Web UI,用于管理和监控Kubernetes集。它提供了一个直观的界面,可用于管理Kubernetes对象,查看集群的状态和资源情况,执行容器调试等。 以下是在Kubernetes集群中安装Kubernetes Dashboard的步骤: 1.下载Kubernetes Dashboard YAML文件 在GitHub上下载最新版本的Kubernetes Dashboard YAML文件: ```bash wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml ``` 2.编辑Kubernetes Dashboard YAML文件 使用文本编辑器打开刚刚下载的YAML文件,并找到以下行: ```yaml # - --enable-skip-login ``` 将其注释掉,以便在安装后使用用户名和密码进行身份验证。修改后的行如下所示: ```yaml - --enable-skip-login=false ``` 3.安装Kubernetes Dashboard 运行以下命令以在Kubernetes集群中安装Kubernetes Dashboard: ```bash kubectl apply -f recommended.yaml ``` 等待几分钟,直到所有Pod和服务都已创建并处于运行状态。 4.创建用户和角色绑定 要使用Kubernetes Dashboard,需要创建一个具有最低特权的服务帐户,并将其绑定到具有关联权限的角色中。 以下是一个示例用户和角色绑定YAML文件: ```yaml apiVersion: v1 kind: ServiceAccount metadata: name: dashboard-admin namespace: kubernetes-dashboard --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: dashboard-admin roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: dashboard-admin namespace: kubernetes-dashboard ``` 将上面的文本保存为dashboard-admin.yaml,并运行以下命令以创建用户和角色绑定: ```bash kubectl apply -f dashboard-admin.yaml ``` 5.访问Kubernetes Dashboard 默认情况下,Kubernetes Dashboard只能通过kubectl proxy访问。要使其可以通过Web浏览器访问,需要使用NodePort或LoadBalancer将其公开。 以下是使用NodePort将Kubernetes Dashboard公开的示例命令: ```bash kubectl patch svc kubernetes-dashboard -n kubernetes-dashboard --type=json -p '[{"op":"replace","path":"/spec/type","value":"NodePort"}]' ``` 该命令将为Kubernetes Dashboard创建一个NodePort服务,并将其公开到集群的所有节点上。您可以运行以下命令以查看服务的NodePort端口: ```bash kubectl get svc kubernetes-dashboard -n kubernetes-dashboard ``` 要访问Kubernetes Dashboard,请在Web浏览器中输入以下URL: ``` https://<node-ip>:<node-port> ``` 其中,<node-ip>是运行Kubernetes Dashboard的节点的IP地址,<node-port>是Kubernetes Dashboard服务的NodePort端口。要查找节点的IP地址,请运行以下命令: ```bash kubectl get nodes -o wide ``` 在浏览器中打开上面的URL,您将被重定向到Kubernetes Dashboard登录页面。输入刚才创建的服务帐户的用户名和密码,即可访问Kubernetes Dashboard。 这就是在Kubernetes集群中安装Kubernetes Dashboard的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值