Package google.cloud.gkehub.policycontroller.v1

Índice

BundleInstallSpec

BundleInstallSpec é a configuração de especificação de um único pacote gerenciado.

Campos
exempted_namespaces[]

string

O conjunto de namespaces a serem isentos do pacote.

HubConfig

Configuração do Policy Controller

Campos
install_spec

HubConfig.InstallSpec

O install_spec representa o estado pretendido especificado pela solicitação mais recente que modificou install_spec na especificação do recurso, não o estado do ciclo de vida do recurso observado pelo controlador de recursos do Hub relatado no estado do recurso.

exemptable_namespaces[]

string

O conjunto de namespaces excluídos das verificações do Policy Controller. Os namespaces não precisam existir no cluster.

referential_rules_enabled

bool

Permite usar modelos de restrição que se referem a objetos diferentes do que está sendo avaliado.

log_denies_enabled

bool

Registra todas as negações e falhas de simulação.

mutation_enabled

bool

Ativa a capacidade de modificar recursos usando o Policy Controller.

deployment_configs

map<string, PolicyControllerDeploymentConfig>

Mapa de configurações de implantação para implantações ("admissão", "auditoria", "mutação").

audit_interval_seconds

int64

Define o intervalo das verificações de auditoria do Controlador de Políticas (em segundos). Quando definido como 0, desativa completamente a funcionalidade de auditoria.

monitoring

MonitoringConfig

Monitoring especifica a configuração do monitoramento.

policy_content

PolicyContentSpec

Especifica o conteúdo pretendido da política no cluster

constraint_violation_limit

int64

O número máximo de violações de auditoria a serem armazenadas em uma restrição. Se não for definido, o padrão interno (atualmente 20) será usado.

InstallSpec

O conjunto de especificações de instalação que o controlador de atributos do hub pode acionar.

Enums
INSTALL_SPEC_UNSPECIFIED A especificação é desconhecida.
INSTALL_SPEC_NOT_INSTALLED Solicitação para desinstalar o Controlador de Políticas.
INSTALL_SPEC_ENABLED Solicitação para instalar e ativar o Controlador de Políticas.
INSTALL_SPEC_SUSPENDED Solicitação para suspender o Controlador de Políticas, como os respectivos webhooks. Se o Controlador de Políticas não estiver instalado, ele será instalado, mas suspenso.
INSTALL_SPEC_DETACHED Solicitação para interromper todas as ações de reconciliação pelo controlador de hub do PoCo. Esse é um mecanismo de implantação forçada para impedir que o hub do PoCo afete os recursos do cluster.

MembershipSpec

Controlador de Políticas: configuração de um único cluster. Destinado para uso em paralelo com a resposta automática do PolicyController.

Campos
policy_controller_hub_config

HubConfig

Configuração do Controlador de Políticas para o cluster.

version

string

Versão do Controlador de Políticas instalada.

MembershipState

Controlador de Políticas: estado de um único cluster.

Campos
component_states

map<string, OnClusterState>

Atualmente, eles incluem (também usados como chaves do mapa): 1. "admission" 2. "audit" 3. "mutation"

state

MembershipState.LifecycleState

O estado geral do ciclo de vida do Controlador de Políticas observado pelo controlador de atributos do hub.

policy_content_state

PolicyContentState

O estado geral do conteúdo observado pelo controlador de atributos do Hub.

LifecycleState

O conjunto de estados em que o Controlador de Políticas pode existir.

Enums
LIFECYCLE_STATE_UNSPECIFIED O estado do ciclo de vida não foi especificado.
NOT_INSTALLED O PC não existe no cluster especificado, e nenhum recurso k8s de nenhum tipo associado ao PC pode existir nele. O cluster não tem uma associação com o PCH.
INSTALLING O PCH tem uma associação, mas o PC não está totalmente instalado no cluster. Nesse estado, o hub pode realizar ações para instalar o PC no cluster.
ACTIVE O PC está totalmente instalado no cluster e em modo operacional. Nesse caso, o PCH reconciliará o estado com o PC, que realizará as respectivas tarefas operacionais de acordo com o software. O estado READY exige que o hub confirme que o PC está instalado e que os pods estão operacionais com a versão do PC esperada pelo PCH.
UPDATING O PC está totalmente instalado, mas está mudando a configuração dos recursos em execução no cluster, inclusive alterando a versão do PC para mais ou menos ou modificando os manifestos do PC. O PCH tem uma associação, sabe a versão em que o cluster precisa estar em execução, mas não confirmou por si só se o PC está em execução com essa versão.
DECOMMISSIONING O PC pode ter recursos no cluster, mas o PCH quer remover a associação. A associação ainda existe.
CLUSTER_ERROR O PC não está operacional, e o PCH está impossibilitado de atuar para torná-lo operacional. A entrada em um estado CLUSTER_ERROR acontece automaticamente quando o PCH determina que um PC instalado no cluster não está operacional ou que o cluster não atende aos requisitos definidos para que o PCH administre o cluster, mas recebeu uma instrução para fazer isso (como "instalar").
HUB_ERROR Nesse estado, o PC ainda pode estar operacional e apenas o PCH está impossibilitado de atuar. O hub não pode emitir instruções para alterar o estado do PC nem interferir nos recursos do cluster. A entrada do estado HUB_ERROR acontece automaticamente quando o PCH determina que o hub está em um estado não íntegro e quer "tirar as mãos" para evitar corromper o PC ou outros dados.
SUSPENDED O Controlador de Políticas (PC) está instalado, mas está suspenso. Isso significa que as políticas não são aplicadas, mas as violações ainda são registradas (por auditoria).
DETACHED O hub do PoCo não está executando ações para reconciliar objetos de cluster. As mudanças feitas nesses objetos não serão substituídas pelo hub do PoCo.

