#yasboot package
# package config gen
本命令用于根据输入的各选项生成配置文件。
| 选项 | 含义 |
|---|---|
| -c,--cluster | 生成的集群名称(必传参数) |
| -u,--username | 服务器SSH用户名 |
| --groupname | 用户组名称,默认和username相同 |
| -p,--password | SSH登录密码 |
| -N,--no-password | SSH免密登录 |
| --ip | 服务器SSH的IP地址,多个IP间用逗号,隔开 |
| --port | 服务器SSH连接端口 |
| -i, --install-path | 数据库安装路径 |
| -su,--sudo-username | 具有sudo权限的SSH用户,缺省使用同--username相同的值(用于执行需要sudo权限的命令,例如创建cgroup目录) |
| -sp,--sudo-password | 具有sudo权限的SSH用户密码,缺省使用同--password相同的值 |
| --no-add-yasdba | 不添加安装用户到YASDBA用户组 |
| --boot-start-monit | 开启自启动monit守护进程(添加启动命令到/etc/rc.local) |
| --host | 服务器连接信息表达式 |
| -t, --yas-type | 数据库部署的部署形态: * DE:分布式部署,默认值 * SE:单机部署 * CE:共享集群部署 |
| -d, --deploy-mode | 分布式部署的部署模式: * MINI:最小规模部署,按1MN 1CN 3DN规模部署在同一台服务器 * NORMAL:常规部署,根据下述节点规模进行部署 |
| -L,--local | 是否本地部署(不需要安装包),默认为false |
| --ipv6 | 本地部署是否使用IPv6,默认使用IPv4 |
| --mn | 分布式MN类型节点的部署规模,默认为1 |
| --cn | 分布式CN类型节点的部署规模,默认为1 |
| --dn | 分布式DN组及节点规模,例如1-3表示1一个组3个节点(组内一主两备) |
| --db | 单机DB组及节点部署的节点规模,默认为1 |
| --listen-cidr | 数据库的监听地址(默认与IP网段一致) |
| --din-cidr | 分布式网络通信链路地址(默认与IP网段一致) |
| --replica-cidr | 主备复制链路地址(默认与IP网段一致) |
| --begin-port | 起始端口1688 |
| --data-path | 数据库实例的DATA目录 |
| -f, --force | 是否强制部署数据库,强制表示不会检查当前服务器运行状态是否能够部署 |
| --ce | 共享集群类型节点的部署规模,默认为2,最大为8 |
| --inter-cidr | 共享集群内部网络通信链路地址(默认与IP网段一致) |
| --ce-data | 共享集群数据盘,支持输入多个,使用逗号分隔 |
| --ce-vote | 共享集群投票盘 |
| --ce-ycr | 共享集群YCR盘 |
| --create-cgroup | 是否创建资源管理cgroup目录(默认为否),启用时需至少指定-u,-p或者-su,-sp其中之一 |
| --cgroup-path | 资源管理cgroup目录(默认为/sys/fs/cgroup) |
| --recommend-param | 是否开启推荐参数功能 |
| --memory-limit | 服务器的可使用内存百分比上限,默认为80 |
| --table-type | 使数据库配置参数更适合主要业务的表类型,可选[HEAP,TAC,LSC],单机默认为HEAP,分布式默认为LSC |
| -fg, --failgroup | 共享集群磁盘组的故障组数量(默认为1) |
| --ce-group | 共享集群组的个数,共享集群部署中的独有参数,默认数量为1 |
参数说明:
- IP:可以采用
192.168.157.[1-3]缩写表示192.168.157.1, 192.168.157.2, 192.168.157.3三个连续的IP地址。若为IPv6地址需要带中括号,若为链路本地地址还需带网卡号。IP支持配置为如下四种组合:- IPv4地址
- IPv6地址
- IPv4地址与IPv4映射IPv6地址(
[::ffff:192.168.157.1]) - IPv6地址与IPv4映射IPv6地址
- CIDR:可以通过
--listen-cidr 0.0.0.0/0,192.168.1.0/22配置多个网段。 - 密码:若已配置SSH免密,密码为可选参数。
$ yasboot package config gen --cluster yashandb -u yashan -p password \
--ip 192.168.157.1,192.168.157.2,192.168.157.3 --port 22 --install-path /var/database/yashan --begin-port 1688
$ yasboot package config gen --cluster yashandb -u yashan -p password \
--ip [fc00:157::129],[fc00:157::130],[fc00:157::131] --port 22 --install-path /var/database/yashan --begin-port 1688
$ yasboot package config gen --cluster yashandb -u yashan -p password \
--ip [::1],[fe80::20c:29ff:fe75:582b%ens33],[fc00:157::129] --port 22 --install-path /var/database/yashan --begin-port 1688
上述命令等同于:
$ yasboot package config gen --cluster yashandb -u yashan -p password \
--ip 192.168.157.[1-3] --port 22 --install-path /var/database/yashan --begin-port 1688
$ yasboot package config gen --cluster yashandb -u yashan -p password \
--ip [fc00:157::[129-131]] --port 22 --install-path /var/database/yashan --begin-port 1688
$ yasboot package config gen --cluster yashandb --host yashan:password@[::1],[fe80::20c:29ff:fe75:582b%ens33],[fc00:157::129]:22:/var/database/yashan --begin-port 1688
使用服务器连接信息表达式:
- 全参数:
username:password@IP1,IP2,IP3:port:install-path - 配置了SSH免密的情况下password可以为空:
username:@IP1,IP2,IP3:port:install-path - IP支持通过缩写表示连续IP地址:
username:@192.168.157.[1-3]:port:install-path - 端口可以省略:
username:password@IP1,IP2,IP3:install-path - 安装路径可以省略:
username:password@IP1,IP2,IP3:port
$ yasboot package config gen -c yashandb \
--host yashan:password@IP1,IP2,...,IPn:22:/var/database/yashan --begin-port 1688
# package se gen
本命令用于根据输入的各选项生成单机部署的配置文件。
| 选项 | 含义 |
|---|---|
| -c,--cluster | 生成的集群名称(必传参数) |
| -u,--username | 服务器SSH用户名 |
| --groupname | 用户组名称,默认和username相同 |
| -p,--password | SSH登录密码 |
| -N,--no-password | SSH免密登录 |
| --ip | 服务器SSH的IP地址,多个IP间用逗号,隔开 |
| --port | 服务器SSH连接端口 |
| -i, --install-path | 数据库安装路径 |
| -su,--sudo-username | 具有sudo权限的SSH用户,缺省使用同--username相同的值(用于执行需要sudo权限的命令,例如创建cgroup目录) |
| -sp,--sudo-password | 具有sudo权限的SSH用户密码,缺省使用同--password相同的值 |
| --host | 服务器连接信息表达式 |
| -L,--local | 是否本地部署(不需要安装包),默认为false |
| --ipv6 | 本地部署是否使用IPv6,默认使用IPv4 |
| --listen-cidr | 数据库的监听地址(默认与IP网段一致) |
| --begin-port | 起始端口1688 |
| --data-path | 数据库实例的DATA目录 |
| -f, --force | 是否强制部署数据库,强制表示不会检查当前服务器运行状态是否能够部署 |
| --node | 单机db组及节点部署的节点规模,默认为1 |
| --replica-cidr | 主备复制链路地址(默认与IP网段一致) |
| --ssl-protocol | SSL协议,仅支持SSL |
| --ssl-path | SSL秘钥所在的目录 |
| --create-cgroup | 是否创建资源管理cgroup目录(默认为否),启用时需至少指定-u,-p或者-su,-sp其中之一 |
| --cgroup-path | 资源管理cgroup目录(默认为/sys/fs/cgroup) |
| --recommend-param | 是否开启推荐参数功能 |
| --memory-limit | 服务器的可使用内存百分比上限,默认为80 |
| --cpu-limit | 服务器的可使用CPU百分比上限,默认为100 |
| --scene | 参数调优的场景,可选[NORMAL,TPCH],默认为NORMAL |
| --scale-factor | 诸如TPCH等测试场景的数据规模,默认为100,表示100G测试数据 |
| --table-type | 主要业务的表类型,可选[HEAP,TAC,LSC],默认为HEAP |
| --plugins | 需要安装的插件,可选参数,省略时默认为all,可选项包括[all,none,dblink,gis,listagg,s3,udf],多个选项间使用逗号,分隔,选项含义如下:all:安装所有插件 none:不安装插件 dblink:安装用于DBLink相关功能的插件 gis:安装用于内置的GIS函数的插件 listagg:安装用于内置的LSFA_LISTAGG函数的插件 s3:安装用于S3 bucket相关功能的插件 udf:安装用于自定义函数相关功能的插件 |
| --log-path | yasagent、yasom、数据库run.log、slow.log的路径 |
| --dev | 仅内部开发使用 |
# package de gen
本命令用于根据输入的各选项生成分布式部署的配置文件。
| 选项 | 含义 |
|---|---|
| -c,--cluster | 生成的集群名称(必传参数) |
| -u,--username | 服务器SSH用户名 |
| --groupname | 用户组名称,默认和username相同 |
| -p,--password | SSH登录密码 |
| -N,--no-password | SSH免密登录 |
| --ip | 部署的IP地址,多个IP间用逗号,隔开 |
| --port | 服务器SSH连接端口 |
| -i, --install-path | 数据库安装路径 |
| -su,--sudo-username | 具有sudo权限的SSH用户,缺省使用同--username相同的值(用于执行需要sudo权限的命令,例如创建cgroup目录) |
| -sp,--sudo-password | 具有sudo权限的SSH用户密码,缺省使用同--password相同的值 |
| --host | 服务器连接信息表达式 |
| -L,--local | 是否本地部署(不需要安装包),默认为false |
| --ipv6 | 本地部署是否使用IPv6,默认使用IPv4 |
| --listen-cidr | 数据库的监听地址(默认与IP网段一致) |
| --begin-port | 起始端口1688 |
| --data-path | 数据库实例的DATA目录 |
| -d, --deploy-mode | 分布式部署的部署模式: * MINI:最小规模部署,按1MN 1CN 3DN规模部署在同一台服务器 * NORMAL:常规部署,根据下述节点规模进行部署 |
| -f, --force | 是否强制部署数据库,强制表示不会检查当前服务器运行状态是否能够部署 |
| --mn | 分布式MN类型节点的部署规模,默认为1 |
| --cn | 分布式CN类型节点的部署规模,默认为1 |
| --dn | 分布式DN组及节点规模,例如1-3表示1一个组3个节点(组内一主两备) |
| --replica-cidr | 主备复制链路地址(默认与IP网段一致) |
| --din-cidr | 分布式网络通信链路地址(默认与IP网段一致) |
| --ssl-protocol | SSL协议,仅支持SSL |
| --ssl-path | SSL秘钥所在的目录 |
| --create-cgroup | 是否创建资源管理cgroup目录(默认为否) |
| --cgroup-path | 资源管理cgroup目录(默认为/sys/fs/cgroup),启用时需至少指定-u,-p或者-su,-sp其中之一 |
| --recommend-param | 是否开启推荐参数功能 |
| --memory-limit | 服务器的可使用内存百分比上限,默认为80 |
| --cpu-limit | 服务器的可使用CPU百分比上限,默认为100 |
| --scene | 参数调优的场景,可选[NORMAL,TPCH],默认为NORMAL |
| --scale-factor | 诸如TPCH等测试场景的数据规模,默认为100,表示100G测试数据 |
| --table-type | 主要业务的表类型,可选[HEAP,TAC,LSC],默认为LSC |
| --node-info | 指定节点部署信息的文件路径,该参数用于将备份集恢复到空集群,通过yasrman的查看备份集获得。 |
| --plugins | 需要安装的插件,可选参数,省略时默认为all,可选项包括[all,none,dblink,gis,listagg,s3,udf],多个选项间使用逗号,分隔,选项含义如下:all:安装所有插件 none:不安装插件 dblink:安装用于DBLink相关功能的插件 gis:安装用于内置的GIS函数的插件 listagg:安装用于内置的LSFA_LISTAGG函数的插件 s3:安装用于S3 bucket相关功能的插件 udf:安装用于自定义函数相关功能的插件 |
| --log-path | yasagent、yasom、数据库run.log、slow.log的路径 |
| --dev | 仅内部开发使用 |
# package ce gen
本命令用于根据输入的各选项生成共享集群部署的配置文件。
| 选项 | 含义 |
|---|---|
| -c,--cluster | 生成的集群名称(必传参数) |
| -u,--username | 服务器SSH用户名 |
| --groupname | 用户组名称,默认和username相同 |
| -p,--password | SSH登录密码 |
| -N,--no-password | SSH免密登录 |
| --ip | 部署的IP地址,多个IP间用逗号,隔开 |
| --port | 服务器SSH连接端口 |
| -i, --install-path | 数据库安装路径 |
| -su,--sudo-username | 具有sudo权限的SSH用户(用于执行需要sudo权限的命令,例如创建cgroup目录) |
| -sp,--sudo-password | 具有sudo权限的SSH用户密码 |
| --host | 服务器连接信息表达式 |
| -L,--local | 是否本地部署(不需要安装包),默认为false |
| --ipv6 | 本地部署是否使用IPv6,默认使用IPv4 |
| --listen-cidr | 数据库的监听地址(默认与IP网段一致) |
| --begin-port | 起始端口1688 |
| --data-path | 数据库实例的DATA目录 |
| -f, --force | 是否强制部署数据库,强制表示不会检查当前服务器运行状态是否能够部署 |
| --node | 共享集群类型主集群节点的部署规模,默认为2 |
| --replica-cidr | 主备集群复制链路地址(默认与IP网段一致) |
| --inter-cidr | 共享集群单个集群内实例之间的网络通信链路地址(默认与IP网段一致) |
| --data | 共享集群数据盘,支持输入多个,使用逗号分隔 |
| --vote | 共享集群投票盘 |
| --ycr | 共享集群ycr盘 |
| -fg, --failgroup | 共享集群磁盘组的故障组数量(默认为1) |
| --group | 共享集群组的个数,默认数量为1 |
| --standby-node | 共享集群类型备集群节点的部署规模,默认和node一致 |
| --ssl-protocol | SSL协议,仅支持SSL |
| --ssl-path | SSL秘钥所在的目录 |
| --plugins | 需要安装的插件,可选参数,省略时默认为all,可选项包括[all,none,dblink,gis,listagg,s3,udf],多个选项间使用逗号,分隔,选项含义如下:all:安装所有插件 none:不安装插件 dblink:安装用于DBLink相关功能的插件 gis:安装用于内置的GIS函数的插件 listagg:安装用于内置的LSFA_LISTAGG函数的插件 s3:安装用于S3 bucket相关功能的插件 udf:安装用于自定义函数相关功能的插件 |
| --log-path | yasagent、yasom、数据库run.log、slow.log的路径 |
| --dev | 仅内部开发使用 |
# package config join-demo
本命令用于生成托管命令使用的配置文件模板join_demo.toml。
| 选项 | 含义 |
|---|---|
| -t, --type | 待托管数据库集群的类型(必传参数),SE表示单机部署,DE表示分布式部署 |
| -d, --dir | 配置文件生成的路径(默认当前目录) |
示例
$ yasboot package config join-demo -t SE
# package config show
本命令用于展示生成的集群配置文件信息。
| 选项 | 含义 |
|---|---|
| -c, --cluster | 部署YashanDB的集群名(隐藏参数) |
| -t, --toml | 需要展示的集群配置文件名(例如yashandb.toml)(隐藏参数) |
| -b, --by | 按服务器/节点组来展示,默认值为host(隐藏参数) |
示例
$ yasboot package config show -c yashandb
# package upload
本命令用于更新hosts.toml的信息和上传新的YashanDB软件包。
| 选项 | 含义 |
|---|---|
| -t, --toml | 更新的toml文件(必传参数) |
| -i, --install-pkg | 新的安装包路径(废弃参数) |
示例
$ yasboot package upload -t hosts.toml
# package install
本命令用于对远程服务器执行软件包安装(可通过toml文件配置对全部还是特定服务器执行安装),软件包为tar.gz格式。
| 选项 | 含义 |
|---|---|
| -i, --install-pkg | 软件包文件本地路径(废弃参数) |
| --plugin | 插件包文件本地路径(废弃参数) |
| --deps | 依赖包文件本地路径(隐藏参数) |
| -f, --force | 忽略错误并强制安装,默认为false |
| -t, --toml | 要安装软件包的服务器相关信息的配置文件 |
| --disable | 屏蔽任务进度条展示 |
示例
$ yasboot package install -t hosts.toml
# package uninstall
本命令用于对远程服务器上已安装的软件进行卸载(可通过toml文件配置选对全部还是对特定服务器执行卸载)。
| 选项 | 含义 |
|---|---|
| -c, --cluster | 部署YashanDB的集群名(必传参数) |
| -t, --toml | 以SSH方式卸载,需要服务器配置文件如hosts.toml |
| -d, --child | 展示任务以及子任务信息 |
| -f, --force | 强制卸载,默认false |
| --disable | 屏蔽任务进度条展示 |
示例
--卸载整个集群
$ yasboot package uninstall -c yashandb
--按配置文件卸载
$ yasboot package uninstall -c yashandb -t hosts.toml
# package upgrade
本命令用于对远程服务器上已安装的软件(yasom,yasagent)进行升级。 必须在升级数据库完成后才能执行。
| 选项 | 含义 |
|---|---|
| -t, --toml | 需要服务器配置文件如hosts.toml(必传参数) |
| --package | 升级软件包的绝对路径(废弃参数) |
| --plugin | 插件包文件本地路径(废弃参数) |
| -d, --child | 展示任务以及子任务信息 |
| --disable | 屏蔽任务进度条展示 |
| --deps | 依赖包文件本地路径(隐藏参数) |
| --same-version | 同版本升级(隐藏参数) |
| --only-replace-without-version-limit | 忽略检查直接替换二进制,该参数属于高危操作,请勿在生产环境使用(隐藏参数) |
示例
$ yasboot package upgrade -t hosts.toml
# package rollback
本命令用于对远程服务器上已安装的软件(yasom,yasagent)进行回滚。
| 选项 | 含义 |
|---|---|
| -c, --cluster | 部署YashanDB的集群名(必传参数) |
| -t, --toml | 需要服务器配置文件如hosts.toml(必传参数) |
| --disable | 屏蔽任务进度条展示 |
示例
$ yasboot package rollback -c yashandb -t hosts.toml
# package verify
本命令用于校验安装包是否被篡改。
示例
# 解压安装包后,使用安装包里的yasboot执行如下命令即可
$ yasboot package verify

