whl包安装及使用
介绍whl包的安装及使用方法,适用于需要使用Python接口的用户。
软件安装
whl包已发布到pypi,可以直接在线安装。
# 安装最新版本
pip install memcache_hybrid
# 查看版本及安装路径
pip show memcache_hybrid
软件使用
安装依赖软件MemFabric
MemCache运行时需要依赖MemFabric。
# 查看memfabric_hybrid
pip show memfabric_hybrid
-
如果安装的MemCache是1.1.x及以上版本,则在安装时会自动安装配套依赖的MemFabric,可以无需再安装。
-
如果安装的MemCache是1.0.x版本,可通过版本配套查看与MemCache匹配的MemFabric版本。
# 此处以1.0.8版本为例
pip install memfabric_hybrid==1.0.8
MemFabric详细安装方法可参考MemFabric使用指导。
运行软件
我们提供了两种方式来启动软件,两种方式的区别在于设置配置项的方式不同。
-
方式一:通过Python接口直接设置配置项(推荐)
-
方式二:通过配置文件和环境变量设置配置项(兼容原有方式)
说明
如果安装的MemCache是1.0.x版本,只能选择方式二,1.1.x及以上版本,您可以根据需要选择其中一种启动方式即可。
方式一:通过Python接口直接设置配置项(推荐)
1. 启动MetaService
MetaService作为独立进程运行,进入Python控制台或者编写如下Python脚本即可拉起进程。
from memcache_hybrid import MetaService, MetaConfig
config = MetaConfig()
config.meta_service_url = "tcp://127.0.0.1:5000"
config.config_store_url = "tcp://127.0.0.1:6000"
config.metrics_url = "http://127.0.0.1:8000"
config.ha_enable = False
config.log_level = "info"
MetaService.setup(config)
MetaService.main()
2. 启动LocalService
LocalService作为客户端,以whl形式作为共享库提供API供应用进程调用加载,以下是通过Python接口设置配置项的一个简单示例。
进入Python控制台或者编写如下Python脚本即可拉起示例进程。
from memcache_hybrid import DistributedObjectStore, LocalConfig
config = LocalConfig()
config.protocol = "device_rdma"
config.dram_size = "10GB"
config.max_dram_size = "64GB"
print(config)
store = DistributedObjectStore()
assert store.setup(config) == 0, "setup local config failed"
具体配置项可以参考配置项说明,配置项的值请根据实际运行环境和场景进行修改。
说明
此种方式设置的配置项优先级高于方式二中通过配置文件设置的值,如果同时使用方式二配置了配置文件,实际运行时使用的是此方法设置的值。
方式二:通过配置文件和环境变量设置配置项(兼容原有方式)
1. 设置配置文件
pip安装完成后可通过以下命令查看具体安装位置。
# 查看安装位置和版本
pip show memcache_hybrid
查询结果如下:
Name: memcache_hybrid
Version: 1.0.0
Summary: python api for memcache_hybrid
Home-page: https://gitcode.com/Ascend/memcache
Author:
Author-email:
License: Mulan PSL v2
Location: /usr/local/lib/python3.11/site-packages
Requires:
Required-by:
这里安装的位置在/usr/local/lib/python3.11/site-packages,则配置文件位于/usr/local/lib/python3.11/site-packages/memcache_hybrid/config。
说明
- 1.0.x 版本安装目录下不带配置文件,需要从代码仓获取。
- 1.2.X 及以上版本 whl 包已默认编译带上 ubsio 盘管理功能,config 目录下包含 mmc-meta.conf、mmc-local.conf 和 ubsio.conf。
软件运行时,配置文件 mmc-meta.conf(用于设置MetaService参数)、mmc-local.conf(用于设置LocalService参数)和 ubsio.conf(UBSIO/SSD 盘管理配置)可以位于任意目录。
建议将这两个配置文件复制到其他目录(比如/usr/local)再进行修改,防止重新安装后被覆盖
运行前可以根据 配置项说明 对配置文件 mmc-meta.conf 和 mmc-local.conf 进行相关配置。
2. 设置环境变量
通过环境变量来设置配置文件的路径。
- 两个配置文件可以放在任意路径,这里以默认安装路径为例,请修改为实际路径。
- whl 包已默认编译带上 ubsio 盘管理功能,如启用 SSD 需修改配置文件并设置此环境变量,详见 SSD 使用文档。
export UBSIO_CONFIG_PATH=/usr/local/lib/python3.11/site-packages/memcache_hybrid/config/ubsio.conf
export MMC_META_CONFIG_PATH=/usr/local/lib/python3.11/site-packages/memcache_hybrid/config/mmc-meta.conf
export MMC_LOCAL_CONFIG_PATH=/usr/local/lib/python3.11/site-packages/memcache_hybrid/config/mmc-local.conf
3. 启动MetaService
进入Python控制台或者编写如下Python脚本即可拉起进程。
from memcache_hybrid import MetaService
MetaService.main()
4. 启动LocalService
通过MemCache提供的API初始化客户端并拉起LocalService,执行数据写入、查询、获取、删除等。
下面的脚本test_mmc_demo.py是我们提供的一个示例:
python3 test_mmc_demo.py
软件卸载
pip uninstall memcache_hybrid