infracloud/archives/invista-nexus_Fix-Unauthorized/schame.yaml
2026-03-09 15:02:41 -03:00

1141 lines
No EOL
40 KiB
YAML

title: "Stack de Infraestrutura Nexus - OKE & Data Services"
description: "Provisionamento automatizado de Clusters OKE (Nexus, Bus, O11y), Bancos de Dados e Vault."
schemaVersion: 1.1.0
version: "20260302"
locale: "pt_BR"
variableGroups:
- title: "Campos Escondidos"
visible: false
variables:
- tenancy_ocid
- region
- postgresql_memory_in_gbs
- postgresql_ocpu_count
- title: "OKE Nexus"
visible: true
variables:
- oke_nexus_enable
- oke_nexus_cluster_compartment_id
- oke_nexus_cluster_name
- oke_nexus_vcn_compartment
- oke_nexus_vcn_id
- oke_nexus_subnet_api_cidr_block
- oke_nexus_subnet_node_cidr_block
- oke_nexus_subnet_lb_cidr_block
- oke_nexus_subnet_pods_cidr_block
- oke_nexus_node_shape
- oke_nexus_node_count
- oke_nexus_node_memory_gb
- oke_nexus_node_ocpus
- oke_nexus_show_advanced
- oke_nexus_create_service_account
- oke_nexus_api_endpoint_public
- oke_nexus_enable_psql_access
- oke_nexus_enable_redis_access
- oke_nexus_enable_autonomous_json_access
- oke_nexus_enable_metric_server
- oke_nexus_enable_cert_manager
- oke_nexus_enable_autoscaler
- oke_nexus_autoscaler_min_nodes
- oke_nexus_autoscaler_max_nodes
- oke_nexus_autoscaler_down_delay_after_add
- oke_nexus_autoscaler_down_unneeded_time
- oke_nexus_autoscaler_down_unready_time
- oke_nexus_autoscaler_skip_nodes_with_system_pods
- title: "OKE Barramento"
visible: true
variables:
- oke_bus_enable
- oke_bus_cluster_compartment_id
- oke_bus_cluster_name
- oke_bus_vcn_compartment
- oke_bus_vcn_id
- oke_bus_subnet_api_cidr_block
- oke_bus_subnet_node_cidr_block
- oke_bus_subnet_lb_cidr_block
- oke_bus_subnet_pods_cidr_block
- oke_bus_node_shape
- oke_bus_node_count
- oke_bus_node_memory_gb
- oke_bus_node_ocpus
- oke_bus_show_advanced
- oke_bus_create_service_account
- oke_bus_api_endpoint_public
- oke_bus_enable_psql_access
- oke_bus_enable_redis_access
- oke_bus_enable_autonomous_json_access
- oke_bus_enable_metric_server
- oke_bus_enable_cert_manager
- oke_bus_enable_autoscaler
- oke_bus_autoscaler_min_nodes
- oke_bus_autoscaler_max_nodes
- oke_bus_autoscaler_down_delay_after_add
- oke_bus_autoscaler_down_unneeded_time
- oke_bus_autoscaler_down_unready_time
- oke_bus_autoscaler_skip_nodes_with_system_pods
- title: "OKE Observabilidade"
visible: true
variables:
- oke_o11y_enable
- oke_o11y_cluster_compartment_id
- oke_o11y_cluster_name
- oke_o11y_vcn_compartment
- oke_o11y_vcn_id
- oke_o11y_subnet_api_cidr_block
- oke_o11y_subnet_node_cidr_block
- oke_o11y_subnet_lb_cidr_block
- oke_o11y_subnet_pods_cidr_block
- oke_o11y_node_shape
- oke_o11y_node_count
- oke_o11y_node_memory_gb
- oke_o11y_node_ocpus
- oke_o11y_show_advanced
- oke_o11y_create_service_account
- oke_o11y_api_endpoint_public
- oke_o11y_enable_psql_access
- oke_o11y_enable_redis_access
- oke_o11y_enable_autonomous_json_access
- oke_o11y_enable_metric_server
- oke_o11y_enable_cert_manager
- oke_o11y_enable_autoscaler
- oke_o11y_autoscaler_min_nodes
- oke_o11y_autoscaler_max_nodes
- oke_o11y_autoscaler_down_delay_after_add
- oke_o11y_autoscaler_down_unneeded_time
- oke_o11y_autoscaler_down_unready_time
- oke_o11y_autoscaler_skip_nodes_with_system_pods
- title: "Object Storage - Bucket"
visible: true
variables:
- bucket_enable
- bucket_compartment
- bucket_name
- bucket_access_type
- bucket_storage_tier
- bucket_versioning
- title: "Segurança & Vault"
visible: true
variables:
- vault_enable
- vault_compartment
- vault_name
- title: "Database: PostgreSQL"
visible: true
variables:
- postgresql_enable
- postgresql_compartment_id
- postgresql_name
- postgresql_version
- postgresql_vcn_compartment
- postgresql_vcn_id
- postgresql_subnet_cidr_block
- postgresql_instance_count
- postgresql_shape
- postgresql_ocpu_e5
- postgresql_ocpu_e6
- postgresql_ocpu_s3
- postgresql_memory_amd
- postgresql_memory_s3
- title: "Cache: Redis"
visible: true
variables:
- redis_enable
- redis_compartment_id
- redis_name
- redis_vcn_compartment
- redis_vcn_id
- redis_subnet_cidr_block
- redis_count_node
- redis_node_memory_in_gbs
- redis_software_version
- title: "Database: Autonomous JSON"
visible: true
variables:
- autonomous_json_enable
- autonomous_json_compartment_id
- autonomous_json_name
- autonomous_json_vcn_compartment
- autonomous_json_vcn_id
- autonomous_json_subnet_cidr_block
- autonomous_json_compute_model
- autonomous_json_compute_count
- autonomous_json_is_auto_scaling_enabled
- autonomous_json_data_storage_size_in_tbs
variables:
# --- GERAL ---
tenancy_ocid:
type: string
required: true
title: "Tenancy OCID"
region:
type: string
required: true
title: "Região"
# --- OKE NEXUS ---
oke_nexus_enable:
title: "Criar: Cluster OKE ?"
description: "Ative para criar uma Cluster OKE."
type: boolean
oke_nexus_cluster_compartment_id:
title: "Compartimento do OKE"
description: "Compartimento onde o Cluster OKE sera criado."
type: oci:identity:compartment:id
required: true
visible: ${oke_nexus_enable}
oke_nexus_cluster_name:
title: "Nome do Cluster"
description: "O nome do cluster"
type: string
required: true
visible: ${oke_nexus_enable}
dependsOn:
compartmentId: ${oke_nexus_cluster_compartment_id}
# Network: VCN
oke_nexus_vcn_compartment:
title: "Selecione o compartmento da VCN do OKE"
description: "Compartimento onde se encontra a VCN que sera usada para cria a subnet."
type: oci:identity:compartment:id
required: true
visible: ${oke_nexus_enable}
oke_nexus_vcn_id:
title: "Select a VCN:"
description: "VCN onde a subnet de banco de dados sera criada."
type: oci:core:vcn:id
required: true
visible: ${oke_nexus_enable}
dependsOn:
compartmentId: ${oke_nexus_vcn_compartment}
# Network: Subnets
oke_nexus_subnet_api_cidr_block:
title: "Subnet CIDR: API Endpoint"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_nexus_enable}
oke_nexus_subnet_node_cidr_block:
title: "Subnet CIDR: Nodes"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_nexus_enable}
oke_nexus_subnet_lb_cidr_block:
title: "Subnet CIDR: Loadbalancer"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_nexus_enable}
oke_nexus_subnet_pods_cidr_block:
title: "Subnet CIDR: Pods"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_nexus_enable}
# Nodepool
oke_nexus_node_count:
title: "Nodepool: Quantidade de Worker Nodes"
description: "o número de nós que devem estar no pool de nós."
type: string
default: 3
required: true
visible: ${oke_nexus_enable}
oke_nexus_node_shape:
title: "Nodepool: Shape dos Worker Nodes"
description: "O nome do formato dos nós no conjunto de nós."
type: enum
enum:
- VM.Optimized3.Flex
- VM.Standard.A1.Flex
- VM.Standard.A2.Flex
- VM.Standard.E3.Flex
- VM.Standard.E4.Flex
- VM.Standard.E5.Flex
- VM.Standard.E6.Flex
- VM.Standard3.Flex
default: "VM.Standard.E5.Flex"
required: true
visible: ${oke_nexus_enable}
oke_nexus_node_memory_gb:
title: "Nodepool: Quantidade de memoria de cada Worker Nodes."
description: "A quantidade total de memória disponível para cada nó, em gigabytes."
type: string
required: true
default: 8
visible: ${oke_nexus_enable}
oke_nexus_node_ocpus:
title: "Nodepool: Quantidade de oCPU de cada Worker Nodes."
description: "O número total de OCPUs disponíveis para cada nó no pool de nós. Veja aqui para mais detalhes."
type: string
required: true
default: 1
visible: ${oke_nexus_enable}
# Opcoes avancadas:
oke_nexus_show_advanced:
title: "Exibir opcoes avancadas"
description: "Exibe opções avançada de configuração."
type: boolean
default: false
visible: ${oke_nexus_enable}
oke_nexus_create_service_account:
title: "Criar Service Account para CI/CD?"
description: "Cria automaticamente uma SA com permissão de cluster-admin e gera o token."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_api_endpoint_public:
title: "API endpoint Publico"
description: "Permite acesso ao Cluster OKE pela internet."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_enable_psql_access:
title: "PostgeSQL: Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico PostgreSQL."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_enable_redis_access:
title: "Redis: Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico Cache Redis."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_enable_autonomous_json_access:
title: "Autonomous Json (ADJ): Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico Autonomous JSON (ADJ)."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_enable_metric_server:
title: "OKE Addon: Metric Server"
description: "Coleta e agrega métricas de recursos (CPU e memória) de Kubelets em cada nó e as expõe por meio de API."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_enable_cert_manager:
title: "OKE Addon: Cert Manager"
description: "O Cert-manager é um controlador nativo do Kubernetes para gerenciamento de certificados que automatiza a emissão e renovação de certificados X.509."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
oke_nexus_enable_autoscaler:
title: "OKE Addon: Cluster Autoscaler"
description: "Ajusta automaticamente o tamanho do cluster Kubernetes, adicionando ou removendo nós de trabalho com base na demanda de recursos."
type: boolean
default: false
visible: ${oke_nexus_show_advanced}
#Addon Cluster Autoscaler
oke_nexus_autoscaler_min_nodes:
title: "scalerMinNodes"
description: "Número minimo de nós no pools de nós. O dimensionador automático do cluster não diminuirá o cluster abaixo desse número."
type: number
minimum: 1
maximum: 100
default: 1
visible: ${oke_nexus_enable_autoscaler}
oke_nexus_autoscaler_max_nodes:
title: "scalerMaxNode"
description: "Número máximo de nós no pools de nós. O dimensionador automático do cluster não aumentará o cluster além desse número."
type: number
minimum: 1
maximum: 100
default: 3
visible: ${oke_nexus_enable_autoscaler}
oke_nexus_autoscaler_down_delay_after_add:
title: "scaleDownDelayAfterAdd"
description: "Quanto tempo depois de aumentar essa escala, a avaliação é retomada. (Default:10m)"
type: string
default: "10m"
visible: ${oke_nexus_enable_autoscaler}
oke_nexus_autoscaler_down_unneeded_time:
title: "scaleDownUnneededTime"
description: "Quanto tempo um nó deve ser desnecessário antes de ser elegível para redução. (Default:10m)"
type: string
default: "10m"
visible: ${oke_nexus_enable_autoscaler}
oke_nexus_autoscaler_down_unready_time:
title: "scaleDownUnreadyTime"
description: "Quanto tempo um nó não pronto deve ser desnecessário antes de ser elegível para redução. (Default:20m)"
type: string
default: "20m"
visible: ${oke_nexus_enable_autoscaler}
oke_nexus_autoscaler_skip_nodes_with_system_pods:
title: "skipNodesWithSystemPods"
description: "Se true, o dimensionador automático do cluster nunca excluirá nós com pods do kube-system (exceto para DaemonSet ou pods de espelho). (Default:true)"
type: boolean
default: true
visible: ${oke_nexus_enable_autoscaler}
# --- OKE BARRAMENTO ---
oke_bus_enable:
title: "Criar: Cluster OKE ?"
description: "Ative para criar uma Cluster OKE."
type: boolean
oke_bus_cluster_compartment_id:
title: "Compartimento do OKE"
description: "Compartimento onde o Cluster OKE sera criado."
type: oci:identity:compartment:id
required: true
visible: ${oke_bus_enable}
oke_bus_cluster_name:
title: "Nome do Cluster"
description: "O nome do cluster"
type: string
required: true
visible: ${oke_bus_enable}
dependsOn:
compartmentId: ${oke_bus_cluster_compartment_id}
# Network: VCN
oke_bus_vcn_compartment:
title: "Selecione o compartmento da VCN do OKE"
description: "Compartimento onde se encontra a VCN que sera usada para cria a subnet."
type: oci:identity:compartment:id
required: true
visible: ${oke_bus_enable}
oke_bus_vcn_id:
title: "Select a VCN:"
description: "VCN onde a subnet de banco de dados sera criada."
type: oci:core:vcn:id
visible: ${oke_bus_enable}
required: true
dependsOn:
compartmentId: ${oke_bus_vcn_compartment}
# Network: Subnets
oke_bus_subnet_api_cidr_block:
title: "Subnet CIDR: API Endpoint"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_bus_enable}
oke_bus_subnet_node_cidr_block:
title: "Subnet CIDR: Nodes"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_bus_enable}
oke_bus_subnet_lb_cidr_block:
title: "Subnet CIDR: Loadbalancer"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_bus_enable}
oke_bus_subnet_pods_cidr_block:
title: "Subnet CIDR: Pods"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_bus_enable}
# Nodepool
oke_bus_node_count:
title: "Nodepool: Quantidade de Worker Nodes"
description: "o número de nós que devem estar no pool de nós."
type: string
default: 3
required: true
visible: ${oke_bus_enable}
oke_bus_node_shape:
title: "Nodepool: Shape dos Worker Nodes"
description: "O nome do formato dos nós no conjunto de nós."
type: enum
enum:
- VM.Optimized3.Flex
- VM.Standard.A1.Flex
- VM.Standard.A2.Flex
- VM.Standard.E3.Flex
- VM.Standard.E4.Flex
- VM.Standard.E5.Flex
- VM.Standard.E6.Flex
- VM.Standard3.Flex
default: "VM.Standard.E5.Flex"
required: true
visible: ${oke_bus_enable}
oke_bus_node_memory_gb:
title: "Nodepool: Quantidade de memoria de cada Worker Nodes."
description: "A quantidade total de memória disponível para cada nó, em gigabytes."
type: string
required: true
default: 8
visible: ${oke_bus_enable}
oke_bus_node_ocpus:
title: "Nodepool: Quantidade de oCPU de cada Worker Nodes."
description: "O número total de OCPUs disponíveis para cada nó no pool de nós. Veja aqui para mais detalhes."
type: string
required: true
visible: ${oke_bus_enable}
# Opcoes avancadas:
oke_bus_show_advanced:
title: "Exibir opcoes avancadas"
description: "Exibe opções avançada de configuração."
type: boolean
default: false
visible: ${oke_bus_enable}
oke_bus_create_service_account:
title: "Criar Service Account para CI/CD?"
description: "Cria automaticamente uma SA com permissão de cluster-admin e gera o token."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_api_endpoint_public:
title: "API endpoint Publico"
description: "Permite acesso ao Cluster OKE pela internet."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_enable_psql_access:
title: "PostgeSQL: Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico PostgreSQL."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_enable_redis_access:
title: "Redis: Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico Cache Redis."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_enable_autonomous_json_access:
title: "Autonomous Json (ADJ): Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico Autonomous JSON (ADJ)."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_enable_metric_server:
title: "OKE Addon: Metric Server"
description: "Coleta e agrega métricas de recursos (CPU e memória) de Kubelets em cada nó e as expõe por meio de API."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_enable_cert_manager:
title: "OKE Addon: Cert Manager"
description: "O Cert-manager é um controlador nativo do Kubernetes para gerenciamento de certificados que automatiza a emissão e renovação de certificados X.509."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
oke_bus_enable_autoscaler:
title: "OKE Addon: Cluster Autoscaler"
description: "Ajusta automaticamente o tamanho do cluster Kubernetes, adicionando ou removendo nós de trabalho com base na demanda de recursos."
type: boolean
default: false
visible: ${oke_bus_show_advanced}
#Addon Cluster Autoscaler
oke_bus_autoscaler_min_nodes:
title: "scalerMinNodes"
description: "Número minimo de nós no pools de nós. O dimensionador automático do cluster não diminuirá o cluster abaixo desse número."
type: number
minimum: 1
maximum: 100
default: 1
visible: ${oke_bus_enable_autoscaler}
oke_bus_autoscaler_max_nodes:
title: "scalerMaxNode"
description: "Número máximo de nós no pools de nós. O dimensionador automático do cluster não aumentará o cluster além desse número."
type: number
minimum: 1
maximum: 100
default: 3
visible: ${oke_bus_enable_autoscaler}
oke_bus_autoscaler_down_delay_after_add:
title: "scaleDownDelayAfterAdd"
description: "Quanto tempo depois de aumentar essa escala, a avaliação é retomada. (Default:10m)"
type: string
visible: ${oke_bus_enable_autoscaler}
default: 10m
oke_bus_autoscaler_down_unneeded_time:
title: "scaleDownUnneededTime"
description: "Quanto tempo um nó deve ser desnecessário antes de ser elegível para redução. (Default:10m)"
type: string
default: 10m
visible: ${oke_bus_enable_autoscaler}
oke_bus_autoscaler_down_unready_time:
title: "scaleDownUnreadyTime"
description: "Quanto tempo um nó não pronto deve ser desnecessário antes de ser elegível para redução. (Default:20m)"
type: string
default: 20m
visible: ${oke_bus_enable_autoscaler}
oke_bus_autoscaler_skip_nodes_with_system_pods:
title: "skipNodesWithSystemPods"
description: "Se true, o dimensionador automático do cluster nunca excluirá nós com pods do kube-system (exceto para DaemonSet ou pods de espelho). (Default:true)"
type: boolean
default: true
visible: ${oke_bus_enable_autoscaler}
# --- OKE OBSERVABILIDADE ---
oke_o11y_enable:
title: "Criar: Cluster OKE ?"
description: "Ative para criar uma Cluster OKE."
type: boolean
# Nome
oke_o11y_cluster_compartment_id:
title: "Compartimento do OKE"
description: "Compartimento onde o Cluster OKE sera criado."
type: oci:identity:compartment:id
required: true
visible: ${oke_o11y_enable}
oke_o11y_cluster_name:
title: "Nome do Cluster"
description: "O nome do cluster"
type: string
required: true
visible: ${oke_o11y_enable}
dependsOn:
compartmentId: ${oke_o11y_cluster_compartment_id}
# Network: VCN
oke_o11y_vcn_compartment:
title: "Selecione o compartmento da VCN do OKE"
description: "Compartimento onde se encontra a VCN que sera usada para cria a subnet."
type: oci:identity:compartment:id
required: true
visible: ${oke_o11y_enable}
oke_o11y_vcn_id:
title: "Select a VCN:"
description: "VCN onde a subnet de banco de dados sera criada."
type: oci:core:vcn:id
required: true
visible: ${oke_o11y_enable}
dependsOn:
compartmentId: ${oke_o11y_vcn_compartment}
# Network: Subnets
oke_o11y_subnet_api_cidr_block:
title: "Subnet CIDR: API Endpoint"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_o11y_enable}
oke_o11y_subnet_node_cidr_block:
title: "Subnet CIDR: Nodes"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_o11y_enable}
oke_o11y_subnet_lb_cidr_block:
title: "Subnet CIDR: Loadbalancer"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_o11y_enable}
oke_o11y_subnet_pods_cidr_block:
title: "Subnet CIDR: Pods"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${oke_o11y_enable}
# Nodepool
oke_o11y_node_count:
title: "Nodepool: Quantidade de Worker Nodes"
description: "o número de nós que devem estar no pool de nós."
type: string
default: 3
required: true
visible: ${oke_o11y_enable}
oke_o11y_node_shape:
title: "Nodepool: Shape dos Worker Nodes"
description: "O nome do formato dos nós no conjunto de nós."
type: enum
enum:
- VM.Optimized3.Flex
- VM.Standard.A1.Flex
- VM.Standard.A2.Flex
- VM.Standard.E3.Flex
- VM.Standard.E4.Flex
- VM.Standard.E5.Flex
- VM.Standard.E6.Flex
- VM.Standard3.Flex
default: "VM.Standard.E5.Flex"
required: true
visible: ${oke_o11y_enable}
oke_o11y_node_memory_gb:
title: "Nodepool: Quantidade de memoria de cada Worker Nodes."
description: "A quantidade total de memória disponível para cada nó, em gigabytes."
type: string
required: true
default: 8
visible: ${oke_o11y_enable}
oke_o11y_node_ocpus:
title: "Nodepool: Quantidade de oCPU de cada Worker Nodes."
description: "O número total de OCPUs disponíveis para cada nó no pool de nós. Veja aqui para mais detalhes."
type: string
required: true
visible: ${oke_o11y_enable}
# Opcoes avancadas:
oke_o11y_show_advanced:
title: "Exibir opcoes avancadas"
description: "Exibe opções avançada de configuração."
type: boolean
default: false
visible: ${oke_o11y_enable}
oke_o11y_create_service_account:
title: "Criar Service Account para CI/CD?"
description: "Cria automaticamente uma SA com permissão de cluster-admin e gera o token."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_api_endpoint_public:
title: "API endpoint Publico"
description: "Permite acesso ao Cluster OKE pela internet."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_enable_psql_access:
title: "PostgeSQL: Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico PostgreSQL."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_enable_redis_access:
title: "Redis: Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico Cache Redis."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_enable_autonomous_json_access:
title: "Autonomous Json (ADJ): Pods precisam desse acesso?"
description: "Libera acesso da rede de Pods ao servico Autonomous JSON (ADJ)."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_enable_metric_server:
title: "OKE Addon: Metric Server"
description: "Coleta e agrega métricas de recursos (CPU e memória) de Kubelets em cada nó e as expõe por meio de API."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_enable_cert_manager:
title: "OKE Addon: Cert Manager"
description: "O Cert-manager é um controlador nativo do Kubernetes para gerenciamento de certificados que automatiza a emissão e renovação de certificados X.509."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
oke_o11y_enable_autoscaler:
title: "OKE Addon: Cluster Autoscaler"
description: "Ajusta automaticamente o tamanho do cluster Kubernetes, adicionando ou removendo nós de trabalho com base na demanda de recursos."
type: boolean
default: false
visible: ${oke_o11y_show_advanced}
#Addon Cluster Autoscaler
oke_o11y_autoscaler_min_nodes:
title: "scalerMinNodes"
description: "Número minimo de nós no pools de nós. O dimensionador automático do cluster não diminuirá o cluster abaixo desse número."
type: number
minimum: 1
maximum: 100
default: 1
visible: ${oke_o11y_enable_autoscaler}
oke_o11y_autoscaler_max_nodes:
title: "scalerMaxNode"
description: "Número máximo de nós no pools de nós. O dimensionador automático do cluster não aumentará o cluster além desse número."
type: number
minimum: 1
maximum: 100
default: 3
visible: ${oke_o11y_enable_autoscaler}
oke_o11y_autoscaler_down_delay_after_add:
title: "scaleDownDelayAfterAdd"
description: "Quanto tempo depois de aumentar essa escala, a avaliação é retomada. (Default:10m)"
type: string
default: "10m"
visible: ${oke_o11y_enable_autoscaler}
oke_o11y_autoscaler_down_unneeded_time:
title: "scaleDownUnneededTime"
description: "Quanto tempo um nó deve ser desnecessário antes de ser elegível para redução.(Default:10m)"
type: string
default: "10m"
visible: ${oke_o11y_enable_autoscaler}
oke_o11y_autoscaler_down_unready_time:
title: "scaleDownUnreadyTime"
description: "Quanto tempo um nó não pronto deve ser desnecessário antes de ser elegível para redução. (Default:20m)"
type: string
default: "20m"
visible: ${oke_o11y_enable_autoscaler}
oke_o11y_autoscaler_skip_nodes_with_system_pods:
title: "skipNodesWithSystemPods"
description: "Se true, o dimensionador automático do cluster nunca excluirá nós com pods do kube-system (exceto para DaemonSet ou pods de espelho). (Default:true)"
type: boolean
default: true
visible: ${oke_o11y_enable_autoscaler}
# --- Object Storage - Bucket
bucket_enable:
title: "Criar: OCI Bucket?"
description: "Cria um bucket para armazenamento de arquivos."
type: boolean
bucket_compartment:
title: "Compartimento do Bucket"
description: "Compartimento onde o Bucket sera criado."
type: oci:identity:compartment:id
required: true
visible: ${bucket_enable}
bucket_name:
title: "Nome do Bucket"
description: "O nome do balde. Os caracteres válidos são letras maiúsculas ou minúsculas, números, hífens, sublinhados e pontos."
type: string
required: true
visible: ${bucket_enable}
bucket_access_type:
title: "Nivel de acesso ao bucket"
description: "acesso 'NoPublicAccess', permite que apenas uma chamada autenticada acesse o bucket e seu conteúdo. Quando 'ObjectRead' está habilitado no bucket, o acesso público é permitido para as operações 'GetObject', 'HeadObject' e 'ListObjects'. Quando 'ObjectReadWithoutList' está habilitado no bucket, o acesso público é permitido para as operações 'GetObject' e 'HeadObject'."
type: enum
enum:
- NoPublicAccess
- ObjectRead
- ObjectReadWithoutList
default: "NoPublicAccess"
required: true
visible: ${bucket_enable}
bucket_storage_tier:
title: "Tipo de armazenamento"
description: "O tipo de nível de armazenamento deste bucket."
type: enum
enum:
- Standard
- Archive
default: "Standard"
required: true
visible: ${bucket_enable}
bucket_versioning:
title: "Versionamento de objetos"
description: "Defina o status de versionamento no bucket."
type: enum
enum:
- Enabled
- Disabled
default: "Disabled"
required: true
visible: ${bucket_enable}
# --- VAULT ---
vault_enable:
title: "Criar: OCI Vault?"
description: "Cria um Vault e uma Master Key para gerenciar segredos."
type: boolean
vault_compartment:
title: "Compartimento do Vault"
description: "Compartimento onde o Vault sera criado."
type: oci:identity:compartment:id
required: true
visible: ${vault_enable}
vault_name:
title: "Nome do Vault"
description: "Um nome de exibição amigável para o Vault."
type: string
required: true
visible: ${vault_enable}
# --- POSTGRESQL ---
postgresql_enable:
title: "Criar: PostgreSQL ?"
description: "Ative para criar uma instancia PostgreSQL."
type: boolean
# Nome
postgresql_compartment_id:
title: "Compartimento do DB System"
description: "Compartimento onde o Autonomous JSON sera criado."
type: oci:identity:compartment:id
required: true
visible: ${postgresql_enable}
postgresql_name:
title: "Nome do DB System"
description: "Um nome de exibição amigável para o sistema de banco de dados."
type: string
required: true
visible: ${postgresql_enable}
# Network
postgresql_vcn_compartment:
title: "Selecione o compartment da VCN"
description: "Compartimento onde se encontra a VCN que sera usada para cria a subnet."
type: oci:identity:compartment:id
required: true
visible: ${postgresql_enable}
postgresql_vcn_id:
title: "Selecione a VCN:"
description: "VCN onde a subnet de banco de dados sera criada."
type: oci:core:vcn:id
required: true
visible: ${postgresql_enable}
dependsOn:
compartmentId: ${postgresql_vcn_compartment}
postgresql_subnet_cidr_block:
title: "Subnet CIDR"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${postgresql_enable}
# Dados do DBSystem
postgresql_version:
title: "Versao do PostgreSQL"
description: "Versão do software do sistema de banco de dados"
type: enum
enum:
- 14
- 15
- 16
default: 16
required: true
visible: ${postgresql_enable}
postgresql_instance_count:
title: "Quantidade de instancias"
description: "Número de instâncias de banco de dados (nós) a serem criadas no sistema de banco de dados."
type: number
minimum: 1
maximum: 100
default: 1
required: true
visible: ${postgresql_enable}
postgresql_shape:
title: "Nome do shape"
description: "O nome do 'shape' para o nó da instância do banco de dados."
type: enum
enum:
- PostgreSQL.VM.Standard3.Flex
- PostgreSQL.VM.Standard.E5.Flex
- PostgreSQL.VM.Standard.E6.Flex
default: "PostgreSQL.VM.Standard.E5.Flex"
required: true
visible: ${postgresql_enable}
# --- SEÇÃO DE oCPU ---
postgresql_ocpu_e5:
title: "Quantidade de oCPU: E5.Flex"
description: "Limites para E5.Flex: Mín 1, Máx 64"
type: number
minimum: 1
maximum: 64
default: 1
visible:
and:
- ${postgresql_enable}
- eq:
- ${postgresql_shape}
- "PostgreSQL.VM.Standard.E5.Flex"
postgresql_ocpu_e6:
title: "Quantidade de oCPU: E6.Flex"
description: "Limites para E6.Flex: Mín 1, Máx 126"
type: number
minimum: 1
maximum: 126
default: 1
visible:
and:
- ${postgresql_enable}
- eq:
- ${postgresql_shape}
- "PostgreSQL.VM.Standard.E6.Flex"
postgresql_ocpu_s3:
title: "Quantidade de oCPU: Standard3.Flex"
description: "Limites para Standard3.Flex: Mín 2, Máx 32"
type: number
minimum: 2
maximum: 32
default: 2
visible:
and:
- ${postgresql_enable}
- eq:
- ${postgresql_shape}
- "PostgreSQL.VM.Standard3.Flex"
# --- SEÇÃO DE MEMÓRIA ---
postgresql_memory_amd:
title: "Quantidade de Memória (GB): AMD (E5/E6)"
description: "Limites para AMD (E5/E6): Mín 16GB, Máx 1024GB"
type: number
minimum: 16
maximum: 1024
default: 16
visible:
and:
- ${postgresql_enable}
- or:
- eq:
- ${postgresql_shape}
- "PostgreSQL.VM.Standard.E5.Flex"
- eq:
- ${postgresql_shape}
- "PostgreSQL.VM.Standard.E6.Flex"
postgresql_memory_s3:
title: "Quantidade de Memória (GB): Standard3"
description: "Limites para Intel (Standard3): Mín 32GB, Máx 512GB"
type: number
minimum: 32
maximum: 512
default: 32
visible:
and:
- ${postgresql_enable}
- eq:
- ${postgresql_shape}
- "PostgreSQL.VM.Standard3.Flex"
# --- REDIS ---
redis_enable:
title: "Criar: OCI Cache (Redis) ?"
description: "Ative para criar uma instancia Redis."
type: boolean
# Nome
redis_compartment_id:
title: "Compartimento do Redis"
description: "Compartimento onde o Autonomous JSON sera criado."
type: oci:identity:compartment:id
required: true
visible: ${redis_enable}
redis_name:
title: "Nome do Cluster Redis"
description: "Um nome fácil de usar. Não precisa ser único e pode ser alterado."
type: string
required: true
visible: ${redis_enable}
# Network
redis_vcn_compartment:
title: "Selecione o compartment da VCN"
description: "Compartimento onde se encontra a VCN que sera usada para cria a subnet."
type: oci:identity:compartment:id
required: true
visible: ${redis_enable}
redis_vcn_id:
title: "Selecione a VCN"
description: "VCN onde a subnet de banco de dados sera criada."
type: oci:core:vcn:id
required: true
visible: ${redis_enable}
dependsOn:
compartmentId: ${redis_vcn_compartment}
redis_subnet_cidr_block:
title: "Subnet CIDR"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${redis_enable}
# Cache system
redis_software_version:
title: "Versao do Redis"
description: "A versão do mecanismo de cache do Oracle Cloud Infrastructure que o cluster está executando."
type: enum
enum:
- REDIS_7_0
- VALKEY_7_2
default: "VALKEY_7_2"
required: true
visible: ${redis_enable}
redis_count_node:
title: "Quantidade de nodes"
description: "Quantidade de nodes associada ao cluster."
type: number
minimum: 1
maximum: 100
default: 1
required: true
visible: ${redis_enable}
redis_node_memory_in_gbs:
title: "Quantidade de Memoria"
description: "A quantidade de memória alocada aos nós do cluster, em gigabytes."
type: number
minimum: 1
maximum: 100
default: 16
required: true
visible: ${redis_enable}
# --- Autonomous JSON ---
autonomous_json_enable:
title: "Criar: Autonomous Database JSON (ADJ) ?"
description: "Ative para criar uma instancia Autonomous Database JSON (ADJ)."
type: boolean
# Nome
autonomous_json_compartment_id:
title: "Compartimento do Autonomous JSON"
description: "Compartimento onde o Autonomous JSON sera criado."
type: oci:identity:compartment:id
required: true
visible: ${autonomous_json_enable}
autonomous_json_name:
title: "Nome do Autonomous JSON"
description: "Um nome fácil de usar para a conexão."
type: string
visible: ${autonomous_json_enable}
# Network
autonomous_json_vcn_compartment:
title: "Selecione o compartment da VCN"
description: "Compartimento onde se encontra a VCN que sera usada para cria a subnet."
type: oci:identity:compartment:id
required: true
visible: ${autonomous_json_enable}
autonomous_json_vcn_id:
title: "Selecione a VCN:"
description: "VCN onde a subnet de banco de dados sera criada."
type: oci:core:vcn:id
required: true
visible: ${autonomous_json_enable}
dependsOn:
compartmentId: ${redis_vcn_compartment}
autonomous_json_subnet_cidr_block:
title: "Subnet CIDR"
description: "Endereco de rede (CIDR) deve seguir o padrão x.x.x.x/y (Ex: 10.0.0.0/16)"
type: string
required: true
pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(1[0-9]|2[0-9]|3[0-2]|[0-9]))$"
visible: ${autonomous_json_enable}
# DB System
autonomous_json_compute_model:
title: "Modelo de computação"
description: "O modelo de computação do Banco de Dados de IA Autônoma. O modelo de computação ECPU é o recomendado, enquanto o modelo OCPU é legado."
type: enum
enum:
- ECPU
- OCPU
default: "ECPU"
required: true
visible: ${autonomous_json_enable}
autonomous_json_compute_count:
title: "Quantidade de CPUs"
description: "A quantidade de poder computacional (CPUs) disponível para o banco de dados."
type: number
minimum: 2
maximum: 100
default: 2
required: true
visible: ${autonomous_json_enable}
autonomous_json_is_auto_scaling_enabled:
title: "CPU Auto Scaling"
description: "Indica se o dimensionamento automático está ativado para a quantidade de núcleos da CPU do Banco de Dados de IA Autônoma."
type: boolean
default: true
required: true
visible: ${autonomous_json_enable}
autonomous_json_data_storage_size_in_tbs:
title: "Quantidade de armazenamento em uso para dados de usuários e sistemas, em terabytes (TB)."
description: ""
type: number
minimum: 1
maximum: 100
required: true
visible: ${autonomous_json_enable}