一、基礎環境
本次測試是基于K8S集群管理的兩個POD節點進行部署,軟硬件信息如下:
服務器規格: CPU:8c80G GPU:V100/40G * 2
系統環境: ubuntu18.04-cuda11.7-deepspeed0.9.5
二、基礎配置
1、安裝基礎依賴
apt-get update
apt-get install -y language-pack-en net-tools supervisor cron iputils-ping ansible openssh-server sudo vim strace
service ssh start
service ssh status
2、配置用戶及權限
groupadd apps
useradd -s /bin/bash -g apps -d /home/app app
passwd app
# 輸入app用戶密碼
# -----------------------------------------------
# 配置app用戶sudo權限
vi /etc/sudoers.d/app
# 添加內容
app ALL=(ALL) ALL
app ALL=(ALL) NOPASSWD: ALL
Defaults !env_reset
# 給文件sudoers文件增加寫入權限
chmod u+w /etc/sudoers
vim /etc/sudoers
# 在root ALL=(ALL) ALL下面追加:
root ALL=(ALL) NOPASSWD: ALL
app ALL=(ALL) ALL
app ALL=(ALL) NOPASSWD: ALL
# 刪除寫入權限
chmod u-w /etc/sudoers
# ------------------------------------------------
# 配置自身免密登錄
su app
ssh-keygen -t rsa
cat /home/app/.ssh/id_rsa.pub >>/home/app/.ssh/authorized_keys
chmod 600 /home/app/.ssh/authorized_keys
3、創建文件目錄并賦予權限
mkdir -pv /data/projects /data/temp /data/logs /data/soft /home/app
chown -R app:apps /data/* /home/app
4、下載軟件包
# 使用Ansible方式進行部署
su app
cd /data/soft/
wget ****************************/AnsibleFATE_1.11.3_LLM_1.3.0_release_offline.tar.gz
# 解壓文件
cd /data/soft/AnsibleFATE_1.11.3_LLM_1.3.0_release_offline
#安裝fate所需的基礎環境
bash tools/install_base.sh
可以將基礎步驟打包成鏡像,分發到其余節點。
三、FateLLM框架安裝
1、初始化
cd /data/soft/AnsibleFATE_1.11.3_LLM_1.3.0_release_offline
# 在host節點初始化host
bash deploy/deploy.sh init -h="10000:XXX.XXX.XXX.XXX"
# 在guest節點初始化guest
bash deploy/deploy.sh init -g="9999:XXX.XXX.XXX.XXX"
# 初始化后會在deploy/conf文件夾下生成conf文件,可配置安裝的組件
2、生成ansible配置文件
cd /data/soft/AnsibleFATE_1.11.3_LLM_1.3.0_release_offline
# 在host節點初始化host
bash deploy/deploy.sh render
# 會生成var_files/prod文件夾
# 各組件的用戶密碼可在此進行修改
3、進行部署操作
cd /data/soft/AnsibleFATE_1.11.3_LLM_1.3.0_release_offline
# 在host節點和guest節點分別進行部署
bash deploy/deploy.sh deploy
# 安裝部署日志提示無報錯后,安裝成功
4、進行基礎測試
# 單邊測試
# host節點執行
source /data/projects/fate/bin/init_env.sh
flow test toy -gid 10000 -hid 10000
# guest節點執行
source /data/projects/fate/bin/init_env.sh
flow test toy -gid 9999 -hid 9999
# 執行成功后會返回正確結果
(2)配置route_table
# 在host節點添加guest路由信息
vim /data/projects/fate/eggroll/conf/route_table.json
在路由信息中添加
"9999":
{
"default":[
{
"port": XXXX,
"ip": "XXX,XXX,XXX,XXX"
}
]
}
# 同理在guest節點添加host信息
(3)進行雙邊基礎測試
flow test toy -gid 9999 -hid 10000
# 注意在哪個節點執行哪個節點為guest