kubernates的api访问java实现—Fabric8

Kubernetes client-java方式创建命名空间,创建pod容器,创建serice服务等功能 最近工作任务就是调用k8s的接口服务,然后也是解决了很多坑目前调用K8s api的方面资料少用的人少,那么就把这些积累的点记下来分享一下,也希望对大家的工作和学习有帮助。 1.api接口访问方式 1.1 授权方式 调用k8s使用rest api形式一个是安全的地址https:127.0.0.1:6443,这个地址需要有认证权限的,可以是token方式或者是证书,这个也是我一开始... 阅读详情

 

2017年03月09日 14:04:14 xiaomin_____ 阅读数:379

此文仅供了解kubernates的开发人员写api接口时参考。

一、前言

Java访问kubernates API的方式有很多,用java语言开发的有两种,一个是基于Jersey的,一个是基于Fabric8。因为Kubernates API Server就是RESRFul Web Service,而Jersey是一个方便简化开发RESRFul Web Service的框架所以采用jersey会比较省力,但还是需要开发者自己做很多工作。Fabric8中的kubernates-client-1.3.83.jar,kubernates-model-1.0.12.jar等工具包包对kubernates api做了很好的封装,访问代码比较简单。

二、使用说明

  1. 准备好相关的jar包

  2. 创建访问API Server的客户端

    代码参见三

  3. 操作kubernates的各项资源

    常用的资源(资源解释后续会加上):

    Nodes

    Namespaces

    Services

    Replicationcontrollers

    Pods

    Events

    Resourcequotas

    可以通过api对以上资源做增删改查各种操作。

三、具体代码实现

1.创建访问k8s API server的客户端代码示例

Config config = new ConfigBuilder().withMasterUrl("http://10.45.32.153:8080/").build();
KubernetesClient client = new DefaultKubernetesClient(config); 

// http://10.45.32.153:8080/ 是API Server的地址

2.查询k8s资源的代码示例(每种资源的查询方式大同小异)

几乎所有的资源都可以查,现在我们以查询namesapce为例进行讲解。

A 查询所有的namespace列表

List<Namespace> nameSpaceList =client.namespaces().list().getItems();

B 根据条件查询namespace

Namespace space = client.namespaces().withName(tenant.getAccount()).get();

可以根据很多种条件进行过滤

3.创建资源示例代码(这是最核心的部分,每种资源的创建方式不同)

A创建租户

Namespace ns = new NamespaceBuilder().withNewMetadata()
     .withName(tenant.getAccount()).endMetadata().build();
   // 属性设置
   ObjectMeta metadata = https://my.oschina.net/u/3233222/blog/new ObjectMeta();
   Map<String,String> labels = new HashMap<String, String>();
   labels.put("label1", tenant.getAccount());
   metadata.setLabels(labels);
   metadata.setNamespace(tenant.getAccount());
   metadata.setName(tenant.getAccount());
   ns.setMetadata(metadata);
   // 执行创建操作
   client.namespaces().create(ns);

B创建结果

注释:该代码没有给namespace设置quotas

4.修改租户配额示例代码

5.删除租户示例代码

client.namespaces().withName(tenant.getAccount()).delete();

 

 

后续会对namespace,service,rc,pod等的增删改查代码做出详细的描述,敬请关注!!!

 

http://www.07net01.com/2017/01/1789937.html

http://hao.jobbole.com/fabric8/

通过 Kubernetes Java Client API 操作Kubernetes Cluster https://blog.csdn.net/lw277232240/article/details/97282278 阅读详情

相关推荐

idea一键打包docker镜像并推送远程harbor仓库的方法(包含spotify和fabric8两种方法)--全网唯一正确,秒杀99%水文

idea一键打包docker镜像并推送远程harbor仓库的方法(包含spotify和fabric8两种方法)--全网唯一正确,秒杀99%水文

jiaohuizhuang6019的博客 4291

