Kudu command tools

介绍

        kudu集群部署完毕后,如何管理kudu集群?官方提供了kudu command tool工具来管理kudu集群,通过kudu command,可以对master、tserver、tablet、tables、wal、fs、replica进行管理。

cluster

    ksck:检查kudu集群的健康

kudu cluster ksck <master_addresses> [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=<concurrency>] [-nochecksum_snapshot] [-color=<color>] [-tables=<tables>] [-tablets=<tablets>] 
master_addresses:逗号分隔的master地址
checksum_cache_blocks:是否检查扫描read blocks
checksum_scan:对集群中的数据进行校验和扫描
checksum_scan_concurrency:每个ts设置多少扫描校验执行器,默认4
color:输出是否有颜色
tables:一个逗号分隔的检查tables,空表示检查所有tables
tablets:逗号分隔的tablets id,空表示检查所有tablets

fs

    format:格式化一个新的kudu文件系统

kudu fs format [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] [-uuid=<uuid>]
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动
uuid:filesystem使用的uuid,如果没有指定,则会自动产生一个

    dump:dump出kudu文件系统

        cfile:dump出cfile文件内容

kudu fs dump cfile <block_id> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] [-noprint_meta] [-noprint_rows] 
block_id:block的定义
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动
print_meta:输出中打印元数据信息
print_rows:打印cfile的每一行

        tree:dump出kudu文件系统的tree

kudu fs dump tree [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] 
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

        uuid:dump出kudu文件系统的uuid

kudu fs dump uuid [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] 
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

local_replica

    copy_from_remote:从远程服务器拷贝tablet到本地

kudu local_replica copy_from_remote <tablet_id> <source> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>]
tablet_id:tablet的定义
source:远程服务器地址,host:port
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

    delete:删除本地文件系统的tablet副本

kudu local_replica delete <tablet_id> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] [-clean_unsafe]
tablet_id:tablet的定义
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动
clean_unsafe:删除本地副本,但是保留tombstone record

    list:显示本地的tablet副本

kudu local_replica list [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] [-list_detail] 
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动
list_detail:打印副本的分区信息

    cmeta:操作本地文件系统tablet的一致性元数据文件

        print_replica_uuids:打印所有tablet副本的uuid

kudu local_replica cmeta print_replica_uuids <tablet_id> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] 
tablet_id:tablet的定义
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

        rewrite_raft_config:重写tablet副本的raft配置

kudu local_replica cmeta rewrite_raft_config <tablet_id> <peers>…​ [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] 
tablet_id:tablet的定义
peers:一个peers列表,格式为'uuid:hostname:port'
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

    dump:dump出kudu的文件系统

        block_ids:dump出所有本地副本的blocks的ids

kudu local_replica dump block_ids <tablet_id> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>]
tablet_id:tablet的定义
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

        meta:dump出本地副本的元数据

kudu local_replica dump meta <tablet_id> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] 
tablet_id:tablet的定义
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动

        rowset:dump出本地副本的rowset内容

kudu local_replica dump rowset <tablet_id> [-dump_data] [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] [-metadata_only] [-nrows=<nrows>] [-rowset_index=<index>] 
tablet_id:tablet的定义
dump_data:dump每列的rowset
fs_wal_dir:WAL的目录,没有指定则无法启动
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动
metadata_only:只dump block的元数据信息
nrows:dump出多少行
rowset_index:本地副本的index

        wats:dump出本地副本的所有WAL

kudu local_replica dump wals <tablet_id> [-fs_wal_dir=<dir>] [-fs_data_dirs=<dirs>] [-print_entries=<entries>] [-noprint_meta] [-truncate_data=<data>] 
tablet_id:tablet的定义
fs_data_dirs:逗号分隔的data blocks,没有指定则无法启动
print_entries:
print_meta:打印元数据信息
truncate_data:在打印之前将数据字段截断到给定的字节数

master

    set_flag:改变kudu master的gflag值

kudu master set_flag <master_address> <flag> <value> [-force] 
master_addresses:逗号分隔的master地址
flag:gflag的名称
value:gflag的值
force:如果为true,则允许set_flag命令设置未显式标记为运行时可设置的标志。 这样的标志更改可能会在服务器上被忽略,或者可能导致服务器崩溃。

    status:获取kudu master的状态

kudu master status <master_address> 
master_addresses:逗号分隔的master地址

    timestamp:获取kudu master的当前timestamp

kudu master timestamp <master_address>
master_addresses:逗号分隔的master地址

