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 小时前
Kubernetes 中 ConfigMap 和 Secret 热更新:Reloader 实战指南
容器·kubernetes·configmap
StevenZeng学堂4 小时前
一文读懂K8S的PV和PVC以及实践攻略
运维·docker·云原生·容器·kubernetes·云计算·go
KubeSphere 云原生4 小时前
告别宕机!KubeSphere v4.1.3 联手 K8s v1.32.5,手把手教你打造“永不掉线”的云原生底座
云原生·容器·kubernetes
jiayong237 小时前
Kubernetes 网络与服务发现面试题详解
网络·kubernetes·服务发现
噎住佩奇7 小时前
k8s创建测试Pod的流程
云原生·容器·kubernetes
ζั͡山 ั͡有扶苏 ั͡✾7 小时前
从Rancher崩溃中恢复Kubernetes集群访问权限:完整kubeconfig恢复指南
容器·kubernetes·rancher
Lim小刘8 小时前
深度实践:从“手动排障”到“对话诊断”,构建基于 GenAI 的 K8s 智能运维平台
云原生·容器·kubernetes
-dcr8 小时前
55.k8s核心概念Service
云原生·容器·kubernetes
无级程序员9 小时前
K8S节点磁盘空间不足导致502错误的排除
云原生·容器·kubernetes
Paraverse_徐志斌9 小时前
K8S HPA + KEDA 弹性伸缩消费者解决 MQ 消息积压
容器·kafka·kubernetes·k8s·linq·hpa·keda