Configuration Before MindIO Installation
Before installing MindIO components in batches, perform the following operations to complete necessary configuration:
- Log in to the server where ascend-deployer is located.
- Modify the MindIO configuration file on the server where ascend-deployer is located.
Go to the ascend-deployer/ascend_deployer/playbooks/roles/mindx.dl/templates directory and edit the memfs.conf file. The parameters in the configuration file are described as follows. You can modify the parameters as required, and then run the :wq command to save the file and exit.
Table 1 Parameter description Parameter
Description
Value Range
Default Value
memfs.mount_path
Mount path of the MindIO file system. You can customize the mount path to view files in the MindIO memory cache system. Ensure that the directory specified by this parameter is empty. The directory will be re-created during MindIO installation.
-
/mnt/memfs
memfs.data_block_pool_capacity_in_gb
Memory size allocated to the MindIO file system, in GB. Set this parameter based on the memory size of the server. It is recommended that the value be less than or equal to 25% of the total system memory.
1–1024
128
memfs.data_block_size_in_mb
Minimum granularity for allocating file data blocks, in MB. Set this parameter based on the sizes of most files in application scenarios. It is recommended that the average data block size of each file be less than or equal to 128 MB.
1–1024
128
memfs.max_open_files
Maximum number of open files.
1024–65536
4096
memfs.fuse_path
(Optional) Address of the FUSE dynamic link library on a node. The address is automatically input during installation.
-
-
memfs.write.parallel.enabled
Optimization for MindIO concurrent write performance. You need to determine whether to enable this function based on the service data model characteristics.
- false: disabled
- true: enabled
false
memfs.write.parallel.thread_num
Number of concurrent threads for MindIO write performance optimization.
2–96
32
memfs.write.parallel.slice_in_mb
Data segmentation granularity for MindIO concurrent write performance optimization, in MB.
1–1024
16
underfs.count
Number of backend storage instances. Each storage instance corresponds to a mounted local directory.
1–32
1
underfs.default
Default ID used by the backend storage.
1–underfs.count
1
underfs.<ID>.type
Type of the <ID>th backend storage. Currently, only pacific is supported. Value range of <ID>: 1–underfs.default
-
pacific
underfs.<ID>.name
Name of the <ID>th backend storage. The name of each backend storage must be unique. Value range of <ID>: 1–underfs.default
-
pacific01
underfs.<ID>.mount_path
Mount directory of the <ID>th backend storage. You need to connect and mount the Pacific backend storage. Value range of <ID>: 1–underfs.default
-
/mnt/dpc<ID>
underfs.<ID>.docker_map_path
Mapping directory of the mount directory of the <ID>th backend storage in Docker. The value range of <ID> is 1–underfs.default.
You need to set this parameter when backend storage is operated on the host, services are running in Docker, and the mapping directory of the backend storage in Docker is different from its mount directory.
-
-
background.backup.enabled
Whether to enable backup.
- false: disabled
- true: enabled
true
background.backup.thread_num
Number of backup threads.
1–256
32
background.backup.ufs_name
Name of the backend storage for backup.
-
pacific01
background.backup.failed_retry_times
Retry times.
10–60
10
background.backup.failed_retry_max_interval_sec
Retry interval, in seconds.
10–60
10
background.backup.failed_max_cnt_for_unserviceable
Threshold of failed backup counts to stop the MindIO service.
10–60
10
background.backup.failed_auto_evict_file
Whether to automatically cancel the backend backup task after the file fails to be backed up to underfs.
- false: does not cancel backend backup
- true: cancels backend backup.
false
ipc.max_message_size_in_kb
Maximum message length, in KB.
4–1024
16
ipc.permit_super_user_access
Whether to allow the root user to access files in the MindIO file system through the MindIO SDK.
NOTICE:By default, the root user is not allowed to access the system. Granting access permission to the root user may cause security. Therefore, exercise caution when enabling the access permission.
- false: no
- true: yes
false
ipc.author.enabled
Whether to enable trustlist verification.
NOTICE:Disabling trustlist verification may cause risks. Exercise caution when performing this operation.
- false: disabled
- true: enabled
true
ipc.author.encrypted
Whether to enable trustlist encryption.
NOTICE:Disabling trustlist encryption may cause risks. Exercise caution when performing this operation.
- false: disabled
- true: enabled
true
ipc.author.file_path
Address for storing the trustlist.
-
/opt/mindio/security/authorization/whitelist
ipc.kmc.ksf.master
Address of the primary encryption file of the trustlist.
-
/opt/mindio/tools/pmt/master/ksfa
ipc.kmc.ksf.standby
Address of the standby encryption file of the trustlist.
-
/opt/mindio/tools/pmt/standby/ksfb
- Configure the IP addresses and usernames of other target compute nodes on the server where ascend-deployer is located.
Go to the ascend-deployer/ascend_deployer directory, edit the inventory_file file, comment out or delete localhost ansible_connection='local' under [worker], add the IP addresses and user names of the execution device and the device to be installed, and run the :wq command to save the modification and exit. The format is as follows:
[worker] ip_address_1 ansible_ssh_user="root"# root user ip_address_2 ansible_ssh_user="root"# root user ip_address_3 ansible_ssh_user="username" # non-root user
- In non-single-server deployment scenarios, do not mix local host and IP addresses in inventory_file. You are advised to set both values to IP addresses for both the execution device and the device to be installed.
- ip_address can be set to an IPv4 or IPv6 address. The type of the IP address used by an SSH client such as PuTTY to connect to the execution device must be the same as that configured in the inventory_file, which should be either IPv4 or IPv6.
- In the inventory_file, you can configure the passwords of other target devices for SSH password authentication by specifying the ansible_ssh_pass field. If the SSH key authentication mode is used, this configuration is not required. If the OS of a target device is openEuler_20.03LTS, openEuler_22.03LTS, or CentOS 7.6, the ansible_ssh_pass field cannot be used for this configuration.
- (Optional) During batch deployment, the default number of concurrences is 50, and the maximum number of concurrences is 255. If the number of environments to be deployed is greater than 50, go to the ascend-deployer/ascend_deployer directory and change the value of forks in the ansible.cfg file to the total number of nodes to be deployed to speed up the deployment.
[defaults] forks=50