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()
相关推荐
不负岁月无痕1 分钟前
STL -- C++ 红黑树封装 Map 和 Set
java·c语言·开发语言·c++·面试
Tbisnic3 分钟前
23.大模型开发:深度学习----CNN 卷积神经网络 与 RNN 循环神经网络
人工智能·python·rnn·深度学习·cnn·ai大模型
小园子的小菜5 分钟前
Java核心基础:反射与泛型底层原理及实战用法详解
java·开发语言
裤兜里有钱15 分钟前
关于Xshell连接虚拟机Linux失败的主要原因
linux·运维·服务器
有毒的教程27 分钟前
Ansible批量操作自动化完整教程:批量部署服务、配置同步、软件更新实战
运维·自动化·ansible
十五年专注C++开发32 分钟前
C++之std::numeric_limits介绍
开发语言·c++·limits
2501_9259633833 分钟前
Hi3516 + WS73 SDIO Wi-Fi 适配笔记
java·开发语言
CoderYanger36 分钟前
视频切割脚本(Python版)
linux·开发语言·windows·后端·python·程序人生·职场和发展
辞旧 lekkk36 分钟前
CMake工程指南(一)
linux·运维·服务器·开发语言·qt·学习·萌新
迷途呀39 分钟前
新闻头条后端:新闻缓存模块
前端·redis·python·缓存·fastapi