Pular para o conteúdo principal

Referência de Configuração

Visão Geral

Este documento fornece uma referência abrangente para configurar implantações do OmniCore através de arquivos de hosts. A configuração é definida principalmente em arquivos de inventário de hosts, com mínimas substituições de group_vars necessárias para implantações modernas.

Para documentação específica do produto, veja:

Abordagem de Configuração

Implantações modernas do OmniCore utilizam um modelo de configuração simplificado:

Princípio Chave: A maior parte da configuração é definida diretamente no arquivo de hosts. Os padrões de função lidam com a maioria das configurações, com group_vars usados apenas para personalizações específicas.

Planejamento de Rede

Antes de configurar os hosts, revise o Padrão de Planejamento de IP para orientações sobre:

  • Estratégias de segmentação de rede
  • Alocação de endereços IP
  • Organização de sub-redes
  • Tratamento de IPs públicos

Parâmetros Comuns de Host

#ToDo - Apenas diga para verificar hosts-file-configuration.md para isso

Flags Específicas de Serviço

cdrs_enabled: True               # Habilitar geração de CDR
in_pool: False # Excluir do pool de balanceamento de carga
online_charging_enabled: False # Habilitar integração OCS
recording: True # Habilitar gravação de chamadas (AS)
populate_crm: False # Preencher CRM com dados iniciais

Variáveis Globais (all:vars)

A seção all:vars contém configurações em todo o ambiente de implantação. Implantações modernas usam variáveis globais mínimas, com a maior parte da configuração nos padrões de função.

Variáveis Globais Essenciais

Autenticação e Acesso

ansible_connection: ssh
ansible_user: root
ansible_password: password
ansible_become_password: password

Alternativa: Use chaves SSH em vez de senhas:

ansible_ssh_private_key_file: '/path/to/key.pem'

Identidade do Cliente

customer_name_short: omnitouch
customer_legal_name: "YKTN Lab"
site_name: YKTN
region: AU
TZ: Australia/Melbourne

Configuração PLMN

plmn_id:
mcc: '001' # Código do País Móvel (3 dígitos)
mnc: '01' # Código da Rede Móvel (2-3 dígitos)
mnc_longform: '001' # MNC com zeros à esquerda (sempre 3 dígitos)

diameter_realm: epc.mnc{{ plmn_id.mnc_longform }}.mcc{{ plmn_id.mcc }}.3gppnetwork.org

Propósito: Identifica exclusivamente sua rede móvel. Usado para a construção do domínio Diameter.

Nomes de Rede

network_name_short: Omni
network_name_long: Omnitouch
tac_list: [10100,100] # Lista TAC padrão (pode ser substituída por MME)

Exibido: Nomes de rede mostrados em dispositivos UE em Configurações > Rede Móvel.

Configuração de DNS

netplan_DNS: False               # Usar systemd-resolved em vez de DNS do netplan
manage_resolv_conf: True # Defina como False para impedir que o Ansible gerencie /etc/resolv.conf

Nota: Quando manage_resolv_conf está definido como False, o Ansible não sobrescreverá /etc/resolv.conf nesse host. Isso é útil para hosts que requerem configuração de DNS personalizada ou são gerenciados por sistemas externos. Pode ser definido por host no inventário ou globalmente em all:vars.

Configuração do Repositório APT

Padrões Automáticos: Quando um grupo apt_cache_servers é definido com hosts:

  • use_apt_cache automaticamente é definido como True (a menos que explicitamente definido como False)
  • apt_repo.apt_server automaticamente é definido como o IP do primeiro servidor de cache
# Configuração manual (opcional se o grupo apt_cache_servers existir)
use_apt_cache: True # Usar cache APT local em vez de acesso direto ao repositório

apt_repo:
apt_server: "10.10.1.114" # Servidor de cache APT ou servidor de repositório
# Credenciais só são necessárias quando use_apt_cache: False
# apt_repo_username: "omni"
# apt_repo_password: "omni"

# Configuração de downloads binários e sincronização de cache
# Usado para: (1) baixar binários de /releases/ quando use_apt_cache: false
# (2) sincronização do servidor de cache a partir do Omnitouch quando use_apt_cache: true
remote_apt_server: "apt.omnitouch.com.au"
remote_apt_user: "omni"
remote_apt_password: "omni"

Veja: Sistema de Cache APT