k8s集群-创建删除apply

两种方法 一,第一种还是图形界面,简单一些,但你还是得自己准备yaml 文件(内容自己编写好) 1,打开k8s 的dashboard 管理平台 2,找到相对应的命名空间-->部署-->创建-->从你文本输入框创建 3,把项目的yaml内容准备好贴进去 4,访问权 新建域名绑定服务 二,命令创建应用,复杂一些,提前准备好项目的yaml 文件(内容自己编写好) create创建...

兰辉 1万+

Docker and Kubernetes for Java Developers 无水印pdf

Docker and Kubernetes for Java Developers 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

java 根据节点名删除jison节点_服务器挂掉导致需要对k8s新增节点

【导读】今日是周六,本想午休起来之后写篇有关kubernetes service的文章,没想到两台虚拟机接连挂掉,所以又重新创建了两台虚拟机。新建时又一直黑屏,所以只能克隆。由于虚拟机是新建的,所以就面领着需要重新安装的问题,接下来就这个问题记录一下把。1删除服务器上残留信息由于两台虚拟机是从主节点进行克隆的,所以需要删除docker和kubernetes相关信息1、删除kubenete...

weixin_32893479的博客 101

基于fabric8io的kubernetes Java 依赖包

基于fabric8io的kubernetes Java 依赖包,jar包列表: fabric-utils-2.0.47.jar httpclient-4.5.3.jar kubernetes-client-3.0.3.jar kubernetes-model-2.0.8.jar log4j-1.2.15.jar log4j-over-slf4j-1.7.25.jar slf4j-api-1.5.6.jar slf4j-jdk14-1.5.6.jar

车载与安防项目实战:如何用RK3588搭配NVP6158C实现4路AHD摄像头BT1120接入与同步预览

本文详细解析了基于RK3588处理器与NVP6158C解码芯片实现4路AHD摄像头BT1120接入与同步预览的技术方案。针对车载环视和安防监控场景,重点探讨了硬件架构设计、BT1120接口配置、多路同步机制及Android HAL适配等核心问题,提供了从底层驱动到上层应用的完整实现路径,为相关领域的工程实践提供可靠参考。

weixin_30571465的博客 486

kubernetes中使用java-client完成deployment的部署以及删除

1、pom.xml文件中引入依赖 <!--k8s相关jar包--> <dependency> <groupId>io.kubernetes</groupId> <artifactId>client-java</artifactId> <version>8.0.2</version> <scope>compile</scope> </dependency

qq_31152023的博客 4983

在MCUXpresso上通过J-link烧写KW45

背景: KW45B是nxp 的ble npi产品,其使用的IDE为MCUXpressso或者IAR,MCUXpressso有一些bug,但是由于MCUXpressso阅读查找代码相对IAR容易,所以我经常使用的MCUXpressso进行开发。当然IAR也有其优势,比如编译、烧写速度相对MCUXpressso更快,是比较通用的一个平台,而MCUXpressso是NXP独有的。 Kw45有两种烧写方式,一是使用MCUlink,二是使用Jlink。NXP ble 产品线提供的IDE资料里有最新的15.0版本的

weixin_41889258的博客 2859

java实现kubernates的api访问—Fabric8

此文仅供了解kubernates的开发人员写api接口时参考。 一、前言 java访问kubernates API的方式有很多,用java语言开发的有两种,一个是基于Jersey的,一个是基于Fabric8。因为Kubernates API Server就是RESRFul Web Serv...

chouhuanyu3543的博客 625

CH376S模块实战:如何通过串口轻松实现单片机与U盘的数据交互

本文详细介绍了如何利用CH376S模块,通过串口通信实现单片机与U盘的数据交互。文章从模块原理、硬件连接到核心指令集进行了全面解析,并提供了基于STM32的实战代码示例。CH376S模块极大地简化了USB协议和文件系统的复杂性,使开发者能快速为嵌入式设备添加便捷的数据存储与导出功能,适用于数据记录、配置导入等多种应用场景。

