yconsole使用说明

依赖:主要是zk的client:kazoo



import os, sys, subprocess,time

import threading

from kazoo.client import KazooClient

from kazoo.exceptions import *

定制参数:



#指定是memcached或者redis,同时也是zk上的对应的目录名称。

YCONSOLED_MODE           = "ycache"     #It should be "redis" for redis, while "ycache" for memcached.

#对外显示的程序名字,没什么用。

YCONSOLED_NAME           = "yconsole"  #Program name for log.

#操作缓存的粒度(或者说单位)。也就是在命令行指定1,对应的缓存大小。

CACHE_GRANULAR           = 1024  #defautl granularity for cache size (to Mb).

#默认的读取配置中心的url。仅用于读取zk的地址。读取优先级为:

#1 当前目录的yconsole.conf配置文件(例如:zoo_svr=127.0.0.1:2181)

#2 这个路径配置文件:/etc/ycache/yagent/yagent.conf

#3 到下面的配置文件找配置中心的zk服务器。

DEFAULT_ENV_INI_FILE     = "/var/www/config/env.ini"   #for getting zk server address.

#重试次数,基本上没用

OPERATION_RETRY          = 3

配置说明:


yconsole [ ls    | list-cacheid   ]



# 显示所有的cacheid对应的cache实例,以及实际占用的cache总空间,以及当前可用空间。如果有任何一个实例为deactive,则高亮;如果所有实例都deactive,则标红加粗;

   yconsole [ lspc  | list-machine   ]


# 显示所有的server的状态、信息、对应的cache实例,以及每个实例对应的cacheid。

yconsole [ lsser | list-server    ]



# 显示所有的server的状态、信息(包括实例总数,yagent版本,cache版本,cache实例大小,分组,优先级,服务器位置),如果这个server为down,则标红加粗。

yconsole [ rmid  | remove-cacheid ] cacheid


参数:

  cacheid: string, 要删除的cacheid

#删除一个cachid。其实就是把zk上对应的节点删除。

   yconsole [ rmser | remove-server  ] ServerIP


参数:

ServerIP   : string, 要删除的服务器ip

#删除一台服务器。

其实就是把zk上对应的节点删除。注意:只有在这台服务器上的实例没有被使用,才能被删除;

   yconsole [ add   | add-cacheid    ] cacheid size(int,Gb) [min(0) max(4) [group(default) [priority(100) ] ] ]


#添加一个cacheid。

参数:

cacheid : string,cacheid的名字,应该以pool名字为前缀,方便管理;

size: int,指定要分配cache的大小(以CACHE_GRANULAR为单位)

min(0) max(4):指定要分配的单个cache实例大小的范围。默认为[0,4]

group(default):指定要从那个分组的服务器分配cache实例,默认是default分组

priority(100) :指定要从大于某个优先级的服务器上分配实例,默认是100.

如果存在很多满足上面参数要求的实例,在选择每一个实例时,则按照以下偏好分配:

分配优先级:

   Cache instances are assigned bias on a cache server as following:

     1. Least number of instance have been assigned; or   优先这个cachid使用最少cache实例的服务器的实例;否则

     2. Largest priority; or  优先使用优先级高的服务器的实例;否则

     3. Largest number of available instance  优先使用可用实例最多的实例; 否则

     4. Largest cache size 优先使用cache空间大的实例;否则

     5. use the cache with smaller ip address.   使用ip地址小的cache实例

yconsole [ mod   | mod-cacheid    ] cacheid instance1,instance2...


#修改一个cacheid对应的cache实例

参数:

  cacheid: string, 要删除的cacheid

cacheid instance1,instance2... :string, 新的cache实例,例如192.1.1.1:8888,192.2.2.2:9999

   yconsole [ app   | append-cacheid ] cacheid {instance1,...| size(int, Gb)} [min(0) max(4) [group(default) [priority(100) ] ] ] 



   #向一个cacheid添加cache实例。

参数:

cacheid : string,cacheid的名字,应该以pool名字为前缀,方便管理;

size: int,指定要分配cache的大小(以CACHE_GRANULAR为单位)

cacheid instance1,instance2... :string, 新的cache实例,例如192.1.1.1:8888,192.2.2.2:9999

min(0) max(4):指定要分配的单个cache实例大小的范围。默认为[0,4]

group(default):指定要从那个分组的服务器分配cache实例,默认是default分组

priority(100) :指定要从大于某个优先级的服务器上分配实例,默认是100.

    yconsole [ cop   | copy-cacheid   ] fCacheid toCacheid...


#用一个旧的cacheid对应的内容创建一个新的cacheid

参数:

fCacheid    : string, 源cacheid

toCacheid    : string, 新cacheid

   yconsole [ fix   | fix-cacheid    ] [Cacheid | all] [fix-size(int, Gb,0)]


#快速修复命令。检测一个(或所有)cacheid是否至少存在一个活跃的实例,如果没有,就分配fix-size大小的空间给它。

参数:

Cacheid | all: string,指定cacheid,当为all时,代表所有cacheid。

fix-size(int, Gb,0): int,指定分配多少可用空间给那些有故障的cacheid。当为0时,只检测状态,不分配空间。

From WizNote

