部署前准备
概述
在开始HIS系统部署之前,需要完成服务器环境检查、软件包下载和工具安装等准备工作,确保部署环境满足系统要求。
1. 查看服务器情况
1.1 确认控制平面和NFS服务器IP
在部署前需要明确以下服务器信息:
- 控制平面服务器IP:用于运行Kubernetes控制组件
- NFS服务器IP:用于提供共享存储服务
- 是否有漂移地址:确认是否配置了高可用的虚拟IP
1.2 服务器配置检查
检查各服务器的基本配置:
bash
# 检查CPU和内存
lscpu
free -h
# 检查磁盘空间
df -h
# 检查网络连通性
ping <target-ip>
# 检查端口开放情况
netstat -tulpn | grep <port>
# 检查CPU和内存
lscpu
free -h
# 检查磁盘空间
df -h
# 检查网络连通性
ping <target-ip>
# 检查端口开放情况
netstat -tulpn | grep <port>
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
1.3 网络环境检查
确保以下网络要求:
- 各节点间网络互通
- 防火墙规则正确配置
- DNS解析正常
- 时间同步配置
2. 下载相关包
2.1 下载地址
主下载地址:http://www.zjldsoft.com/html/K8s/yth/
备用下载地址:http://www.zjldsoft.com:8090/html/K8s/yth/
2.2 必需软件包
需要下载以下两个压缩包:
ht-his-helm.zip - HELM部署包
- 包含系统部署脚本
- 配置文件模板
- 服务定义文件
ht-his-nfs.zip - 镜像构建包
- Docker构建文件
- 应用程序文件
- 配置文件
2.3 下载验证
下载完成后验证文件完整性:
bash
# 检查文件大小
ls -lh ht-his-*.zip
# 解压测试(不覆盖现有文件)
unzip -t ht-his-helm.zip
unzip -t ht-his-nfs.zip
# 检查文件大小
ls -lh ht-his-*.zip
# 解压测试(不覆盖现有文件)
unzip -t ht-his-helm.zip
unzip -t ht-his-nfs.zip
1
2
3
4
5
6
2
3
4
5
6
3. 安装SSH和SFTP连接工具
3.1 推荐工具
Windows环境:
Linux/Mac环境:
- SSH客户端:系统自带ssh命令
- SFTP客户端:系统自带sftp命令或图形化工具
3.2 连接配置
配置SSH连接参数:
bash
# SSH连接示例
ssh user@server-ip
# SFTP连接示例
sftp user@server-ip
# SSH连接示例
ssh user@server-ip
# SFTP连接示例
sftp user@server-ip
1
2
3
4
5
2
3
4
5
3.3 密钥认证设置(推荐)
为提高安全性,建议使用SSH密钥认证:
bash
# 生成SSH密钥对
ssh-keygen -t rsa -b 4096
# 复制公钥到服务器
ssh-copy-id user@server-ip
# 测试密钥登录
ssh user@server-ip
# 生成SSH密钥对
ssh-keygen -t rsa -b 4096
# 复制公钥到服务器
ssh-copy-id user@server-ip
# 测试密钥登录
ssh user@server-ip
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
4. 环境检查清单
4.1 硬件资源
- [ ] 控制平面服务器:8核16G内存,100G磁盘
- [ ] NFS服务器:4核8G内存,500G磁盘
- [ ] 网络带宽:千兆网络连接
4.2 软件环境
- [ ] 操作系统:CentOS 7.6+ 或 Ubuntu 18.04+
- [ ] Docker:版本20.10+
- [ ] Kubernetes:版本1.20+
- [ ] HELM:版本3.0+
4.3 网络配置
- [ ] 服务器间网络互通
- [ ] DNS解析正常
- [ ] NTP时间同步
- [ ] 防火墙规则配置
4.4 权限确认
- [ ] 具有sudo或root权限
- [ ] Docker操作权限
- [ ] Kubernetes集群管理权限
5. 预检脚本
可以使用以下脚本进行环境预检:
bash
#!/bin/bash
# 环境预检脚本
echo "=== HIS系统部署环境检查 ==="
# 检查系统版本
echo "系统版本:"
cat /etc/os-release | grep PRETTY_NAME
# 检查资源
echo "CPU核数:$(nproc)"
echo "内存大小:$(free -h | grep Mem | awk '{print $2}')"
echo "磁盘空间:$(df -h / | tail -1 | awk '{print $4}')"
# 检查Docker
if command -v docker &> /dev/null; then
echo "Docker版本:$(docker --version)"
else
echo "Docker未安装"
fi
# 检查Kubernetes
if command -v kubectl &> /dev/null; then
echo "Kubectl版本:$(kubectl version --client --short)"
else
echo "Kubectl未安装"
fi
# 检查HELM
if command -v helm &> /dev/null; then
echo "Helm版本:$(helm version --short)"
else
echo "Helm未安装"
fi
echo "=== 检查完成 ==="
#!/bin/bash
# 环境预检脚本
echo "=== HIS系统部署环境检查 ==="
# 检查系统版本
echo "系统版本:"
cat /etc/os-release | grep PRETTY_NAME
# 检查资源
echo "CPU核数:$(nproc)"
echo "内存大小:$(free -h | grep Mem | awk '{print $2}')"
echo "磁盘空间:$(df -h / | tail -1 | awk '{print $4}')"
# 检查Docker
if command -v docker &> /dev/null; then
echo "Docker版本:$(docker --version)"
else
echo "Docker未安装"
fi
# 检查Kubernetes
if command -v kubectl &> /dev/null; then
echo "Kubectl版本:$(kubectl version --client --short)"
else
echo "Kubectl未安装"
fi
# 检查HELM
if command -v helm &> /dev/null; then
echo "Helm版本:$(helm version --short)"
else
echo "Helm未安装"
fi
echo "=== 检查完成 ==="
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
6. 注意事项
重要提醒
- 备份现有数据:部署前务必备份重要数据
- 网络稳定性:确保部署过程中网络连接稳定
- 权限检查:确认具有必要的系统管理权限
- 时间规划:预留足够的部署时间,建议在业务低峰期进行
建议
- 准备应急预案,如遇到问题可以快速恢复
- 建议先在测试环境进行完整的部署流程验证
- 保持与技术支持团队的沟通渠道畅通
下一步
完成部署前准备后,请继续进行 创建推送镜像 步骤。
最后更新时间:2024年1月15日