部署架构
安装部署
```
## 创建storeclass和namespace
kubectl apply -f opengemini-sc.yaml
## 创建存储
kubectl apply -f opengemini-stroepv.yaml #创建存储的pv&pvc
kubectl apply -f opengemini-metapv.yaml #创meta的pv&pvc
## 创建网络服务
kubectl apply -f opengemini-service.yaml #创meta的pv&pvc
## 创建有状态部署
部署按照启动顺序执行
kubectl apply -f opengemini-StatefulSet-meta.yaml #创meta的pod
kubectl apply -f opengemini-StatefulSet-store.yaml #创meta的pod
kubectl apply -f opengemini-StatefulSet-sql.yaml #创meta的pod
```
资源规划
操作使用
用户安全
-
如使用openGemini集群,修改配置文件openGemini.conf[内网就不需要了]
[http] auth-enabled = true # 内网下边不需要配置 #https-enabled = true #https-certificate = "path/to/certificate.crt" #https-private-key = "path/to/certificate.key"
配置完成后重启
-
初始状态创建管理员账号
curl -i -XPOST "http://10.233.82.58:8086/query" -k --insecure --data-urlencode "q=CREATE USER janle WITH PASSWORD 'Janle5@opengemini' WITH ALL PRIVILEGES"
-
账户授权操作
## auth 登录后 show users; ## 创建用户 CREATE USER user0 WITH PASSWORD 'your_pwd' show databases; ## 授权对用户的读写和全部权限 GRANT [READ,WRITE,ALL] ON <database_name> TO <username> GRANT ALL ON "NOAA_water_database" TO "user0" ## 展示授权 SHOW GRANTS FOR <username> REVOKE ALL ON "NOAA_water_database" FROM "user0" REVOKE [READ,WRITE,ALL] ON <database_name> FROM <username> SET PASSWORD FOR <username> = '<password>' DROP USER <username>
Schema查询
## 创建数据库
CREATE DATABASE <database_name> [WITH [DURATION <duration>] [REPLICATION <n>] [SHARD DURATION <duration>] [INDEX DURATION <duration>] [NAME <retention-policy-name>]]
-- 样例
CREATE DATABASE my_timeseries_db WITH
DURATION 10d -- 数据库中的数据保留期限为30天
-- REPLICATION 2 -- 设置数据副本数量为2 这个应该还没有上线
SHARD DURATION 7d -- 每个分片的数据保留期限为7天
INDEX DURATION 1d -- 索引的保留期限为1天
NAME "default_rp" -- 设置默认的保留策略名称为"default_rp"
;
## 查看数据库
show databases
use databases
## 当前database下的measurements
show measurements
## 了解下业务的模型,查看tag,field,部分series内容
show tag keys
show field keys
show series
## 了解当前服务有多少时间线,一共多少台机器(ip的value个数)
show series cardinality
show tag values cardinality with key
## 查看数据库的保留策略
SHOW RETENTION POLICIES [ON <database_name>]
SHOW RETENTION POLICIES ON NOAA_water_database
聚合查询
## 查询某某台机子是否存在异常情况?聚合分组查询
SELECT <function>(<field key>)FROM _clause WHERE <time_range> GROUP BY time(<time_interval>),[tag key][fill(<fill option>)]
## 具体的聚合函数有 min,max,sum,count,mean,first,last
select count(field) from _clause WHERE <time_range> GROUP BY time(<time_interval>),[tag key][fill(<fill option>)]
## 子查询
## 多表查询