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()
相关推荐
半熟的皮皮虾12 小时前
因需写了个内网运维专用的IP地址管理工具,有点不同
运维·服务器·tcp/ip
咋吃都不胖lyh13 小时前
小白零基础教程:安装 Conda + VSCode 配置 Python 开发环境
人工智能·python·conda
幸运小圣13 小时前
for...of vs for 循环全面对比【前端JS】
开发语言·前端·javascript
liu****13 小时前
12.线程同步和生产消费模型
linux·服务器·开发语言·c++·1024程序员节
snakecy13 小时前
常用命令记录
linux·运维·github
学习编程的Kitty13 小时前
JavaEE初阶——多线程(5)单例模式和阻塞队列
java·开发语言·单例模式
刘一说13 小时前
深入理解 Spring Boot Actuator:构建可观测性与运维友好的应用
运维·spring boot·后端
懒羊羊不懒@13 小时前
JavaSe—Stream流☆
java·开发语言·数据结构
闲人编程13 小时前
构建一个短链接生成器服务(FastAPI + SQLite)
jvm·python·sqlite·fastapi·生成器·短链接·caodecapsule
Js_cold13 小时前
(* clock_buffer_type=“NONE“ *)
开发语言·fpga开发·verilog·vivado·buffer·clock