python运维

环境准备

安装python3环境

bash 复制代码
# centos 安装python3
yum install python3

创建激活venv

bash 复制代码
python3 -m venv .venv
source .venv/bin/activate

zookeeper

pip install kazoo

递归复制目录

python 复制代码
from kazoo.client import KazooClient

def copy_node(zk, source_path, destination_path):
    # 获取源节点的数据
    data, stat = zk.get(source_path)
    
    # 在目标路径创建节点
    zk.create(destination_path, data)
    
    # 获取子节点
    children = zk.get_children(source_path)
    for child in children:
        # 递归复制子节点
        copy_node(zk, f"{source_path}/{child}", f"{destination_path}/{child}")

zk = KazooClient(hosts='127.0.0.1:2181')
zk.start()

copy_node(zk, '/source_node', '/destination_node')

zk.stop()

设置key的值带有换行符

也可以用zkCli工具,先把值内容写入文件,再执行命令:./zkCli.sh -server 127.0.0.1:2181 set /your/znode/path "cat /tmp/path_value"

python 复制代码
from kazoo.client import KazooClient

# 连接到 Zookeeper
zk = KazooClient(hosts='127.0.0.1:2181')
zk.start()

# 要设置的 key
znode_path = "/your/znode/path"

# 要设置的值,包含换行符
value = """parseTreeCache:
  initialCapacity: 128
  maximumSize: 1024
sqlStatementCache:
  initialCapacity: 2000
  maximumSize: 65535"""

# 设置 Zookeeper znode 的值
zk.set(znode_path, value.encode('utf-8'))

# 关闭连接
zk.stop()
相关推荐
实心儿儿几秒前
Linux —— 库的制作和原理(3)
linux·运维·服务器
yyuuuzz3 分钟前
独立站部署的几个常见技术问题
运维·服务器·网络·云计算·aws
努力努力再努力wz7 分钟前
【Qt入门系列】第一个 Qt Widgets 程序:项目创建、UI 文件、Hello World、对象树与 qDebug 日志
java·c语言·开发语言·数据结构·c++·qt·ui
电子云与长程纠缠10 分钟前
UE5 GameFeature创建与使用
开发语言·学习·ue5·游戏引擎
hzxpaipai10 分钟前
网站建设哪家好?从性能、后台和运维看派迪科技的建站思路
运维·科技
a珍爱上了a强10 分钟前
配置uboot启动参数,linux启动过程打印每个模块初始化的耗时时间
linux·运维·服务器
_Evan_Yao18 分钟前
零基础学编程,第一门语言选Python还是C?
c语言·开发语言·python
凤凰院凶涛QAQ21 分钟前
《C++转Java快速入手系列》抽象类和接口篇
java·开发语言·c++
河阿里25 分钟前
Lambda表达式(Java):从语法本质到工程实践
java·开发语言
步步为营DotNet27 分钟前
深入探究.NET 11 中.NET Aspire 在云原生应用持续集成与交付安全加固
python