k8s客户端配置

K8s客户端安装

  1. 前提

  1. K8s服务部署成功,如下

角色

IP地址

操作系统

主机名

Kubernetes版本

master节点

172.16.4.167

CentOS 7.9

k8s-master01

v1.28.2

工作节点1

172.16.4.168

CentOS 7.9

k8s-worker01

v1.28.2

工作节点2

172.16.4.169

CentOS 7.9

k8s-worker02

v1.28.2

2. Docker私仓部署成功,并配置账号密码

Docker安装客户端

1.离线安装docker略

2.Docker安装kuboard

  1. 上传kuboard-v3.tar镜像包
  2. 导入镜像
    docker load 

     3.创建工作目录

mkdir /opt/kuboard-data

     4.启动容器,需要占用80和10081端口,冲突自行修改,下面ip需要换成自己服务器的ip

docker run -d \

  --restart=unless-stopped \

  --name=kuboard \

  -p 80:80/tcp \

  -p 10081:10081/tcp \

  -e KUBOARD_ENDPOINT="http://172.16.80.31:80" \

  -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \

  -v /opt/kuboard-data:/data \

  eipwork/kuboard:v3

    5.查看客户端页面

 http://ip:80  

默认账号密码 admin/Kuboard123

K8s客户端使用

  导入k8s集群

登录Kuboard页面,操作如下

  1. 添加集群
  2. 选右侧的agent添加
  3. 输入名称和描述
  4. 确定

k8s客户端配置_第1张图片

确定后显示如下页面

k8s客户端配置_第2张图片

复制命令框的地址,如图复制下面地址

浏览器访问并复制内容到kuboard-agent.yaml文件中

http://xxxx/kuboard-api/cluster/k8s-test/kind/KubernetesCluster/k8s-test/resource/installAgentToKubernetes?token=xV2Kf9sL03yMJuUQQVMWX7v0rlaF4Nhi

将kuboard-agent.yaml文件上传到k8s-master节点服务器中,

执行命令

kubectl apply -f ./kuboard-agent.yaml

执行结束后页面点击,我已经执行了导入命令,之后等待1分钟,页面自己会刷新,

变成就绪状态即导入成功

k8s客户端配置_第3张图片

创建一个名称空间

如下图,依次点击,进入创建名称空间选择页面,

若是页面无法看到右侧的名称列表,在master节点服务器 参考如下地址操作

解决k8s访问报anonymous cannot get path的问题-CSDN博客

k8s客户端配置_第4张图片k8s客户端配置_第5张图片

创建名称为icp,确定,应用

选择一个名称空间

如下点击下拉箭头,选中上面创建的icp名称k8s客户端配置_第6张图片

部署一个服务 

如下操作

k8s客户端配置_第7张图片

再点击容器信息,

配置服务名,镜像地址,变量等,再点击下图箭头指示的创建

k8s客户端配置_第8张图片

输入docker私仓地址,用户密码和名称,最好把下面命令执行一下,看看配置是否正确,确定后左侧选择刚才的配置

k8s客户端配置_第9张图片k8s客户端配置_第10张图片

点击左上角保存按钮,即发布服务成功

遇到的问题

1.导入k8s集群后看不到名称空间参考

解决k8s访问报anonymous cannot get path的问题-CSDN博客

2. 由于这是最新版k8s弃用了docker,拉取镜像需要用https方式,但是公司内网一般都是http,导致拉镜像失败,部署不了服务,解决方式如下:

在所有node节点服务器执行以下命令

vim /etc/containerd/config.toml

查找plugins."io.containerd.grpc.v1.cri".registry.mirrors配置

修改如下,大家可以把下面配置的172.16.4.64:5000替换成自己docker私仓地址即可

注意 plugins."io.containerd.grpc.v1.cri".registry.configs 这些配置别重复了,重复启动服务会报错的

      [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
        # 如下这些仓库可以作为公共仓库使用
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
            endpoint = ["https://docker.mirrors.ustc.edu.cn","http://hub-mirror.c.163.com"]
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."gcr.io"]
            endpoint = ["https://gcr.mirrors.ustc.edu.cn"]
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."k8s.gcr.io"]
            endpoint = ["https://gcr.mirrors.ustc.edu.cn/google-containers/"]
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."quay.io"]
            endpoint = ["https://quay.mirrors.ustc.edu.cn"]
        # 内部私有仓库配置
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."172.16.4.64:5000"]
            endpoint = ["http://172.16.4.64:5000"]
			
      [plugins."io.containerd.grpc.v1.cri".registry.configs]
        # 内部私有仓库认证信息
        [plugins."io.containerd.grpc.v1.cri".registry.configs."172.16.4.64:5000"] # 这行不确定要不要写上
          [plugins."io.containerd.grpc.v1.cri".registry.configs."172.16.4.64:5000".tls]
            insecure_skip_verify = true # 是否跳过证书认证
            #ca_file = "/etc/containerd/172.16.4.64:5000/ca.crt" # CA 证书 
          #[plugins."io.containerd.grpc.v1.cri".registry.configs."172.16.4.64:5000".auth]
            #username = "test" # 在harbor里单独创建的用户,授权访问指定项目
            #password = "Test123456"

修改完后,重启containerd解决问题

systemctl daemon-reload
systemctl restart containerd

你可能感兴趣的:(kubernetes,容器,云原生)