跳转至

DCE 5.0 一体机部署

本文说明如何在一体机上部署 DCE 5.0。

环境准备

首先要准备好网络环境和容量规划。

网络要求

硬件

  • 通常一体机插有多张网卡或一张网卡有多个网口,所以建议组 Bond,并且使端口组 LACP 的 Bond 高可用
  • 暂时不建议划分多平面,共用一个数据面
  • 网口需要为 trunk 模式

预留 VLAN

至少有 2 个 VLAN:1 个用于 BMC VLAN,1 个管理/业务 VLAN,1 个存储 VLAN(可选)。 如果需要为 Pod 分配"静态 IP",需要先创建子接口并额外分配 VLAN。

名称 用途
管理/业务 VLAN 用于 SSH,管理界面、 API、业务流量、负载均衡、集群内部通信
BMC VLAN 用于服务器的 BMC 管理
存储 VLAN(可选) 用于本地和远程存储访问

IP

资源 要求 说明
istioGatewayVip 1 个 如果负载均衡模式是 metallb,则需要指定一个 VIP,供给 DCE 的 UI 界面和 OpenAPI 访问入口
insightVip 1 个 如果负载均衡模式是 metallb,则需要指定一个 VIP,供给全局服务集群的 insight 数据收集入口使用,子集群的 insight-agent 可上报数据到这个 VIP
协议 - 支持 IPv6。
保留 IP 地址段 需保留两段 供 Pod(默认 10.233.64.0/18) 和 Service (默认 10.233.0.0/18 使用)。如果已经在使用了,可以自定义其他网段避免 IP 地址冲突。
路由 - 服务器有 default 或指向 0.0.0.0 这个地址的路由。
NTP 服务地址 1~4 个 确保您的数据中心有可以访问的 NTP 服务器 IP 地址。
DNS 服务地址 1~2 个 如果您的应用需要 DNS 服务,请准备可以访问 DNS 服务器 IP 地址。

网络端口

端口要求

容量规划

CPU、内存、磁盘

物理机 CPU 内存 containerd、k8s 默认使用根盘 备注
master01 >= 12 C >= 20 G 480G,SSD 硬盘,RAID1 作为“火种机 + 集群控制节点”,资源建议可以适当调高
master02 >= 12 C >= 20 G 480G,SSD 硬盘,RAID1
master03 >= 12 C >= 20 G 480G,SSD 硬盘,RAID1

环境准备检查表

分类 检查项 级别 结果
fenlei 机架空间足够(一台服务器需要 2U 空间) 必选
机架的电源功率足够,每台服务器至少额定 750W 功率 必选
机架有 UPS 不间断电源保护 可选
电源线有无特殊要求(默认提供 2 个 C13 标准电源线) 必选
网线有无特殊要求(默认提供 4 个 SFP+ 光模块或 4 个 5mLC-LC 多模光纤线缆或 3 米 Cat6 网络跳线) 必选
访问一体机的 Chrome 浏览器(能够连接要求的 VLAN) 必选
一台用于连接 BMC RJ45 端口的交换机,每台服务器需预留 1 个端口 必选
两台用于连接数据流量的 SFP+ 端口的交换机,每台服务器需各预留 2 个端口,共 4 个端口 建议
如果没有条件配置"两台冗余交换机",至少需要一台 SFP+ 端口的交换机,每台服务器需预留 2 个端口 必选
SFP+ 端口的交换机连接的端口配置为 Trunk 并允许相应 VLAN 必选
SFP+ 端口的交换机启用了 IPv4 和 IPv6 multicast,请确保交换机之间可以多播 必选
如果您使用冗余交换机,请进行相应的堆叠配置 必选
网络 至少有 2 个 VLAN:1 个用于 BMC VLAN,1 个管理/业务  VLAN,1 个存储 VLAN(可选) 必选
如果需要为 Pod 分配"静态 IP",需要先创建子接口并额外分配 VLAN 可选
有集群内可访问的 NTP 服务器 IP 地址 必选
如果您的应用需要 DNS 服务,需准备集群内可访问的 DNS 服务器 IP 地址 建议
确保预留的 BMC VLAN 中有足够连续的 IP 地址每台服务器需要 1 个该 VLAN 的 IP地址 必选
确保预留的管理/业务 VLAN 中有足够连续的 IP 地址每台服务器需要 1 个 IP地址,整个集群还需要额外 1 个 IP(管理界面) 必选
整个集群还需要额外 2 个IP(istioGatewayVip、insightVip) 必选
确保预留的存储 VLAN 中有足够连续的 IP 地址每台服务器需要 1 个该 VLAN 的 IP地址 可选
保留 IP 地址段(供 Calico 和 Kube-Proxy 使用),默认为 clusterCIDR: 10.233.64.0/18、serviceCIDR: 10.233.0.0/18。如果已经在使用了,可以自定义其他网段避免 IP 地址冲突。 必选
容量规划 确保您做好容量规划,当前的集群容量(CPU、内存、网络、硬盘)和性能可以支持您的容器化业务 必选
确保假定任意服务器宕机的情况下,剩余的集群有足够的容量支撑 必选
如果您未来准备扩容,需要提前预备机架空间、交换机端口和相应 VLAN 的 IP 地址 建议

安装步骤(3 台物理机)

安装前置依赖

安装依赖项

离线安装

开始安装

安装前注意事项:

  • 在三台物理机中选择一台物理机作为火种机执行 DCE 5.0 的部署。其中集群配置文件 ClusterConfig.yaml 中的 bootstrapNode 参数可以指定火种机器的 IP。

    ClusterConfig.yaml
    apiVersion: provision.daocloud.io/v1alpha4
    kind: ClusterConfig
    metadata:
    spec:
      clusterName: my-cluster # (1)!
      bootstrapNode: auto  # (2)!
      ...
    ...
    
    1. 火种节点的域名或 IP,默认解析为火种节点默认网关所在网卡的 IP; 可手动填入 IP 或域名,若为域名,如果检测到无法解析,将自动建立此域名和火种节点默认 IP 的映射
    2. 默认自动解析
  • 集群配置文件 ClusterConfig.yaml 中,将 3 台物理机的信息配置在 masterNodes 中即可。

    ClusterConfig.yaml
    ...
    apiVersion: provision.daocloud.io/v1alpha4
    kind: ClusterConfig
    metadata:
    spec:
      ...
      masterNodes:
        - nodeName: "g-master1" # (1)!
          ip: xx.xx.xx.xx
          ansibleUser: "root"
          ansiblePass: "dangerous"
          # ansibleSSHPort: "22"
          # ansibleExtraArgs: "" 
        - nodeName: "g-master2"
          ip: xx.xx.xx.xx
          ansibleUser: "root"
          ansiblePass: "dangerous"
          # ansibleSSHPort: "22"
          # ansibleExtraArgs: ""
        - nodeName: "g-master3"
          ip: xx.xx.xx.xx
          ansibleUser: "root"
          ansiblePass: "dangerous"
          # ansibleSSHPort: "22"
          # ansibleExtraArgs: ""
        ...
    ...
    
    1. 物理机 1 角色为集群的控制面节点 + 火种机节点

评论