weixin_29165725的博客 458

从原始数据到农学模型:DJI M3M/P4M多光谱影像全链路处理实战

本文详细介绍了使用DJI M3M/P4M多光谱无人机进行农学建模的全链路流程。核心在于强调辐射标定的首要性,它将原始DN值转换为具有物理意义的反射率,是确保后续植被指数计算与模型反演准确性的基石。文章通过大疆智图和Pix4Dfields的实战演示,手把手指导完成数据处理、影像镶嵌及光谱信息提取,最终构建从光谱指数到叶面积指数等关键农学参数的反演模型,实现精准农业分析。

weixin_29281941的博客 243

fabric8 java api_kubernates的api访问java实现—Fabric8

此文仅供了解kubernates的开发人员写api接口时参考。一、前言Java访问kubernates API的方式有很多,用java语言开发的有两种,一个是基于Jersey的,一个是基于Fabric8。因为Kubernates API Server就是RESRFul Web Service,而Jersey是一个方便简化开发RESRFul Web Service的框架所以采用jersey会比较省力...

weixin_33406440的博客 445

新手小白如何学习编程

学习目标推荐第一门语言优势网站 / APP 开发(前端)JavaScript浏览器原生支持,能快速做出可视化效果后端 / 服务器 / 数据分析Python语法简洁像英语,库多、应用广(入门友好)游戏开发先用电竞入门,再转专业引擎硬件 / 嵌入式(比如单片机)C 语言贴近硬件,行业标准办公自动化(Excel / 文档处理)Python快速解决重复工作(比如批量改文件)👉新手首选推荐。

2501_94331842的博客 2232

java 调用 k8s api_java实现kubernates的api访问—Fabric8

此文仅供了解kubernates的开发人员写api接口时参考。一、前言java访问kubernates API的方式有很多,用java语言开发的有两种,一个是基于Jersey的,一个是基于Fabric8。因为Kubernates API Server就是RESRFul Web Service,而Jersey是一个方便简化开发RESRFul Web Service的框架所以采用jersey会比较省力...

weixin_29545475的博客 865

第三节:Vben Admin登录对接后端login接口

上一节,我们梳理的Vben Admin登录功能接口的逻辑,本节开始正式开启后端的开发后端我们采用Python的Flask项目,Flask-SQLAlchemy管理数据库模型,Flask-Migrate进行模型迁移。参考版本如下:Flask3.0.23.1.1本节,我们已经开启的后端的开发,因为是主要介绍Vben Admin的登录逻辑,所以Flask开发这里只截取了部分主要代码。

cuiwin的专栏 4190

Python爬虫实战:逆向工程与异步处理攻克Pinterest无限滚动瀑布流

我们将从零开始,逐步分析其数据接口,构建一个功能完整的爬虫,并深入探讨反爬虫策略的应对、性能优化以及数据存储等高级主题。: 在实际爬取中,你需要先访问一次Pinterest主页,获取初始的Cookie和CSRF Token,然后再发起API请求。: Python爬虫,Pinterest,无限滚动,瀑布流,异步IO,httpx,逆向工程,API接口,动态内容,反爬虫。你会很快发现一些关键的请求模式。:页面初始加载有限内容,随着用户滚动,新的图片块通过AJAX动态加载,实现“永无止境”的浏览。

2201_76125261的博客 551

java 调用 k8s api_java实现kubernates API的访问调用

1. 前言kubernetes及各开源社区为开发人员提供了各种语言版的Client Library,让我们可以通过编程的方式可以实现调用Kubernetes API,从而完成pod、service、RC等资源的图形化创建和管理。本篇主要介绍使用java语言的实现2. 使用场景开发基于kubernetes的容器云管理平台3. 基于的框架用java语言开发的有两种,一个是基于Jersey的,一个是基于...

weixin_35775608的博客 1081

