CentOS & Redhat
Red Hat and CentOS users can use the package manager yum to install the latest stable version of CnosDB.
Download
- 社区版
- 企业版
For Ubuntu or Debian users, use the following command to add the CnosDB repository:
cat <<EOF | sudo tee /etc/yum.repos.d/cnosdb.repo
[cnosdb]
name = CnosDB Repository
baseurl = https://cnosdb-package-repository.s3.us-west-2.amazonaws.com/rpm
enabled = 1
gpgcheck = 1
gpgkey = https://cnosdb-package-repository.s3.us-west-2.amazonaws.com/cnosdb.gpg-key.asc
EOF
Update and download software:
sudo yum update & yum install -y cnosdb cnosdb-meta
Please contact us to obtain the installation package for the enterprise version.
Start a standalone instance
1. Edit configuration
- 社区版
- 企业版
Change license_file to specify the correct file location
Get License file, please contact us
license_file = '/etc/cnosdb/license.json'
Change [deployment].mode to singleton
[deployment]
mode = "query_tskv"
2. Start
systemctl start cnosdb
If it is CentOS 7 and earlier versions and RHEL 7 earlier versions, use the following command to start:
service cnosdb start
Starting the cluster
Please add the following records to your DNS resolution server for communication between instances in your CnosDB cluster.Please contact your network administrator when necessary.
| Record type | Hostname | IP |
|---|---|---|
| A | meta1.cnosdb.com | meta1_ip |
| A | meta2.cnosdb.com | meta2_ip |
| A | meta3.cnosdb.com | meta3_ip |
| A | query_tskv1.cnosdb.com | query_tskv1_ip |
| A | query_tskv2.cnosdb.com | query_tskv2_ip |
Start the meta service
1. Edit configuration
Default configuration file location: /etc/cnosdb/cnosdb-meta.conf
Add the records added in the DNS server to the configuration file, assigning different records to different meta services.
host = meta<n>.cnosdb.com
Assign a node_id to each meta service, the id must not be duplicated.
id = n
The configuration file example after configuration is completed is as follows:
id = n
host = "meta<n>.cnosdb.com"
port = 8901
... ...
Start Service
systemctl start cnosdb-meta
If it is CentOS 7 and earlier versions and RHEL 7 earlier versions, use the following command to start:
service cnosdb-meta start
Initialize meta service
If there are multiple
metaservices in your cluster, you only need to execute the initialization command on one of themetaservices.
curl http://meta1.cnosdb.com:8901/init -d '{}'
Add other meta service instances
curl http://meta1.cnosdb.com:8901/add-learner -H "Content-Type: application/json" -d '[2, "meta2.cnosdb.com:8901"]' | jq
curl http://meta1.cnosdb.com:8901/add-learner -H "Content-Type: application/json" -d '[3, "meta3.cnosdb.com:8901"]' | jq
Reset cluster members to make the cluster take effect
Executing the following command can modify the cluster members. If there are multiple
metaservices in your cluster, use the node that initially performed the initialization to execute this command.
curl http://meta1.cnosdb.com:8901/change-membership -H "Content-Type: application/json" -d '[1,2,3]' | jq
View Cluster Status
Specify different nodes separately, perform the following commands to view cluster status.
Replace
<n>in the command to specify a differentmetaservice instance.
curl http://meta<n>.cnosdb.com:8901/metrics | jq
If the cluster installation is successful, the following content should be returned:
statemay also beFollower.
{
"Ok": {
"running_state": {
"Ok": null
},
"id": 1,
... ...
"state": "Leader",
... ...
}
Launch the cnosdb service
Edit profile
The configuration file for the cnosdb service is located at /etc/cnosdb/cnosdb.conf.
Add entries to the DNS server to the configuration file and assign different cnosdb services to different records.
host = "query_tskv<n>.cnosdb.com"
- 社区版
- 企业版
Change license_file to specify the correct file location
Get License file, please contact us
license_file = '/etc/cnosdb/license.json'
Change [deployment].mode to query_tskv.
[deployment]
mode = "query_tskv"
Modify node_id, node_id cannot be duplicated.
[node_basic]
node_id = <n>
Change meta service address.
Change meta service address.
[cluster].name needs to be the same as [meta_init].cluster_name in the cnosdb-meta configuration.
[cluster]
name = "cluster_xxx"
meta_service_addr = ['meta1.cnosdb.com:8901', 'meta2.cnosdb.com:8901', 'meta3.cnosdb.com:8901']
The configuration file example after configuration is completed is as follows:
... ...
host = "query_tskv<n>.cnosdb.com"
[deployment]
mode = 'query_tskv'
... ...
[cluster]
name = 'cluster_xxx'
meta_service_addr = ['meta1.cnosdb.com:8901', 'meta2.cnosdb.com:8901', 'meta3.cnosdb.com:8901']
[node_basic]
node_id = <n>
... ...
Start Service
systemctl start cnosdb
If it is CentOS 7 and earlier versions and RHEL 7 earlier versions, use the following command to start.
service cnosdb start