本文将详细介绍如何从零开始手动搭建Kubernetes集群环境。我们将一步一步展示整个过程,包括环境准备、软件版本选择、详细步骤和配置说明。
服务器要求
Kubernetes版本
- 版本: v1.22.15
节点要求
- 节点数: 至少3台
- CPU: 至少2个
- 内存: 至少2G
修改时区
某些系统的时区可能不匹配,需要进行修改:
timedatectl set-timezone Asia/Shanghai
环境说明
系统类型 | IP地址 | 节点角色 | CPU | 内存 | 主机名 |
---|---|---|---|---|---|
CentOS-7.9 | 192.168.200.11 | master | >=2 | >=2G | cluster1 |
CentOS-7.9 | 192.168.200.22 | master,worker | >=2 | >=2G | cluster2 |
CentOS-7.9 | 192.168.200.33 | worker | >=2 | >=2G | cluster3 |
使用Vagrant搭建虚拟机节点
- Vagrant: 最新版本
- VirtualBox: 7.0
- vagrant-vbguest: 0.21 (用于挂载host和guest同步目录)
vagrant plugin install vagrant-vbguest --plugin-version 0.21
Vagrantfile配置
# -*- mode: ruby -*-
# vi: set ft=ruby :
nodes = [
{
:name => "cluster1",
:eth1 => "192.168.200.11",
:mem => "4096",
:cpu => "2"
},
{
:name => "cluster2",
:eth1 => "192.168.200.22",
:mem => "4096",
:cpu => "2"
},
{
:name => "cluster3",
:eth1 => "192.168.200.33",
:mem => "4096",
:cpu => "2"
},
]
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
nodes.each do |opts|
config.vm.define opts[:name] do |config|
config.vm.hostname = opts[:name]
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--memory", opts[:mem]]
v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]
end
config.vm.synced_folder "../share", "/vagrant_data"
config.vm.network :public_network, ip: opts[:eth1]
end
end
end