温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python 自动生成k8s 集群yaml 文件

发布时间:2020-07-01 08:44:26 来源:网络 阅读:1638 作者:水滴石川1 栏目:云计算

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

 模块 常用方法

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 
 <class 'str'>
{'name': 'jack', 'age': 25, 'job': 'IT'} <class 'dict'>


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 文件




向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI