Kubernetes API Overview - fechada

API REST é uma parte importante do sistema Kubernetes, operação e comunicação entre todos os componentes do processamento por as chamadas de API Server API em REST, na maioria dos casos, as definições da API e implementações de formato HTTP REST padrão, você pode kubectl ferramenta de gestão de comando ou outra ferramenta de linha de comando para executar.

versão da API

De modo compatível com versões mais antigas, enquanto o novo API escalada, Kubernetes API suporta múltiplas versões, cada versão tem um caminho API API diferente, tal como / api / v1 ou / apis / extensões / v1beta1.

baseado em regras de versão API nível API selecione versão, ao invés de seleção baseada em recursos e em nível de domínio, a fim de garantir que a API pode descrever uma visão clara dos recursos do sistema contínuos e comportamento, todo o processo pode controlar o acesso e controle de API experimental, acesso.

  • Modo Protobuf e serialização JSON segue o princípio mudança de padrão mesmo, todos descritos abaixo são cobertos por esses dois modos.

Deve-se notar, versão da API e a versão do software não está diretamente relacionada, diferentes versões da API têm diferentes graus de estabilidade, documentação da API descreve em detalhes cada padrões de nível.

nível de alfa:

  • Compreendendo alfa nome versão (por exemplo v1alpha1).
  • O software pode conter erros. Ativar um recurso pode causar erros. Por padrão, o recurso pode ser desativado.
  • A qualquer momento pode perder o suporte para esse recurso, sem aviso prévio.
  • API pode não ser compatível com uma maneira de mudar em versões posteriores do software, sem aviso prévio.
  • O software é recomendada apenas para testes de curto prazo no cluster, por causa do aumento do risco de erros e falta de apoio a longo prazo.

nível Beta:

  • A versão beta contém o nome (por exemplo v2beta3). O software é bem testado. habilitação da função é considerado seguro. Por padrão, o recurso está ativado. Detalhes podem mudar, mas a função pode não ser compatível com a forma como as mudanças em versões beta subseqüentes ou versão estável em versões posteriores não são excluídos modo de objeto ou semântica. Se isso ocorrer, o funcionário irá fornecer migração guias. Isto pode precisar excluir, editar e re-criar o objeto API. Isso pode mudar em versões posteriores de alguns lugares incompatíveis, é recomendado para serviços não críticos, se você tiver vários clusters podem ser atualizados de forma independente, você também pode relaxar esta restrição. Depois foi utilizada a versão Beta, você pode dar o feedback da comunidade, se esta versão não muda muito após actualizações subsequentes. nível estável:
  • O nome da versão de nomenclatura: vX, onde X é um inteiro.
  • Características versão estável será exibido em uma versão posterior do lançamento do software.

grupos API

grupos de API de modo que a expansão Kubernetes API mais conveniente. grupos API são designados no caminho e campo apiVersion DESCANSO no objecto serializados.

Atualmente, existem vários grupos de API em uso:

  • O grupo central (também chamado legado), caminho REST / api / v1, mas esse caminho não é fixo, v1 é a versão atual. Correspondentemente apiVersion campo de código dentro é v1.
  • Grupos nomeados, caminho REST está especificado no / apis / $ GROUP_NAME / $ VERSÃO, e uso apiVersion: $ GROUP_NAME / $ VERSÃO (por exemplo apiVersion: lote / v1). Em Kubernetes referências API pode ver a lista completa de Grupos de API.

Use costume extensão de recursos API de duas maneiras:

  1. CustomResourceDefinition para fornecer necessidades CRUD básicas do usuário.
  2. Brevemente: Kubernetes API requer um usuário semântica completa pode implementar servidor api costume, e utilizar o cliente perfeita conexão agregador.

 

Habilitar Grupos API

Você pode usar --runtime-config configurações para ativar ou desativar determinados recursos e grupos de API no servidor api. podem ser utilizados valores separados por vírgulas --runtime-config. Por exemplo, para desactivar o lote / v1, definido --runtime-config = lote / V1 = falso, para permitir lote / v2alpha1, definido --runtime-config = lote / v2alpha1. Esta etiqueta tem um conjunto de chave = valor pares separados por um tempo de execução do servidor de configuração api vírgula descrito.

Dica: mudanças ativar e desativar grupos ou recursos necessidade de reiniciar apiserver eo controlador-manager garantir --runtime-config para ter efeito.

Ativar recurso grupo

DaemonSets, implantações, HorizontalPodAutoscalers, Ingress, Jobs e ReplicaSets, são ativadas por padrão. Outras extensões podem ser ativadas por recursos --runtime-config fornecidos no servidor api. --runtime-config valores aceitáveis ​​são separados por vírgulas. Por exemplo, para desativar implantações e Jobs, definir --runtime-config = extensões / v1beta1 / implementações = false, extensões / v1beta1 / empregos = false

Esta tradução artigo Kubernetes documentos oficiais

artigos originais publicados 0 · ganhou elogios 0 · Vistas 542

Acho que você gosta

Origin blog.csdn.net/qingdao666666/article/details/104625412
Recomendado
Clasificación