pbc

    dump:dump出PBC文件

kudu pbc dump <path> [-oneline]
path:PBC文件保存路径
oneline:打印出每个protobuf的每一行

remote_replica

    check:检查tserver上的所有的tablet副本

kudu remote_replica check <tserver_address>
tserver_address:kudu tablet servcer地址

    copy:拷贝一个tablet副本到其他tablet server上

kudu remote_replica copy <tablet_id> <src_address> <dst_address> [-force_copy] 
tablet_id:tablet的定义
src_address:源地址
dst_address:目的地址
force_copy:如果远程目标有该副本,也强制拷贝

    delete:删除kudu tablet上面的副本

kudu remote_replica delete <tserver_address> <tablet_id> <reason> 
tserver_address:kudu tablet servcer地址
tablet_id:tablet的定义
reason:删除副本的原因

    dump:dump出kudu tablet server上tablet的副本

kudu remote_replica dump <tserver_address> <tablet_id> 
tserver_address:kudu tablet servcer地址
tablet_id:tablet的定义

    list:列出kudu tablet server所有tablet的副本

kudu remote_replica list <tserver_address> 
tserver_address:kudu tablet servcer地址

table

    delete:删除一个table

kudu table delete <master_addresses> <table_name>
master_addresses:逗号分隔的master地址
table_name:要删除的表名称

    list:列出所有tables

kudu table list <master_addresses> [-list_tablets] 
master_addresses:逗号分隔的master地址
tablet_id:tablet的定义

tablet

    leader_step_down:强制使tablets leader down

kudu tablet leader_step_down <master_addresses> <tablet_id>
master_addresses:逗号分隔的master地址
tablet_id:tablet的定义

    change_config:改变tablets的raft配置

            add_replica:给tablet副本增加一个新的raft配置

kudu tablet change_config add_replica <master_addresses> <tablet_id> <replica_uuid> <replica_type>
master_addresses:逗号分隔的master地址
tablet_id:tablet的定义
replica_uuid:新的replica的uuid
replica_type:replica类型,VOTER或者NON-VOTER

            change_replica_type:改变已经存在的tablet副本的类型

kudu tablet change_config change_replica_type <master_addresses> <tablet_id> <replica_uuid> <replica_type> 
master_addresses:逗号分隔的master地址
tablet_id:tablet的定义
replica_uuid:新的replica的uuid
replica_type:replica类型,VOTER或者NON-VOTER

            remove_replica:删除一个存在的tablet副本

kudu tablet change_config remove_replica <master_addresses> <tablet_id> <replica_uuid> 
master_addresses:逗号分隔的master地址
tablet_id:tablet的定义
replica_uuid:新的replica的uuid

tserver

    set_flag:改变kudu tablet server的gflag值

kudu tserver set_flag <tserver_address> <flag> <value> [-force]
tserver_addresses:tserver地址
flag:gflag的名称
value:gflag的值
force:如果为true,则允许set_flag命令设置未显式标记为运行时可设置的标志。 这样的标志更改可能会在服务器上被忽略,或者可能导致服务器崩溃。

    status:查看kudu tablet server的状态

kudu tserver status <tserver_address> 
tserver_addresses:tserver地址

    timestamp:获取kudu tablet server的当前timestamp

kudu tserver timestamp <tserver_address> 
tserver_addresses:tserver地址

wal

    dump:dump出WAL文件

kudu wal dump <path> [-print_entries=<entries>] [-noprint_meta] [-truncate_data=<data>] 
  	path:WAL文件路径
 print_entries:如何打印条目:false | 0 | no =不打印true | 1 |是| decode =打印它们解码pb =打印raw protobuf id =仅打印其ID
 print_meta:打印元数据信息
 truncate_data:在打印之前将数据字段截断到给定的字节数

test

    loadgen:运行负载生成测试

kudu test loadgen <master_addresses> [-buffer_flush_watermark_pct=<pct>] [-buffer_size_bytes=<bytes>] [-buffers_num=<num>] [-flush_per_n_rows=<rows>] [-keep_auto_table] [-num_rows_per_thread=<thread>] [-num_threads=<threads>] [-run_scan] [-seq_start=<start>] [-show_first_n_errors=<errors>] [-string_fixed=<fixed>] [-string_len=<len>] [-table_name=<name>] [-table_num_buckets=<buckets>] [-table_num_replicas=<replicas>] [-use_random]

 

 

转载于:https://my.oschina.net/guol/blog/910297

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值