Servidor de Licença

license_server_api_urls: ["https://10.10.2.150:8443/api"]
license_enforced: true

Veja: Servidor de Licença

Configurações MME

mme_dns: False                   # Habilitar resolução de DNS MME

Configurações SAEGW

mtu: 1400                        # Unidade Máxima de Transmissão

Configurações IMS

ims_dra_support: False           # Roteia IMS através do DRA
enable_homer: False # Habilitar captura SIP do Homer

Configuração do Monitor RAN

use_nokia_monitor: True
use_casa_monitor: True
install_influxdb: True

influxdb_user: monitor
influxdb_password: "secure-password"
influxdb_organisation_name: omnitouch
influxdb_nokia_bucket_name: nokia-monitor
influxdb_casa_bucket_name: casa-monitor
influxdb_operator_token: "generated-token"
influxdb_url: http://127.0.0.1:8086

enable_pm_collection: False
enable_alarm_collection: False
enable_location_collection: False
enable_ran_status_collection: True
enable_nokia_rectifier_collection: False
collection_interval_in_seconds: 120

ran_monitor:
sql:
user: ran_monitor
password: "secure-password"
database_host: 127.0.0.1
database_name: ran_monitor
influxdb:
address: 10.10.2.135
port: 8086
nokia:
airscales:
- address: 10.7.15.66
name: site-Lab-Airscale
port: 8080
web_password: nemuuser
web_username: Nemuadmin

Configuração de Firewall

firewall:
allowed_ssh_subnets:
- '10.0.1.0/24'
- '10.0.0.0/24'
allowed_ue_voice_subnets:
- '10.0.1.0/24'
allowed_carrier_voice_subnets:
- '10.0.1.0/24'
allowed_signaling_subnets:
- '10.0.1.0/24'

Servidores DNS de Roaming

roaming_dns_servers:
wildcard: ['10.0.99.1']
# DNS específico do operador (baseado em PLMN)
123456: # Exemplo Operador 1
- '10.10.2.197'
654321: # Exemplo Operador 2
- '10.10.0.4'

Usuários Locais (Chaves SSH)

local_users:
usera:
name: Exemplo Usuário A
public_key: "ssh-rsa AAAAB3Nza..."
userb:
name: Exemplo Usuário B
public_key: "ssh-ed25519 AAAAC3..."

Configuração do Hypervisor

Proxmox

proxmoxServers:
customer-prxmx01:
proxmoxServerAddress: 10.10.0.100
proxmoxServerPort: 8006
proxmoxRootPassword: password
proxmoxApiTokenName: AnsibleToken
proxmoxApiTokenSecret: "token-secret"
proxmoxTemplateName: ubuntu-24.04-cloud-init-template
proxmoxTemplateId: 9000
proxmoxNodeName: pve01

# Configurações padrão do Proxmox
proxmoxServerAddress: 10.10.0.100
proxmoxServerPort: 8006
proxmoxNodeName: 'pve01'
proxmoxLxcOsTemplate: 'local:vztmpl/ubuntu-24.04-standard_24.04-2_amd64.tar.zst'
proxmoxApiTokenName: DocsTest
proxmoxLxcCores: 8
proxmoxLxcDiskSizeGb: 20
proxmoxLxcMemoryMb: 64000
proxmoxLxcRootFsStorageName: SSD_RAID0
proxmoxLxcBridgeName: vmbr0
proxmoxTemplateName: "ubuntu-24.04-cloud-init-template"
proxmoxStorage: SSD_RAID0
vLabNetmask: 24
PROXMOX_API_TOKEN: "token-secret"
vlabRootPassword: password
vLabPublicKey: "ssh-rsa AAAAB3..."
mask_cidr: 24

VMware vCenter

vcenter_ip: "vcenter.example.com"
vcenter_username: "administrator@vsphere.local"
vcenter_password: "password"
vcenter_datacenter: "DC1"
vcenter_vm_template: ubuntu-24.04-model
vcenter_vm_disk_size: 50
vcenter_folder: "Omnicore"
host_vm_network: "Management"

vhosts:
"10.0.0.23":
vcenter_cluster_ip: 10.0.0.23
vcenter_datastore: "datastore1 (3)"

netmask: 255.255.255.0

Documentação Relacionada

Documentação do Produto

Para guias operacionais detalhados e configuração avançada: