{"id":20834960,"url":"https://github.com/hstreamdb/deployment-tool","last_synced_at":"2025-05-08T02:32:31.367Z","repository":{"id":65184275,"uuid":"532804282","full_name":"hstreamdb/deployment-tool","owner":"hstreamdb","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-17T03:01:23.000Z","size":333,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-15T00:51:13.191Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hstreamdb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-05T08:11:03.000Z","updated_at":"2024-05-17T03:01:26.000Z","dependencies_parsed_at":"2023-12-28T11:30:53.232Z","dependency_job_id":"0f8d6ee0-77a7-46bf-a9ef-e102d1061da5","html_url":"https://github.com/hstreamdb/deployment-tool","commit_stats":{"total_commits":54,"total_committers":3,"mean_commits":18.0,"dds":0.2777777777777778,"last_synced_commit":"bf29cfcdd6e456f2acb949317050844b576ec581"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hstreamdb%2Fdeployment-tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hstreamdb%2Fdeployment-tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hstreamdb%2Fdeployment-tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hstreamdb%2Fdeployment-tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hstreamdb","download_url":"https://codeload.github.com/hstreamdb/deployment-tool/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252986886,"owners_count":21836248,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-18T00:22:06.444Z","updated_at":"2025-05-08T02:32:31.342Z","avatar_url":"https://github.com/hstreamdb.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# deployment-tool\n\nThis repository contains a command tool `hdt`, which can be used to set up a HStreamDB Cluster with docker.\n\n## Quick start\n\n### Check environment\n\n- Start HStreamDB requires an operating system kernel version greater than at least Linux 4.14. Check with command:\n\n  ```shell\n  uname -r\n  ```\n\n- Make sure docker is installed.\n\n- Make sure that the log-in user has `sudo` execute privileges，and configure `sudo` without password.\n\n- For nodes which deploy `HStore` instances, mount the data disk to `/mnt/data*/`.\n\n  - \"*\" Matching incremental numbers, start from zero\n  - one disk should mount to one directory. e.g. if we have two data disks `/dev/vdb` and `/dev/vdc`, then `/dev/vdb` should mount to `/mnt/data0` and `/dev/vdc` should mount to `/mnt/data1`\n\n### Installation\n\nBinaries are available here: https://github.com/hstreamdb/deployment-tool/releases\n\n### Generate configuration template \u0026\u0026 init local environment\n\n```shell\n./hdt init\n```\n\nThe current directory structure will be as follows after running the `init` command:\n\n```shell\n├── hdt\n└── template                 \n    ├── config.yaml\n    ├── grafana\n    │   ├── dashboards\n    │   └── datasources\n    ├── prometheus\n    └── script\n```\n\n### Update `config.yaml`\n\nUpdate the `config.yaml` file with cluster-related information. The configuration in the `config.yaml` template will deploy a cluster on 3 nodes, each consisting of a `HServer` instance, a `HStore` instance, a `Meta-Store` instance and associated monitoring components. `Prometheus` 、`Grafana`  and other monitor components will be deploy on a separate node.\n\nTo use this configuration file, just update the host information of the node and the ssh key-pair path. The final configuration file may looks like:\n\n```shell\nglobal:\n  user: \"root\"\n  key_path: \"~/.ssh/hstream.pem\"\n  ssh_port: 22\n\nmonitor:\n  node_exporter_port: 9100\n  cadvisor_port: 7000\n  grafana_disable_login: true\n\nhserver:\n  - host: 172.24.47.173\n  - host: 172.24.47.174\n  - host: 172.24.47.175\n\nhstore:\n  - host: 172.24.47.173\n    enable_admin: true\n  - host: 172.24.47.174\n  - host: 172.24.47.175\n\nmeta_store:\n  - host: 172.24.47.173\n  - host: 172.24.47.174\n  - host: 172.24.47.175\n\nprometheus:\n  - host: 172.24.47.172\n\ngrafana:\n  - host: 172.24.47.172\n  \nhstream_exporter:\n  - host: 172.24.47.172\n```\n\n### Set up cluster\n\n```shell\n./hdt start \n```\n\n### Remove cluster\n\n```shell\n./hdt remove\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhstreamdb%2Fdeployment-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhstreamdb%2Fdeployment-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhstreamdb%2Fdeployment-tool/lists"}