时间: 2024-08-06 20:03:10

yconsole使用说明的相关文章

Linux系统下安装rz/sz命令及使用说明

对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,但是很多Linux系统初始并没有这两个命令.今天,我们就简单的讲解一下如何安装和使用rz.sz命令. 1.软件安装 (1)编译安装 root 账号登陆后,依次执行以下命令: 1 cd /tmp 2 wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz 3 tar zxvf lrzsz-0.1

android 布局之滑动探究 scrollTo 和 scrollBy 方法使用说明

涉及到滑动,就涉及到VIEW,大家都知道,android的UI界面都是由一个一个的View以及View的派生类组成,View作为基类,而常用的布局里面的各种布局就是它派生出来的ViewGroup的子类,ViewGroup作为各个组件的容器搭建了整体的UI.以下是android UI的结构示示意图: 查看源码 /** * Implement this to do your drawing. * * @param canvas the canvas on which the background w

Git使用说明

Git是流行的分布式版本控制系统,可以方便的管理多人协作的项目并避免了集中式版本控制系统对服务器的依赖. 简介 版本库(repository)是一个由Git管理的目录,Git将跟踪工作目录下文件的修改并在需要时还原. 在工作目录下.git子目录则维护着版本库 . Git维护三个组件: 工作目录: 保存实际文件 暂存区 : 保存尚未提交的修改 版本库: 保存已提交的修改 HEAD: 指向最后一次提交后的结果(checkout 命令的主要功能就是操作HEAD). Git将每次提交的修改串成一条时间线

软件使用说明

软件使用说明:我们的软件是一款基于在校女大学生的记账软件,根据调查身边的女生,统计出了大部分的女生每个月开销的分类.在我们的软件中按这些分类记录每个人的每天的开销,根据调查结果显示有部分学生还有收入,所以我们的记账软件还增加了收入项.我们软件可以根据你每天输入的开销来计算你每个月的开销,并且你可以在其中设置每个月开销的额度,根据你的开销对你的花销进行提醒.在每天你也可以收到关于你这一天开销的提醒,比如:提醒你录入,提醒你今天的花费是否超标.

IDEA工具使用说明

IDEA使用说明 1.安装 2.开始界面 1)create New Project (新建项目) 2)Import Project  (导入项目) 3)Open (打开已有的项目) 4)Check out from Version Control (从版本控制库中导入项目) 3.新建项目 1)方式一: 说明:左边的列表显示的是IDEA可以的项支持目种类,右边是需要额外添加的构面,选择好相应的构面,点击next. 说明:上面的一部分是制定项目的名称,下面一部分是制定项目中模块的名称.当创建了一个项

中海达RTK使用说明之两个点计算参数

中海达RTK求转换参数操作步骤,中海达GPS四参数计算,中海达HI-Survey参数计算简要操作,已知两个控制点求转换参数, 手薄型号:Ihand20 安卓系统手薄 软件:hi-survey road\elec 仪器:中海达公司任意RTK产品 使用两个点求转换参数流程: 第一步:碎步测量控制点 第二步:把两个控制点已知坐标输入到控制点库 第三步:计算参数 第四步:检核参数精度,测控制点作对比,或点放样控制点 使用两个点如何求转换参数? 如何选取控制点计算参数? 四参数控制范围只是计算选用的两个控

AC6102开发板USB3.0测试和使用说明

AC6102开发板USB3.0测试和使用说明 概述 AC6102上集成了一颗Cypress 推出的高性能USB3.0传输芯片CYUSB3014,Cypress称之为EZ-USBFX3.该芯片性能强劲,功能强大,接口简单,非常适合用于各种需要高速数据传输的场合,以下为摘自EZ-USBFX3数据手册中关于该芯片的介绍: 赛普拉斯EZ-USBFX3是新一代USB3.0外设控制器,具有高度集成的灵活特性,可帮助开发人员为任何系统添加USB3.0功能.EZ-USBFX3具有一个可进行完全配置的并行通用可编

Mallet 使用说明

Mallet:自然语言处理工具包 发表于128 天前 ? 技术, 科研 ? 评论数 6 ? 被围观 1006 Views+ MALLET是基于java的自然语言处理工具箱,包括分档得分类.句类.主题模型.信息抽取等其他机器学习在文本方面的应用,虽然是文本的应用,但是完全可以拿到多媒体方面来,例如机器视觉. MALLET包含了足够的文本分类的算法,还有特征提取的算法等.文本分类的算法像是Na?ve Bayes, Maximum Entropy, and Decision Trees等,而且也对代码

Retrofit结合RxJava使用说明

PS:年后一直没有更新博客,实在是太忙了.今天周六也是终于抽出了时间,就决定写一篇Retrofit结合RxJava使用说明.刚好现在写的的项目中也有用到,趁热打铁简单说说.最近也不知道博客写什么内容,大家有什么想了解的内容,也可以评论告诉我,我尽力解答. 如果对Retrofit不了解可以看我之前的一篇博客:Retrofit 2.0使用 ,这次的内容也是在此基础上的.关于RxJava可以参考:学习RxJava(资料汇总),这里我就不多说了. 1.准备工作 我们需要添加相应的依赖: compile