k8s dashboard 配置如下

在centos 7.7.1908 配置kubernets 集群模式,并开启dash-board 图形界面时遇到各种问题,将目前踩过的坑列举如下,望各位借鉴。

master node  172.16.18.104

 node1  172.16.18.105

node2  172.16.18.106

私有镜像仓库地址: 172.16.18.111
k8s 集群配置参见
https://www.jianshu.com/p/65ecef9016ae
https://www.cnblogs.com/zhenyuyaodidiao/p/6500830.html
1. docker 私有仓库搭建:
    1) yum install docker
    2) systemctl start docker ,systemctl enable docer
    3) 下拉镜像:docker pull registry
    4) docker search pod-infrastructure
    INDEX       NAME                                          DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
    docker.io   docker.io/neurons/pod-infrastructure          k8s pod 基础容器镜像                                  2                    
    docker.io   docker.io/tianyebj/pod-infrastructure         registry.access.redhat.com/rhel7/pod-infra...   2                    
    docker.io   docker.io/w564791/pod-infrastructure          latest                                          1                    
    docker.io   docker.io/xiaotech/pod-infrastructure         registry.access.redhat.com/rhel7/pod-infra...   1                    [OK]
    。。。。。。
    找到ok的
    然后 
        docker pull docker.io/tianyebj/pod-infrastructure 
    5) 创建docker仓库目录 mkdir -p /data/registry
    6) docker run -itd -p 5000:5000 -v /data/registry/:/var/lib/registry docker.io/registry
    7) 对下载的镜像进行打包
    docker tag docker.io/tianyebj/pod-infrastructure  172.16.18.111:5000/pod-infrastructure  将新下载的镜像进行打包,其中172.16.18.111:5000为本地地址及刚才启动docker服务端口
    删除老镜像 docker rmi docker.io/tianyebj/pod-infrastructure
    8) 修改 /etc/sysconfig/docker 中OPTIONS 内容如下 ,添加-signature-verification=false --insecure-registry 172.16.18.111:5000:
    内容如下:
    
    # /etc/sysconfig/docker

    # Modify these options if you want to change the way the docker daemon runs
    OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --insecure-registry 172.16.18.111:5000'
    if [ -z "${DOCKER_CERT_PATH}" ]; then
            DOCKER_CERT_PATH=/etc/docker
    fi
    重新启动docker 
    systemctl restart docker
    运行: docker run -itd -p 5000:5000 -v /data/registry/:/var/lib/registry docker.io/registry
    9) setenforce 0 
        或者 修改 /etc/sysconfig/selinux
            SELINUX=disabled  # 重启后生效
    10)docker push  172.16.18.111:5000/pod-infrastructure
    11)本地仓库建好了
2) 利用本地仓库搭建 dash-board
    1) 下载 kubernets-dashboard.yaml 
        wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.5.1/src/deploy/kubernetes-dashboard.yaml
      修改部分内容:
        (1) spec:
              containers:
              - name: kubernetes-dashboard
                image: 172.16.18.111:5000/k8s-dashboard:v1.5.1 # 修改为本地仓库地址即可
        (2)修改apiserver地址:如下
         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://172.16.18.104:8080
    2) 在master节点及node 节点上修改docker配置 /etc/sysconfig/docker
        # /etc/sysconfig/docker

        # Modify these options if you want to change the way the docker daemon runs
        OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'
        if [ -z "${DOCKER_CERT_PATH}" ]; then
            DOCKER_CERT_PATH=/etc/docker
        fi
        OPTIONS='--insecure-registry 172.16.18.111:5000'
        ADD_REGISTRY='--add-registry 172.16.18.111:5000'
    3) 修改完需要重启服务
    master节点:
        systemctl restart etcd
        systemctl restart flanneld
        systemctl restart docker kube-apiserver kube-controller-manager kube-scheduler
    node 节点:
        systemctl restart flanneld
        systemctl restart kubelet kube-proxy
    6) 创建dash-board 服务:
        kubectl create -f kubernetes-dashboard.yaml 
     同样删除服务:
        kubectl create -f kubernetes-dashboard.yaml  

 
