-
Notifications
You must be signed in to change notification settings - Fork 93
Kubekit 安装与使用手册
由于Kubernetes的安装要求,并组建集群,需要准备全新安装的服务器若干(建议至少三台服务器,一台为K8S master,另外两台为node),操作系统为:CentOS release 7.3.1611(建议最小化安装),在安装前,确保服务器具备以下条件:
- 拥有每台服务器的root权限和密码
- 每台服务器均能内网互通,拥有可以直接互访的内网IP地址,由于所有Kubernetes组件会使用离线方式安装,因此有无公网环境不影响安装
- 需要特别注意的是,在安装之前,请确保每个Kubernetes节点拥有不重复的hostname,并且每个节点都在同一timezone,并且时间一致
从准备好的服务器中,选出一台作为K8S Master,进行初始化操作。初始化之前,需要准备安装包:
- 从https://github.com/Orientsoft/kubekit/releases下载最新发布的Kubekit,解压到目录
./kubekit
根据操作系统版本,下载安装所必须的离线镜像包:
OS Version | K8S Version | Dashboard Version | Package Download |
---|---|---|---|
CentOS 7.3.1611 | V1.7.2 | V1.6.3 | Download |
CentOS 7.4.1708 | V1.8.1 | V1.7.1 | Download |
-
将离线包解压为
package
目录,并移动到./kubekit/package
-
进入package目录,赋予所有shell脚本可执行权限:
cd package
chmod +x *.sh
- 至此,安装包准备完毕,可以使用U盘或者scp命令,将
kubekit
整个目录,复制到被选定为K8S Master的服务器上
使用SSH的方式,登录到K8S Master机器,并进入安装包目录kubekit
中,运行初始化命令:
./kubekit init 192.168.x.x
作为示例,192.168.x.x为Master机器的内网IP
init命令将把当前机器初始化为K8S Master,整个安装过程自动进行,安装步骤会分为:
- 离线安装并配置Docker Engine,版本为(1.12.6)
- 离线安装K8S所需组件,并在当前机器启动K8S Master, Kubernetes版本为1.7.2
- K8S Master初始化成功后,记录K8S cluster token
安装过程预览:
- 安装并初始化Docker Engine:
- 初始化K8S Master:
初始化成功后,kubekit程序输出当前K8S cluster的token,并保存到当前目录的.k8s-token
文件,如果忘记cluster token,可以查看此文件
- 待K8S Master完成初始化,kubekit会监听K8S Master机器的9000端口,并启动Web UI Portal,后续所有初始化其他K8S node的操作,将在Web UI Portal进行。
通过访问K8S Master的内网IP:9000,可以打开Web UI Portal。此Web Portal主要用来一键安装和配置集群中的其他所有K8S node。通过添加节点,可以配置即将初始化和加入机器的K8S node信息:
注意:添加节点时,节点SSH登录密码需要输入root用户密码,初始化节点过程默认以root身份权限进行。
添加完毕节点信息,节点默认状态为未部署状态,可以批量勾选一个或者多个未部署节点进行一键批量部署:
部署过程会通过websocket推送,并直观的展示在Web Portal上,也可以点击单个节点的刷新按钮进行状态刷新。
Kubekit默认会在K8S Master节点初始化的时候,安装Kubernetes Dashboard,在面版中亦可通过菜单链接打开Kubernetes Dashboard
Kubernetes Dashboard默认访问地址: http://master-ip:31234
注意:使用kubectl命令前,需要退出当前SSH session重新登录,或者直接reload shell设置:source ~/.bashrc
Kubekit支持的命令参数,可通过运行./kubekit h
进行查看,命令格式:
kubekit [command]
- init命令 可简写为i,主要用于初始化当前服务器为K8S Master,并启动Web UI Portal
- server命令 可简写为s,用于单独启动Web UI Portal界面,若是不小心Ctrl+C停止掉Web UI Portal,可用此命令再次启动
- help命令 可简写为h,用于查看kubekit支持的命令并获取帮助
默认情况下,Kubekit使用8000作为文件服务监听端口号,并使用9000端口作为Web UI Portal的监听端口号。如果默认端口号与已运行服务冲突,可以使用自定义端口好启动Kubekit.
使用方法:
kubekit server FILE_SERVER_PORT TOOLKIT_SERVER_PORT
或者:
kubekit s FILE_SERVER_PORT TOOLKIT_SERVER_PORT
Kubernetes和kubekit的卸载分为一下几个步骤:
- 重置所有Kubernetes节点,在每个节点执行:
kubeadm reset
- 卸载kubelet及关联组件:
yum -y remove kubelet kubeadm kubectl
- 删除kubekit及相关离线安装包:
rm -rf /path/to/kubekit