⭐️VMwareWorkstation17.0虚拟机安装搭建Windows 7虚拟机(完整图文详细步骤含配置VMware Tools教程)

本教程为大家提供了从安装VMware Workstation 17.0开始,到在虚拟机上成功搭建Windows 7专业版系统的完整步骤。我们详细介绍了准备阶段所需的软件和硬件要求,以及在VMware中配置和安装Windows 7系统的每一步操作。此外,我们还特别提到了如何在虚拟机上配置VMware Tools,以便更好地与宿主机进行交互。 通过本教程的学习,读者不仅能够掌握在VMware Workstation 17.0上安装Windows 7虚拟机的技能,还能了解到如何配置虚拟机的硬件以及安装VMwar

Python老吕的博客 2万+

java实现kubernates API的访问调用

1. 前言kubernetes及各开源社区为开发人员提供了各种语言版的Client Library,让我们可以通过编程的方式可以实现调用Kubernetes API,从而完成pod、service、RC等资源的图形化创建和管理。本篇主要介绍使用java语言的实现2. 使用场景开发基于kubernetes的管理平台3. 基于的框架用java语言开发的有两种,一个是基于Jersey的,一个是基于Fabr

wjs7740的专栏 1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【Java Kubernates】Java调用kubernates提交Yaml到SparkOperator

最终我选择了fabric8io,因为我们需要使用k8s的自定义资源sparkApplication,对于自定义资源,kubernetes-client/java需要创建各个k8s对象的pojo,比较麻烦。这里提一下,我在重新使用spark operator的时候,发现原来官方的google的spark operator镜像已经不能拉取了,貌似是google发现它的两个镜像存在漏洞,所以关闭了开源镜像。目前查询框架使用的是trino,但是trino也有其局限性,需要准备一个备用的查询框架。

你的博客 1850

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

【Spring Cloud Kubernetes】使用k8s原生service实现服务注册和发现

在传统的微服务开发中,会借助Nacos注册中心,现在没有Nacos了,本地通过Fabric8,底层与k8s的API Server进行交互,获取集群内的资源信息。的注册与发现的问题,并且也实现了负载,我们在基于云原生开发微服务的时候,可以利用。写一个最简单的微服务,提供一个/hello接口,部署到k8s,这一步直接省略。现在微服务开发模式应用的越来越广泛,注册中心。也逐渐被其它注册中心产品替代,比如阿里出品的。提供了一套原生的支持子项目,那就是。随着云原生相关技术的普及,,这也是今天的主角。

Java技术栈,分享不断学习、不断超越、不断积累的历程! 5107

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

利用K8S技术栈打造个人私有云(连载之:K8S资源控制)

【利用K8S技术栈打造个人私有云系列文章目录】 利用K8S技术栈打造个人私有云(连载之:初章) 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建) 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手) 利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验) 利用K8S技术栈打造个人私有云(连载之:资源控制研究) 利用K8S技术栈打造个人私有云(连载之:私有云客户...

CodeSheep 551

如何访问kubernetes API?

k8s API Server提供了k8s各类资源对象(pod,RC,Service等)的增删改查及watch等HTTP Rest接口,是整个系统的数据总线和数据中心。kubernetes API Server的功能:提供了集群管理的REST API接口(包括认证授权、数据校验以及集群状态变更);提供其他模块之间的数据交互和通信的枢纽(其他模块通过API Server查询或修改数据,只有API Server才直接操作etcd);是资源配额控制的入口;拥有完备的集群安全机制.

MyySophia的博客 1934

【Java】基于fabric8io库操作k8s集群实战(pod、deployment、service、volume)

基于fabric8io实现操作k8s集群(pod、deployment、service、volume)

小样yx的博客 5661
上一篇: Windows10系统下JDK1.8的下载安装及环境变量配置
下一篇: Postman和Java Client访问K8s
王树民
博客等级 码龄10年 912粉丝 560原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值