列表

core_api = client.CoreV1Api()  # 管理核心资源(Pod, Service, ConfigMap 等)
apps_api = client.AppsV1Api() # 管理应用资源(Deployment, StatefulSet, DaemonSet 等)
batch_api = client.BatchV1Api() # 管理批处理任务资源(Job, CronJob)
rbac_api = client.RbacAuthorizationV1Api() # 管理角色和权限绑定资源
networking_api = client.NetworkingV1Api() # 管理网络资源(Ingress, NetworkPolicy)
custom_objects_api = client.CustomObjectsApi() # 管理自定义资源(CRD)
查看所有的命名空间
from kubernetes import client,config
config.kube_config.load_kube_config(config_file='C:/Users/4407/Desktop/config') v1 = client.CoreV1Api() for namespace in v1.list_namespace().items:
print(namespace.metadata.name) 查看pod的名字
from kubernetes import client,config
config.kube_config.load_kube_config('C:/Users/4407/Desktop/config') v1 = client.CoreV1Api() for pod in v1.list_pod_for_all_namespaces().items:
print(pod.metadata.name) 基本操作 # 对于查看pod 分为 查看指定名称空间里的pod 查看指定标签的pod 查看pod的状态
import kubernetes.config
from kubernetes import client, config
kubernetes.config.kube_config.load_kube_config('C:\\Users\\4407\\Desktop\\config')
core_v1 = kubernetes.client.CoreV1Api()
ns = 'ingress-nginx'
a = core_v1.list_namespaced_service(namespace=ns)
for i in a.items:
print(i) import kubernetes.config
from kubernetes import client, config
# 加载 Kubernetes 配置
kubernetes.config.kube_config.load_kube_config('C:\\Users\\4407\\Desktop\\config')
# 实例化 CoreV1Api 类
core_v1 = kubernetes.client.CoreV1Api()
# 指定命名空间
namespace = 'ingress-nginx'
# 获取指定命名空间下的所有服务
service_list = core_v1.list_namespaced_service(namespace=namespace)
# 遍历服务列表并打印每个服务的名字
for service in service_list.items:
print(service.metadata.name)
# 遍历服务列表并打印每个服务的名字
for service in service_list.items:
print('hhhhh' + service.metadata.name) # 查看pod的名字 from kubernetes import client, config config.kube_config.load_kube_config('C:\\Users\\4407\\Desktop\\config') ret = client.CoreV1Api()
a = ret.list_namespaced_pod('dev') for i in ret.list_namespaced_pod('dev').items:
print(i.metadata.name) # 不可以写成 for i in ret.list_namespaced_pod.items('dev'): 创建pod
from kubernetes import client,config
config.load_kube_config('C:\\Users\\4407\\Desktop\\config') pod = client.V1Pod(metadata=client.V1ObjectMeta(name="my-test01"),
spec=client.V1PodSpec(containers=[
client.V1Container(
name="my-test",
ports=[client.V1ContainerPort(name="nginx", container_port=8088, host_port=8088)],
image="centos"
)
]
)
) ret = client.CoreV1Api() try:
a = ret.create_namespaced_pod("dev", pod)
print("pod create sussess , pod status is '%s' " % str(a.status)) except Exception as e:
print("pod create error and status is '%s'" %e) pod = client.V1Pod(
metadata=client.V1ObjectMeta(name="my-pod"),
spec=client.V1PodSpec(
containers=[
client.V1Container(
name="my-container",
image="nginx",
ports=[client.V1ContainerPort(container_port=80)]
)
]
)
) ret = client.CoreV1Api()
ns = "dev" try:
api_response = ret.create_namespaced_pod(ns, pod)
print("Pod created. Status='%s'" % str(api_response.status))
except Exception as e:
print("Error: %s" % e) # 创建deployment
from kubernetes import config,client
config.kube_config.load_kube_config(r"C:\Users\4407\Desktop\yun\config")
deploy = client.V1Deployment(
metadata=client.V1ObjectMeta(
name="my-pod",
namespace="default"),
spec=client.V1DeploymentSpec(
replicas=1,
selector=client.V1LabelSelector(
match_labels={
"app": "nginx"
}
),
template=client.V1PodTemplateSpec(
metadata=client.V1ObjectMeta(labels={"app" : "nginx"}),
spec=client.V1PodSpec(
containers=[
client.V1Container(
name="nginx",
image="nginx",
ports=[
client.V1ContainerPort(container_port=8089)
]
)
]
)
)
)
) deplo_get = client.AppsV1Api() try:
resource = deplo_get.create_namespaced_deployment(namespace="default",body=deploy)
print("deployment create sussessfully. status: '%s'" % resource.status)
except Exception as e:
print("deployment create error. status is '%s'" %e) # 创建job
import yaml
from kubernetes import config,client
config.kube_config.load_kube_config(r"C:\Users\4407\Desktop\yun\config")
def creat_job():
job = client.BatchV1Api()
with open('f.yaml','r') as f:
job_yaml = yaml.safe_load(f)
job_create = job.create_namespaced_job(namespace="default", body=job_yaml)
return job_create
try:
print("job create sussessful. status is '%s'" %str(creat_job().status))
except Exception as e:
print("job create error. status is '%s" %e)

