创建admin user、storage targets和chain table
本章节主要描述如何在META节点创建admin user、storage targets和chain table。
- 创建admin user。
/opt/3fs/bin/admin_cli -cfg /opt/3fs/etc/admin_cli.toml "user-add --root --admin 0 root"
回显信息如下。
# Uid 0 # Name root # Token AAB7sN/h8QBs7/+B2wBQ03Lp(Expired at N/A) # IsRootUser true # IsAdmin true # Gid 0
其中AAB7sN/h8QBs7/+B2wBQ03Lp就是Token,将其保存到“/opt/3fs/etc/token.txt”中。
- 安装Python依赖。
pip3 install -r /home/3fs/deploy/data_placement/requirements.txt
- 创建chain Table。
cd /home python3 /home/3fs/deploy/data_placement/src/model/data_placement.py -ql -relax -type CR --num_nodes 3 --replication_factor 3 --min_targets_per_disk 6
其中:
- --num_nodes:存储节点数量。
- --replication_factor:副本因子。
执行成功会在当前目录下生成一个“output/DataPlacementModel-v_*”文件夹,如“/home/output/DataPlacementModel-v_3-b_6-r_6-k_3-λ_3-lb_3-ub_3”。
- 计算chain。
python3 /home/3fs/deploy/data_placement/src/setup/gen_chain_table.py \ --chain_table_type CR --node_id_begin 10001 --node_id_end 10003 \ --num_disks_per_node 8 --num_targets_per_disk 6 \ --target_id_prefix 1 --chain_id_prefix 9 \ --incidence_matrix_path /home/output/DataPlacementModel-v_3-b_6-r_6-k_3-λ_3-lb_3-ub_3/incidence_matrix.pickle
其中:
- --node_id_begin:storage节点NodeId开始值。
- --node_id_end:storage节点NodeId结束值。
- --num_disks_per_node:每个存储节点挂载了几块硬盘。
- -num_targets_per_disk:每个挂载的硬盘有几个taget。
- --incidence_matrix_path:#kunpeng3fs_01_0018/li98157184419生成的文件路径。
执行成功后,查看“output”目录下是否产生了以下文件。
-rw-r--r-- 1 root root 2387 Mar 6 11:55 generated_chains.csv -rw-r--r-- 1 root root 488 Mar 6 11:55 generated_chain_table.csv -rw-r--r-- 1 root root 15984 Mar 6 11:55 remove_target_cmd.txt
- 创建storage target。
/opt/3fs/bin/admin_cli --cfg /opt/3fs/etc/admin_cli.toml --config.user_info.token $(<"/opt/3fs/etc/token.txt") < /home/output/create_target_cmd.txt
- 上传chains到mgmtd service。
/opt/3fs/bin/admin_cli --cfg /opt/3fs/etc/admin_cli.toml --config.user_info.token $(<"/opt/3fs/etc/token.txt") "upload-chains /home/output/generated_chains.csv"
- 上传chain table到mgmtd service。
/opt/3fs/bin/admin_cli --cfg /opt/3fs/etc/admin_cli.toml --config.user_info.token $(<"/opt/3fs/etc/token.txt") "upload-chain-table --desc stage 1 /home/output/generated_chain_table.csv"
- 查看list-chains。
/opt/3fs/bin/admin_cli -cfg /opt/3fs/etc/admin_cli.toml "list-chains"
回显信息如下。
# ChainId ReferencedBy ChainVersion Status PreferredOrder Target Target Target # 900100001 1 1 SERVING [] 101000300101(SERVING-UPTODATE) 101000200101(SERVING-UPTODATE) 101000100101(SERVING-UPTODATE) # 900100002 1 1 SERVING [] 101000300102(SERVING-UPTODATE) 101000200102(SERVING-UPTODATE) 101000100102(SERVING-UPTODATE) # ...
父主题: 部署3FS