Как развернуть приложение, используя Kubernetes Azure и AWS SDK для Java - PullRequest
0 голосов
/ 04 октября 2018
public void runKubernetes() {
    KubernetesCluster k8sCluster = this.getKubernetesCluster("xyz-aks");
    System.out.println("___________________________________________");
    System.out.println("Kubernetes Cluster String: " + k8sCluster.name());

    DefaultKubernetesClient kubeclient = new DefaultKubernetesClient();
    System.out.println("Kube client Master URL :"+kubeclient.getMasterUrl());

    NodeList kubenodes = kubeclient.nodes().list();
    for (Node node : kubenodes.getItems()) {
        System.out.println( node.getKind() + " => " + node.getMetadata().getName() +": " + node.getMetadata().getClusterName());
    }
}

Я получаю Клиент и узлы.Теперь у меня есть файл yaml, и я хочу развернуть этот yaml (создать службу, развертывание и модули) программно.

Я могу сделать следующее

kubectl create -f pod-sample.yaml 

, но я хочу сделать то же самое, используя JAVA SDK.

Я использую следующие библиотеки Java для kubernetes:

io.fabric8.kubernetes

1 Ответ

0 голосов
/ 04 октября 2018

Полагаю, вы можете проанализировать YAML или JSON определения развертывания.Например, для YAML вы можете использовать любую из библиотек Java здесь

Джексон кажется наиболее популярным для JSON, который также поддерживает расширение YAML.

Затем, когда вы выполните синтаксический анализ, произнеситеимя, например, для создания сервиса:

Service myservice = client.services().inNamespace(parsedNamespaceStr).createNew()
                     .withNewMetadata()
                       .withName(parsedServiceName)
                       .addToLabels(parsedLabel1, parseLabel2)
                     .endMetadata()
                     .done();
...