- Visão geral do Jelina
- JelinaOS
- Gerenciamento de aplicações
Aplicações nativas e conjuntos de programas
As instalações industriais utilizam muitos programas tradicionais: scripts de aquisição, daemons de conversão de protocolos e binários de terceiros. Antes, eles dependiam de inicialização manual, operavam isoladamente e podiam falhar sem aviso. O JelinaOS os integra ao conjunto de programas (ProgramSet), um sistema declarativo unificado que oferece gestão por configuração, recuperação automática e inicialização com o sistema.
O que é um conjunto de programas
Seção intitulada “O que é um conjunto de programas”Um conjunto de programas reúne aplicações fora de contêineres, cada uma descrita por configuração declarativa:
- Inicialização: comando, diretório de trabalho e identidade de execução.
- Origem do programa: download do pacote pelo endereço definido no Release.
- Política de execução: política de reinício, variáveis de ambiente e sinal de parada.
- Dependências: ordem de inicialização, exclusão mútua e dependências obrigatórias ou opcionais.
- Supervisão: limites de reinício, manutenção do estado após a saída e comandos anteriores e posteriores à execução.
Após a configuração, o sistema gerencia as aplicações de forma unificada, sem necessidade de criar scripts de inicialização manualmente.
Onde configurar
Seção intitulada “Onde configurar”Configure o conjunto de programas na nuvem ou pela interface de gestão local. O agente do dispositivo executa a configuração:
| Interface | Cenário | Descrição |
|---|---|---|
| Release na nuvem — recomendado | Dispositivo conectado ao JelinaCloud | Declare o conjunto de programas ao criar o Release e distribua-o em lote aos dispositivos |
| Interface de gestão local | Ambiente local ou isolado | Envie a configuração de destino pela interface local do dispositivo |
Início rápido
Seção intitulada “Início rápido”Exemplo de declaração de um conjunto de programas em um Release na nuvem, com distribuição do pacote por endereço de download:
programs: collector: uri: http://files.example.com/collector/collector.tar.gz # Endereço de download do pacote do programa command: collector --config /data/collector.conf running: true restart: always environment: SITE_ID: plant-01 working_directory: /opt/collector user: rootcommand: comando de inicialização, obrigatório.running: define se o programa deve executar; padrãotrue.restart: política de reinício;alwaysreinicia automaticamente após uma saída anormal.environment: variáveis de ambiente.working_directory: diretório de trabalho.
Configurações comuns
Seção intitulada “Configurações comuns”| Configuração | Descrição |
|---|---|
uri |
Endereço de download do pacote do programa |
command |
Comando de inicialização, obrigatório |
running |
Executar ou não; padrão true |
restart |
Política de reinício: no, on-failure, always etc. |
environment |
Variáveis de ambiente |
working_directory |
Diretório de trabalho |
user / group |
Identidade de execução |
after / before, wants / requires, conflicts |
Dependências e ordem |
start_limit_*, remain_after_exit, exec_start_* etc. |
Comportamento de supervisão e recuperação |
Consulte todos os campos em compatibilidade e extensões do docker-compose.
Configuração avançada: inicialização automática e verificação de condições
Seção intitulada “Configuração avançada: inicialização automática e verificação de condições”programs: myapp: command: run.sh restart: always Install: WantedBy: multi-user.target # Inicialização automática com o sistema Unit: ConditionPathExists: /data/app/config.json # Verificação de condição: inicia somente se o arquivo de configuração existirOperações de gestão
Seção intitulada “Operações de gestão”As aplicações do conjunto de programas são gerenciadas pelo agente e executadas como serviços do sistema. Seus nomes seguem as regras de nomenclatura do sistema; consulte os nomes reais com os comandos de estado do dispositivo antes de operar:
systemctl status <nome_do_serviço_do_conjunto> # Consulta o estado; use o nome de serviço exibido no dispositivosystemctl restart <nome_do_serviço_do_conjunto> # Reiniciasystemctl stop <nome_do_serviço_do_conjunto> # ParaCenários de uso
Seção intitulada “Cenários de uso”- Programas industriais tradicionais: gestão moderna de programas de aquisição, controle e daemons de comunicação.
- Scripts e cadeias de ferramentas: inclusão de scripts temporários na gestão formal, com recuperação automática.
- Arquiteturas híbridas: integração com aplicações em contêineres no mesmo sistema de orquestração.
Escolher entre aplicação nativa e contêiner
Seção intitulada “Escolher entre aplicação nativa e contêiner”| Cenário | Recomendação |
|---|---|
| Acesso direto ao hardware e requisitos elevados de tempo real | Aplicação nativa (conjunto de programas) |
| Programas legados existentes e sensibilidade ao custo de migração | Aplicação nativa (conjunto de programas) |
| Várias linguagens e dependências, com necessidade de isolamento do ambiente | Aplicação em contêiner |
| Arquitetura moderna de microsserviços e evolução rápida | Aplicação em contêiner |