KuberSphere 安装kubernates

准备机器

最少3台机器

centos Linux 内核:官方建议 3.10 以上

bash 复制代码
uname -r

control 一台 配置 2c 4g

worker 二台 配置 2c 4g

3台设备需要用不同的hostname,需要提前修改

bash 复制代码
hostnamectl set-hostname <新的主机名>
# 修改后执行一下命令刷新一下
su -

安装KubeSphere

依赖要求

KubeKey 可以将 Kubernetes 和 KubeSphere 一同安装。针对不同的 Kubernetes 版本,需要安装的依赖项可能有所不同。您可以参考以下列表,查看是否需要提前在节点上安装相关的依赖项

如果没有安装 socat和conntrack可以执行以下命令安装, 记住每台机器都要安装必要依赖

bash 复制代码
yum install -y socat conntrack ebtables ipset

从 GitHub Release Page 下载 KubeKey

bash 复制代码
# 如果访问githu受限可以执行以下命令
# export KKZONE=cn
# 然后在下载KubeKey

curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.13 sh -

为 kk 添加可执行权限

bash 复制代码
chmod +x kk

同时安装KubeSphere UI和Kubernates

bash 复制代码
./kk create cluster --with-kubernetes v1.22.12 --with-kubesphere v3.4.1

验证安装结果

bash 复制代码
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

输出信息会显示 Web 控制台的 IP 地址和端口号,默认的 NodePort 是 30880。现在,您可以使用默认的帐户和密码

(admin/P@88w0rd) 通过 :30880 访问控制台

bash 复制代码
#####################################################

###              Welcome to KubeSphere!           ###

#####################################################

Console: http://192.168.0.2:30880
Account: admin
Password: P@88w0rd
NOTES:
  1. After you log into the console, please check the
     monitoring status of service components in
     "Cluster Management". If any service is not
     ready, please wait patiently until all components 
     are up and running.
  2. Please change the default password after login.
#####################################################
https://kubesphere.io             20xx-xx-xx xx:xx:xx
#####################################################

安装完成后界面如下:

添加工作(Worker)节点

1. 使用 KubeKey 检索集群信息。以下命令会创建配置文件 (sample.yaml)。
bash 复制代码
./kk create config --from-cluster

执行后文件生产路径会打印出来

2. 在配置文件中,将新节点的信息放在 hosts 和 roleGroups 之下。该示例添加了两个新节点(即 node1 和 node2)。其中 control 是文件中默认的记录和节点。打开sample.yaml文件如下:
bash 复制代码
apiVersion: kubekey.kubesphere.io/v1alpha2
kind: Cluster
metadata:
  name: sample
spec:
  hosts:
  ##You should complete the ssh information of the hosts
  - {name: control, address: 192.168.1.52, internalAddress: 192.168.1.52}
  ## 添加2个工作节点
  - {name: worker1, address: 192.168.1.25, internalAddress: 192.168.1.25, user: root, password: Ijc123;;'' }
  - {name: worker2, address: 192.168.1.98, internalAddress: 192.168.1.98, user: root, password: Ijc123;;'' }

  roleGroups:
    etcd:
    ## 将control设置为etcd,没有高可用
    - control
    master:
    ## 设置master
    - control
    ## 设置worker1和worker2为工作节点
    worker:
    - worker1
    - worker2
  controlPlaneEndpoint:
    ##Internal loadbalancer for apiservers
    #internalLoadbalancer: haproxy

    ##If the external loadbalancer was used, 'address' should be set to loadbalancer's ip.
    domain: lb.kubesphere.local
    address: ""
    port: 6443
  kubernetes:
    version: v1.22.12
    clusterName: cluster.local
    proxyMode: ipvs
    masqueradeAll: false
    maxPods: 110
    nodeCidrMaskSize: 24
  network:
    plugin: calico
    kubePodsCIDR: 10.233.64.0/18
    kubeServiceCIDR: 10.233.0.0/18
  registry:
    privateRegistry: ""
3. 执行以下命令
bash 复制代码
./kk add nodes -f /root/sample.yaml
4. 安装完成后,您将能够在 KubeSphere 的控制台上查看新节点及其信息。在集群管理页面,选择左侧菜单节点下的集群节点,或者执行命令 kubectl get node 以检查更改。
bash 复制代码
$ kubectl get node
NAME          STATUS   ROLES           AGE   VERSION
master1       Ready    master,worker   20d   v1.17.9
node1         Ready    worker          31h   v1.17.9
node2         Ready    worker          31h   v1.17.9

此时UI可看到新加入集群的node

进阶操作点击这里进入官网查看

相关推荐
西西小飞龙1 小时前
Docker和K8S中pod、services、container的介绍和关系
docker·容器·kubernetes
you来有去14 小时前
记录一下在k3s快速创建gitlab
java·kubernetes·gitlab
格桑阿sir15 小时前
Kubernetes控制平面组件:API Server Node 授权机制 详解
kubernetes·kubelet·authorization·apiserver·node授权机制·noderestriction·资源拦截
舌尖上的五香19 小时前
k8s拉取harbor镜像部署
云原生·容器·kubernetes
qq_4489410819 小时前
12、k8s安全机制
安全·kubernetes
斯普信专业组19 小时前
深入探讨K8s资源管理和性能优化
容器·性能优化·kubernetes
终端行者19 小时前
k8s中pod的调度策略之pod的亲和性调度与反亲和性调度 一文搞懂 k8s中创建的pod如何调度?
容器·kubernetes
人才瘾大19 小时前
docker和k8s
docker·kubernetes
挣扎与觉醒中的技术人1 天前
Kubernetes (K8S) 高效使用技巧与实践指南
网络·云原生·容器·kubernetes