问题:
    1. k8s dashboard 报错 Error: 'dial tcp 172.168.56.2:9090: getsockopt: connection refused'
    解决:
    在服务器节点上运行: 
    iptables -P FORWARD ACCEPT  即可 重启后失效。或者echo "net.ipv4.ip_forward = 1" >>/usr/lib/sysctl.d/50-default.conf
    然后再master 节点上访问  curl -i  http://172.17.26.2:9090 可以访问
    即可。
    参见:https://blog.csdn.net/qa1986nibuhao/article/details/80814870
    2.  容器无法启动原因:
        1)  无法下拉容器registry.access.redhat.com/rhel7/pod-infrastructure:latest 该问题容易,通过搭建私有仓库或者换掉镜像源即可解决
       解决:
        1) 运行命令:kubectl get pods -n kube-system | grep -v Running
                kubectl logs kubernetes-dashboard-593926443-k6rdz  -n kube-system 
        
           其中:kubernetes-dashboard-593926443-k6rdz 为当前启动pod-infrastructure的节点名称。
        如果是dns-cluster 问题,无法在dns 地址上解析域名,需要node和master节点上修改 /etc/kubernetes/kubelet 内容如下:
        ###
        ###
    # kubernetes kubelet (minion) config

    # The address for the info server to serve on (set to 0.0.0.0 or "" for all interfaces)
    KUBELET_ADDRESS="--address=0.0.0.0"

    # The port for the info server to serve on
    # KUBELET_PORT="--port=10250"

    # You may leave this blank to use the actual hostname
    KUBELET_HOSTNAME="--hostname-override=k8s-node1"

    # location of the api-server
    KUBELET_API_SERVER="--api-servers=http://k8s-master:8080"

    # pod infrastructure container
    KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=172.16.18.111:5000/pod-infrastructure:latest"

    # Add your own!
    KUBELET_ARGS=" --cluster-dns=172.16.18.104 --cluster-domain=k8s-master" # 
        备注 172.16.18.104 为当前k8s-master节点地址。
            172.16.18.111:5000 为新建私有仓库地址。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
k8s RocketMQ是在kubernetes环境下部署RocketMQ集群的一种解决方案。在k8s环境中,我们可以使用RocketMQ-dashboard来实现对RocketMQ集群的运维监控和可视化管理。默认情况下,RocketMQ-dashboard的访问地址是http://ip:8080,其中ip是指k8s集群中的某个节点的IP地址,8080是RocketMQ-dashboard的默认端口。在k8s环境中,RocketMQ-dashboard的访问端口取决于nodeport映射的实际端口。具体的部署步骤如下: 1. 创建一个基于k8s部署RocketMQ集群配置文件,在配置文件中定义集群的Master和Slave节点数量、存储卷、镜像版本等信息。 2. 使用kubectl命令或者Kubernetes管理界面来创建RocketMQ集群。在创建集群的过程中,根据配置文件自动创建不同的Broker实例,并生成对应的Broker配置文件。 3. 确保RocketMQ集群已经成功创建,并且各个节点正常运行。可以使用kubectl命令或者Kubernetes管理界面来查看集群的状态。 4. 部署RocketMQ-dashboard,这是一个可视化的web应用,用于监控和管理RocketMQ集群。可以将RocketMQ-dashboard的Docker镜像部署为一个Kubernetes服务,并将其暴露在外部网络中。 5. 访问RocketMQ-dashboard,使用浏览器访问RocketMQ-dashboard的地址,即可进入可视化的管理界面。在RocketMQ-dashboard中,可以查看集群的状态、主题和消费者的信息,并进行一些配置和管理操作。 总结起来,k8s RocketMQ是在kubernetes环境下部署RocketMQ集群的一种解决方案,通过RocketMQ-dashboard可以实现对RocketMQ集群的运维监控和可视化管理。具体的部署步骤包括创建配置文件、创建RocketMQ集群、部署RocketMQ-dashboard和访问RocketMQ-dashboard。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [k8s 部署rocketmq集群](https://blog.csdn.net/weixin_44770684/article/details/127520224)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值