1. 前言
kubernetes及各开源社区为开发人员提供了各种语言版的Client Library,让我们可以通过编程的方式可以实现调用Kubernetes API,从而完成pod、service、RC等资源的图形化创建和管理。本篇主要介绍使用java语言的实现
2. 使用场景
开发基于kubernetes的容器云管理平台
3. 基于的框架
用java语言开发的有两种,一个是基于Jersey的,一个是基于Fabric8。
-Jersey是一个方便简化开发RESRFul Web Service的框架,契合kubernetesAPI的设计,所以采用jersey会比较省力,但还是需要开发者自己做很多工作。
-Fabric8中的kubernates-client.xx.jar,kubernates-model.xx.jar等工具包包对kubernates api做了很好的封装,访问代码比较简单。
本篇将选择fabric8实现
4. 使用步骤
4.1 首先导入核心jar包
4.2 创建连接API-Server的client
package org.demo.framework.engine.k8s.util;
import io.fabric8.kubernetes.api.model.*;
import io.fabric8.kubernetes.api.model.extensions.*;
import io.fabric8.kubernetes.api.model.extensions.Deployment;
import io.fabric8.kubernetes.client.Config;
import io.fabric8.kubernetes.client.ConfigBuilder;
import io.fabric8.kubernetes.client.*;
import okhttp3.TlsVersion;
import org.apache.log4j.Logger;
import java.io.Closeable;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
public class Fabric8KubeUtils implements KubeUtils {