Project: CubeFS (Runtime / Cloud Native Storage)
File: access.md

`Access` is the access module, mainly responsible for data upload, download, deletion, etc. Access configuration is based on the , and the following configuration instructions mainly apply to private configuration for Access. | Configuration Item | Description | Required | |:|:-|:| | Public Configuration Items | Refer to the section | Yes | | service_register | | Yes, can be used for service discovery in Access after configuration | | limit | | No, single-machine rate limiting configuration | | stream | Main Access configuration item | Yes, refer to the following second-level configuration options | | Configuration Item | Description | Required | |:--|:|:| | idc | IDC for the service | Yes | | maxblobsize | File segment blob size | No, default is 4MB | | mempoolsize_classes | Memory control for file read/write | No | | encoder_concurrency | EC encoding/decoding concurrency | No, default is 1000 | | encoder_enableverify | Whether to enable EC encoding/decoding verification | No, default is enabled | | minreadshards_x | Number of shards to download concurrently for EC reading | No, default is 1. The larger the number, the higher the fault tolerance, but also the higher the

| | shardcrcdisabled | Whether to verify the data CRC of the blobnode | No, default is enabled | | diskpunishinterval_s | Interval for temporarily marking a bad disk | No, default is 60s | | servicepunishinterval_s | Interval for temporarily marking a bad service | No, default is 60s | | blobnode_config | Blobnode RPC configuration | Refer to the RPC configuration section | | proxy_config | Proxy RPC configuration | Refer to the RPC configuration section | | cluster_config | Main cluster configuration | Yes, refer to the following third-level configuration options | | Configuration Item | Description | Required | |:-|:--|:| | region | Region information | Yes, do not change after configuration | | region_magic | CRC field used for encoding file location | Yes, do not change after configuration. If changed, all locations will be invalidated. | | consulagentaddr | Consul address for cluster information | Yes | | clusterreloadsecs | Interval for synchronizing cluster information | No, default is 3s | | servicereloadsecs | Interval for synchronizing service information | No, default is 3s | | clustermgrclientconfig | Clustermgr RPC configuration | Refer to the RPC configuration example | ::: tip Note Support for `health_port` began with version v3.2.1. ::: consul_addr: Consul address for Access service registration service_ip: Access service bind IP node: Hostname health_port: Health check port range for Consul ```json { "consul_addr": "127.0.0.1:8500", "service_ip": "127.0.0.1", "node": "access-node1", "health_port": [9700, 9799] } ``` reader_mbps: Single-machine download bandwidth (MB/s) writer_mbps: Single-machine upload bandwidth (MB/s) name_rps: RPS limit for each interface ```json { "name_rps": { "alloc": 0, "put": 100, "putat": 0, "get": 0, "delete": 0, "sign": 0 }, "reader_mbps": 1000, "writer_mbps": 200 } ``` key: Memory allocation ladder value: Limit on the number of items, 0 means no limit (Access currently does not enable quantity limits) ```json { "2048": 0, "65536": 0, "524288": 0, "2097152": 10240, "8389632": 4096, "16777216": 1024, "33554432": 512, "67108864": 64 } ``` ```json { "max_procs": 0, "shutdowntimeouts": 30, "log": { "level": "info", "filename": "./run/logs/access.log", "maxsize": 1024, "maxage": 7, "maxbackups": 7 }, "bind_addr": ":9500", "service_register": { "consul_addr": "127.0.0.1:8500", "service_ip": "127.0.0.1", "node": "access-node1", "health_port": [9700, 9799] }, "limit": { "name_rps": { "put": 100 }, "reader_mbps": 1000, "writer_mbps": 200 }, "stream": { "idc": "idc", "maxblobsize": 4194304, "mempoolsize_classes": { "2048": 0, "65536": 0, "524288": 0, "2097152": 10240, "8389632": 4096, "16777216": 1024, "33554432": 512, "67108864": 64 }, "encoder_concurrency": 1000, "encoder_enableverify": true, "minreadshards_x": 1, "shardcrcdisabled": false, "cluster_config": { "region": "region", "region_magic": "region", "clusterreloadsecs": 3, "servicereloadsecs": 3, "clustermgrclientconfig": { "clienttimeoutms": 3000, "transport_config": { "auth": { "enable_auth": true, "secret": "secret key" }, "dialtimeoutms": 2000 } }, "consulagentaddr": "127.0.0.1:8500" }, "diskpunishinterval_s": 60, "servicepunishinterval_s": 60, "blobnode_config": { "clienttimeoutms": 10000 }, "proxy_config": { "clienttimeoutms": 5000 } } } ```