鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

创建admin user、storage targets和chain table

本章节主要描述如何在META节点创建admin user、storage targets和chain table。

  1. 创建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”中。

  2. 安装Python依赖。
    pip3 install -r /home/3fs/deploy/data_placement/requirements.txt
  3. 创建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”

  4. 计算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
  5. 创建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
  6. 上传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"
  7. 上传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"
  8. 查看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) 
    # ...