API Kubernetes Fabric8
Sep 19 2020
Atualmente, uso a API fabric8 para ler o conteúdo de PODs, serviços etc.
KubernetesClient client = new DefaultKubernetesClient();
client.configMaps().withName("ConfigMapName");
Existe uma maneira de recuperar o conteúdo do HTTPProxy de httpproxies do api group projectcontour.io?
Desde já, obrigado!!!
Respostas
1 RohanKumar Sep 20 2020 at 00:42
HTTPProxyparece ser um recurso personalizado . O cliente Kubernetes fornece uma API digitada (onde você precisa fornecer POJOs para seu recurso personalizado) e uma API sem tipo (manipulação de recursos personalizados usando HashMaps brutos). Aqui está um exemplo de como você pode fazer isso usando a API Typeless:
try (KubernetesClient client = new DefaultKubernetesClient()) {
CustomResourceDefinitionContext httpProxyContext = new CustomResourceDefinitionContext.Builder()
.withGroup("projectcontour.io") // <- Group of Custom Resource
.withVersion("v1") // <- Version of Custom Resource
.withPlural("httpproxies") // <- Plural form as specified in CRD
.withScope("Namespaced") // <- Whether Custom Resource is Cluster Scoped or Namespaced
.build();
// List all HTTPProxies
Map<String, Object> httpProxyList = client.customResource(httpProxyContext).list("ns1");
// Get a specific HTTPProxy
Map<String, Object> myHttpProxy = client.customResource(httpProxyContext).get("ns1", "tls-example");
}
Você pode escolher qualquer abordagem que considere adequada às suas necessidades. Se estiver interessado, você provavelmente pode verificar meus blogs sobre essas abordagens em detalhes:
- Manipulação de recursos personalizados do Kubernetes em Java usando o cliente Fabric8 Kubernetes: parte 1 (sem tipo)
- Manipulação de recursos personalizados do Kubernetes em Java usando o cliente Fabric8 Kubernetes: Parte 2 (digitado)
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?
Christopher Nolan uma vez se arrependeu de ter lido o 'roteiro de Pulp Fiction' de Quentin Tarantino