python+k8s——基础练习的更多相关文章

  1. Kubeasz部署K8s基础测试环境简介

    下面介绍使用Kubeasz部署K8s集群环境. https://github.com/easzlab/kubeasz在需要使用kubeeasz项目安装的k8s时,需要将所有需要它来部署的节点上,都安装 ...

  2. docker+k8s基础篇一

    Docker+K8s基础篇(一) docker的介绍 A:为什么是docker B:k8s介绍 docker的使用 A:docker的安装 B:docker的常用命令 C:docker容器的启动和操作 ...

  3. Python文件基础

    ===========Python文件基础========= 写,先写在了IO buffer了,所以要及时保存 关闭.关闭会自动保存. file.close() 读取全部文件内容用read,读取一行用 ...

  4. 3.Python编程语言基础技术框架

    3.Python编程语言基础技术框架 3.1查看数据项数据类型 type(name) 3.2查看数据项数据id id(name) 3.3对象引用 备注Python将所有数据存为内存对象 Python中 ...

  5. Python爬虫基础

    前言 Python非常适合用来开发网页爬虫,理由如下: 1.抓取网页本身的接口 相比与其他静态编程语言,如java,c#,c++,python抓取网页文档的接口更简洁:相比其他动态脚本语言,如perl ...

  6. 小白必看Python视频基础教程

    Python的排名从去年开始就借助人工智能持续上升,现在它已经成为了第一名.Python的火热,也带动了工程师们的就业热.可能你也想通过学习加入这个炙手可热的行业,可以看看Python视频基础教程,小 ...

  7. Python爬虫基础之requests

    一.随时随地爬取一个网页下来 怎么爬取网页?对网站开发了解的都知道,浏览器访问Url向服务器发送请求,服务器响应浏览器请求并返回一堆HTML信息,其中包括html标签,css样式,js脚本等.我们之前 ...

  8. 《两地书》--Kubernetes(K8s)基础知识(docker容器技术)

    大家都知道历史上有段佳话叫“司马相如和卓文君”.“皑如山上雪,皎若云间月”.卓文君这么美,却也抵不过多情女儿薄情郎. 司马相如因一首<子虚赋>得汉武帝赏识,飞黄腾达之后便要与卓文君“故来相 ...

  9. 零基础学Python--------第2章 Python语言基础

    第2章  Python语言基础 2.1 Python语法特点 2.11注释 在Python中,通常包括3种类型的注释,分别是单行注释.多行注释和中文编码声明注释. 1.单行注释 在Python中,使用 ...

  10. Python学习基础笔记(全)

    换博客了,还是csdn好一些. Python学习基础笔记 1.Python学习-linux下Python3的安装 2.Python学习-数据类型.运算符.条件语句 3.Python学习-循环语句 4. ...

随机推荐

  1. python读取文件时,删除重复行并计数

    from collections import Counterwith open('a.txt', 'r+') as f: a = f.readlines() for i in range(len(a ...

  2. java 后台获取文件上传的真实扩展名

    package common.util; import java.io.File; import org.apache.commons.io.FileUtils; import org.apache. ...

  3. python实现快排算法,传统快排算法,数据结构

    def quick_sort(lists,i,j): if i >= j: return list pivot = lists[i] low = i high = j while i < ...

  4. 如何使用XSSFWorkbook读取文本薄?

    [版权声明]未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://www.cnblogs.com/cnb-yuchen/p/18146625 出自[进步*于辰的博客] 1.文件兼容类 ...

  5. 力扣636(java)-函数的独占时间(中等)

    题目: 有一个 单线程 CPU 正在运行一个含有 n 道函数的程序.每道函数都有一个位于  0 和 n-1 之间的唯一标识符. 函数调用 存储在一个 调用栈 上 :当一个函数调用开始时,它的标识符将会 ...

  6. 力扣647(java)-回文子串(中等)

    题目: 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目. 回文字符串 是正着读和倒过来读一样的字符串. 子字符串 是字符串中的由连续字符组成的一个序列. 具有不同开始位置或结束位置 ...

  7. 400倍加速, PolarDB HTAP实时数据分析技术解密

    简介: PolarDB MySQL是因云而生的一个数据库系统, 除了云上OLTP场景,大量客户也对PolarDB提出了实时数据分析的性能需求.对此PolarDB技术团队提出了In-Memory Col ...

  8. OAM 深入解读:OAM 为云原生应用带来哪些价值?

    导读:OAM 是阿里巴巴联合微软在社区推出的一款用于构建和交付云原生应用的标准规范,旨在通过全新的应用定义.运维.分发与交付模型,推动应用管理技术向"轻运维"的方向迈进,全力开启下 ...

  9. 阿里巴巴超大规模Kubernetes基础设施运维体系揭秘

    ​简介:ASI:Alibaba Serverless infrastructure,阿里巴巴针对云原生应用设计的统一基础设施.ASI 基于阿里云公共云容器服务 ACK之上,支撑集团应用云原生化和云产品 ...

  10. 深入解析 Dubbo 3.0 服务端暴露全流程

    ​简介: 随着云原生时代的到来,Dubbo 3.0 的一个很重要的目标就是全面拥抱云原生.正因如此,Dubbo 3.0 为了能够更好的适配云原生,将原来的接口级服务发现机制演进为应用级服务发现机制. ...