使用外置【TDSQL -C MySQL】数据库部署ONES
前置约束
- 仅支持ONES初装时指定
- 要求ONES版本不低于3.14.29
- TDSQL数据库root用户密码
操作步骤
准备外置数据库
请自行准备好一个TDSQL数据库实例,最好是一个新的实例,不要使用已有的实例,以免影响已有业务
调整TDSQL数据库配置
参数 | ONES 配置 |
---|---|
bulk_insert_buffer_size | 8388608 |
character_set_server | utf8mb4 |
collation_server | utf8mb4_unicode_ci |
explicit_defaults_for_timestamp | ON |
innodb_large_prefix | ON |
innodb_lock_wait_timeout | 120 |
innodb_max_dirty_pages_pct | 90 |
interactive_timeout | 28800 |
join_buffer_size | 8192kb |
max_connect_errors | 6000 |
net_read_timeout | 600 |
net_write_timeout | 600 |
query_cache_size | 8M |
read_buffer_size | 2M |
session_track_gtids | OWN_GTID |
sort_buffer_size | 8M |
tmp_table_size | 16M |
wait_timeout | 28800 |
transaction_isolation | REPEATABLE-READ |
innodb_flush_log_at_trx_commit | 2 |
init_connect | 'SET NAMES utf8mb4' |
read_rnd_buffer_size | 8M |
使用外置TDSQL部署ONES
通过命令行配置 ONES
执行下方的命令后,根据命令行提示输入所需配置项的值
ones-ai-k8s.sh make init-config
示例输出:
[root@localhost config]# ones-ai-k8s.sh make init-config
kubectl rollout status deploy -n ones-installer installer-api --timeout=60s
deployment "installer-api" successfully rolled out
kubectl get po -n ones-installer -l app=installer-api --sort-by='{.metadata.creationTimestamp}' -o jsonpath='{.items[-1].metadata.name}'
kubectl exec -n ones-installer -it installer-api-74cc465bcb-wv6qv -c installer-api -- bash -c "cd /data/ones/ones-ai-k8s && make init-config"
make[1]: Entering directory '/data/ones/ones-ai-k8s'
python3 script/app/files/init-config.py \
--cmd_to_list_env="make get_value GET_ALL_CONFIG=true --no-print-directory" \
--config_rules=default/init-config/init-config-rules.yaml
local_env by [sh -c make get_value GET_ALL_CONFIG=true --no-print-directory]
Notice!!!
Please read the Terms of Service( https://ones.cn/service-terms ) and Privacy Policy( https://ones.cn/privacy-policy ) of ONES.
Please enter 'yes' to save the configuration, otherwise exit: yes
# [defaultLanguage] Team's default language. For example 'zh(Chinese)', 'en(English)', 'ja(Japanese)' etc.
# [defaultLanguage] When entering an empty value, use the system-generated value 'zh'
please input [defaultLanguage]:
...more
修改外置数据库相关配置
请根据实际情况调整 ONES 侧需要的外置数据库配置(config/private.yaml),参数调整请参考外置数据库配置调整
修改配置
进入操作机
ones-ai-k8s.sh
编辑配置文件
vi config/private.yaml
# 如果是 TDSQL 8,需要配置 migrationRuntime
migrationRuntime: "img.ones.pro/library/mysqldump8:8.0.34_2" # 需要手动拉取这个镜像放到环境中
命令行安装启动ONES
上一步已经进入了操作机,直接执行下方的命令即可;
如果是在宿主机上,可以执行 ones-ai-k8s.sh bash script/ones/deploy-ones.sh
等待脚本执行完成后,代表ONES部署完成。后续登陆ONES,以及验证系统是否正常部署完成请参考登陆 ONESbash script/ones/deploy-ones.sh