成都网站建设设计

将想法与焦点和您一起共享

python自动生成k8s集群yaml文件

 yaml 模块用于处理 yaml 文件,yaml 是一种比xml和json更轻的文件格式,k8s 集群声明资源对象就是使用 yaml 文件,使用yaml 模块可以更方便的处理yaml 文件

创新互联是一家从事企业网站建设、成都网站建设、成都网站制作、行业门户网站建设、网页设计制作的专业的建站公司,拥有经验丰富的网站建设工程师和网页设计人员,具备各种规模与类型网站建设的实力,在网站建设领域树立了自己独特的设计风格。自公司成立以来曾独立设计制作的站点近1000家。

 模块 常用方法

dump:  将一个python对象生成为yaml文档

load: 返回一个对象 


dump_all:

load_all:

 简单示例演示


load 

yaml_str1 = """
name: jack
age: 25
job: IT 
"""
print(yaml_str1, type(yaml_str1))
contnet = yaml.load(yaml_str1)
print(contnet, type(contnet))

输出

name: jack
age: 25
job: IT 
 
{'name': 'jack', 'age': 25, 'job': 'IT'} 

dump 

import yaml

yaml_str1 = """
name: jack
age: 25
job: IT 
"""
print(yaml_str1, type(yaml_str1))
contnet = yaml.load(yaml_str1)
print(contnet, type(contnet))

new_content = yaml.dump(contnet, open('t1.yaml', 'w', encoding='utf-8'))

查看生成的文件

python  自动生成k8s  集群yaml 文件

# 生成nginx 的yaml 文件 

import yaml

with open('nginx.yaml', 'r', encoding='utf-8') as f1:
    content = yaml.load(f1)
    print(f1)
    with open('nginxv2.yaml', 'w', encoding='utf-8') as f2:
        yaml.dump(content, f2)  # contnet 对象  f2生成后存放的文件

查看生成后的文件

python  自动生成k8s  集群yaml 文件

生成后的文件可运行

python  自动生成k8s  集群yaml 文件


yaml 文件里面可以声明多个资源对象,可使用 load_all

import yaml

with open('nginx_busy.yaml', 'r', encoding='utf-8') as f1:
    content = yaml.load_all(f1)
    new_content = yaml.dump_all(content)
    print(new_content, type(new_content))
    with open('ng_busy.yaml', 'w', encoding='utf-8') as f2:
        f2.write(new_content)

查看生成后的文件

python  自动生成k8s  集群yaml 文件

python  自动生成k8s  集群yaml 文件

python  自动生成k8s  集群yaml 文件


当前文章:python自动生成k8s集群yaml文件
本文网址:http://chengdu.cdxwcx.cn/article/posegd.html