MonitoringConfig

MonitoringConfig especifica para quais back-ends o Controlador de Políticas exportará métricas. Por exemplo, para especificar as métricas que precisam ser exportadas para o Cloud Monitoring e o Prometheus, especifique os back-ends: ["cloudmonitoring", "prometheus"]

Campos
backends[]

MonitoringConfig.MonitoringBackend

Especifica a lista de back-ends para os quais o Controlador de Políticas exportará. Uma lista vazia desativaria a exportação de métricas.

MonitoringBackend

Opções de back-end compatíveis para monitoramento

Enums
MONITORING_BACKEND_UNSPECIFIED Não é possível determinar o back-end
PROMETHEUS Back-end do Prometheus para monitoramento
CLOUD_MONITORING Back-end do Stackdriver/Cloud Monitoring para monitoramento

OnClusterState

OnClusterState representa o estado de um subcomponente do Controlador de Políticas.

Campos
state

MembershipState.LifecycleState

O estado do ciclo de vida desse componente.

details

string

Identificar possíveis erros ou registros de informações.

PolicyContentSpec

PolicyContentSpec define a configuração de conteúdo pretendida pelo usuário no cluster.

Campos
bundles

map<string, BundleInstallSpec>

Mapa do nome do pacote para BundleInstallSpec. O nome do pacote é mapeado com a chave bundleName na anotação policycontroller.gke.io/constraintData em uma restrição.

template_library

TemplateLibraryConfig

Configura a instalação da biblioteca de modelos.

PolicyContentState

O estado do conteúdo da política do Controlador de Políticas

Campos
template_library_state

OnClusterState

O estado da biblioteca de modelos

bundle_states

map<string, OnClusterState>

O estado de todos os pacotes incluídos na versão escolhida do manifesto

referential_sync_config_state

OnClusterState

O estado da configuração da sincronização de dados referenciais. Isso pode representar o estado do(s) objeto(s) syncSet ou do objeto de configuração, dependendo da versão do PoCo configurada pelo usuário.

PolicyControllerDeploymentConfig

Configuração específica da implantação.

Campos
pod_tolerations[]

PolicyControllerDeploymentConfig.Toleration

Tolerâncias de pod de taints de nó.

pod_affinity

PolicyControllerDeploymentConfig.Affinity

Configuração de afinidade de pods.

replica_count

int64

Contagem de réplicas de pods.

container_resources

ResourceRequirements

Requisitos de recursos do contêiner.

pod_anti_affinity
(deprecated)

bool

Ativação de antiafinidade de pods. Descontinuado: use pod_affinity.

Afinidade

A configuração de afinidade de pods usada por uma implantação.

Enums
AFFINITY_UNSPECIFIED Nenhuma configuração de afinidade foi especificada.
NO_AFFINITY As configurações de afinidade serão removidas da implantação.
ANTI_AFFINITY A configuração de antiafinidade será aplicada a essa implantação. Padrão para implantação de admissões.

Toleration

Tolerância de um taint de nó.

Campos
key

string

Corresponde a uma chave de taint (não necessariamente exclusiva).

operator

string

Corresponde a um operador de taint.

value

string

Corresponde a um valor de taint.

effect

string

Corresponde a um efeito de taint.

ResourceList

ResourceList contém requisitos de recursos de contêiner.

Campos
memory

string

Requisito de memória expresso em unidades de recursos do Kubernetes.

cpu

string

Requisito de CPU expresso em unidades de recursos do Kubernetes.

ResourceRequirements

ResourceRequirements descreve os requisitos de recursos de computação.

Campos
limits

ResourceList

"Limits" descreve a quantidade máxima de recursos de computação permitidos pelo contêiner em execução.

requests

ResourceList

"Requests" descreve a quantidade de recursos de computação reservados para o contêiner pelo kube-scheduler.

TemplateLibraryConfig

A configuração que especifica quais modelos da biblioteca padrão instalar.

Campos
installation

TemplateLibraryConfig.Installation

Configura a maneira como a biblioteca de modelos é instalada no cluster.

Instalação

Como a biblioteca de modelos precisa ser instalada

Enums
INSTALLATION_UNSPECIFIED Nenhuma estratégia de instalação foi especificada.
NOT_INSTALLED Não instalar a biblioteca de modelos.
ALL Instalar toda a biblioteca de modelos.