Empacote sua aplicação PHP em um arquivo ZIP que atenda aos requisitos do Serverless App Engine (SAE) e implante o pacote no SAE como uma aplicação.
Pré-requisitos
Pacote de código PHP — Empacote a aplicação em um arquivo ZIP conforme as PHP code package specifications.
Ambiente PHP — Identifique o PHP environment compatível com seu código.
Recursos de rede — (Opcional) Para implantar a aplicação em um namespace existente, crie previamente o namespace, o vSwitch e o security group.
Edições da aplicação
A Lightweight Edition e a Professional Edition estão atualmente em fase beta apenas por convite. Para usuários fora do teste beta, o sistema cria as aplicações como Standard Edition por padrão.
A tabela a seguir descreve os recursos incluídos em cada edição.
|
Edição |
Recursos incluídos |
|
Lightweight Edition |
Fornece o conjunto mínimo de recursos necessários para executar uma aplicação. Não oferece suporte aos recursos Application Monitoring e Microservices Governance. |
|
Standard Edition |
Inclui o recurso Basic Application Monitoring. Os recursos Advanced Application Monitoring e Microservices Governance exigem ativação e compra separadas. |
|
Professional Edition |
Inclui os recursos Advanced Application Monitoring e Microservices Governance, sem necessidade de ativação ou compra separada. |
O Microservices Governance destina-se a aplicações Java. Como as edições diferem apenas nos recursos listados na tabela anterior, considere principalmente o monitoramento de aplicações ao escolher uma edição para PHP. Para obter detalhes sobre os dados de monitoramento e os recursos de governança de cada edição, consulte a seção "Configurações avançadas" deste tópico.
Criar a aplicação
Na página SAE Application List, selecione a região e o namespace desejados na barra de navegação superior e clique em Create Application.
Selecione uma edição da aplicação. Para comparar as edições, consulte a seção "Edições da aplicação" deste tópico.
Na página Create Application, insira um Application Name personalizado.
-
Escolha o tipo de namespace da aplicação. O namespace equivale a um namespace do Kubernetes e isola recursos em diferentes ambientes.
ImportanteNão é possível alterar o namespace de uma aplicação após a criação. Confirme o namespace da aplicação antes de criá-la.
System Created — Utiliza o namespace, vSwitch e grupo de segurança padrão criados pelo sistema na região atual. Escolha esta opção quando a aplicação não precisar reutilizar recursos de rede existentes.
Existing Namespace — Selecione o namespace, vSwitch e grupo de segurança criados previamente. Use esta opção quando a aplicação precisar executar em recursos de rede preparados por você.
Defina o Application Deployment Method como Code Package-based Deployment e clique em Configure Code Package-based Deployment à direita.
Em Technology Stack Programming Language, selecione PHP e escolha o ambiente PHP compatível com seu código.
Configure os parâmetros do pacote de código e clique em OK. A seção "Parâmetros do pacote ZIP PHP" deste tópico descreve esses parâmetros.
Na seção Capacity Settings, defina o Resource Type, o Single Instance Type e as Instances.
(Opcional) Clique em Next: Advanced Settings para configurar os recursos desejados. A seção "Configurações avançadas" deste tópico descreve os recursos disponíveis.
Clique em Create Application with One Click ou Create Application.
Parâmetros do pacote ZIP PHP
A tabela a seguir descreve os parâmetros configuráveis para um pacote ZIP PHP.
|
Parâmetro |
Descrição |
|
Upload Method |
Faça upload de um pacote de código local ou insira a URL do pacote de código. |
|
Version |
Insira um número de versão da aplicação ou selecione Use Timestamp as Version Number. |
|
Time Zone Settings |
Selecione o fuso horário de execução da aplicação. |
|
Startup Command |
Se o empacotamento do código seguiu as especificações de pacote de código PHP, não configure um comando de inicialização. |
|
Custom Runtime Environment Settings |
(Opcional) Quando ativado, permite pré-instalar ferramentas, baixar ou modificar arquivos e instalar dependências ou extensões de runtime para a aplicação conforme necessário. |
|
Custom php.ini [TODO: confirme UI term] |
(Opcional) Ao ativar, insira o conteúdo do arquivo de configuração php.ini. O SAE inicia a aplicação com essa configuração. |
Personalizar o ambiente de runtime
Ao ativar o Custom Runtime Environment Settings, configure os seguintes itens:
PHP Extension.
PHP PECL Extension.
-
Personalizar o ambiente de runtime via linha de comando. Exemplo de script:
#!/bin/bash docker-php-ext-configure gd \ --with-gd \ --with-webp-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib-dir \ --with-xpm-dir \ --with-freetype-dir \ && docker-php-ext-install -j$(nproc) gd
Personalizar a configuração do php.ini
No campo php.ini Mount Path, defina o caminho de montagem do arquivo de configuração, por exemplo, /usr/local/etc/php/php.ini.
Após implantar a aplicação, execute o seguinte comando no Webshell para verificar se o arquivo de configuração foi montado corretamente:
php -i | grep ini
# Example output: Loaded Configuration File => /usr/local/etc/php/php.ini
Configurações avançadas
Nas Advanced Settings, configure os seguintes recursos opcionais para a aplicação.
Os recursos abaixo dependem de services que geram cobranças adicionais: centro de registro e descoberta de services MSE, NLB, CLB, rotas de gateway, NAT Gateway, endereços IP elásticos (EIPs), NAS, OSS, bancos de dados, Simple Log Service e Kafka.
Ambiente de runtime e ciclo de vida
Configuração de runtime — Altere variáveis ou arquivos de configuração no ambiente de runtime após a implantação, sem reconstruir a imagem, por meio de setting environment variables, setting hosts bindings, injecting configuration information e injecting confidential information.
Verificações de integridade — Configure set a health check para monitorar se as instâncias da aplicação funcionam normalmente e estão prontas para receber tráfego. O sistema reinicia automaticamente instâncias não saudáveis e só roteia tráfego para uma instância quando ela estiver pronta.
Gerenciamento de ciclo de vida — Use o application lifecycle management para personalizar os comandos executados após a inicialização e antes da parada da aplicação, além de implementar o encerramento gracioso.
Acesso à rede e invocação de services
Invocação de services — Habilite a comunicação entre aplicações com o service registration and discovery.
Acesso externo — Permita acesso externo à aplicação vinculando um binding an NLB, um binding a CLB ou configuring a gateway route.
Acesso de saída — Autorize a aplicação a acessar recursos ou services externos configurando um configuring a NAT Gateway ou binding an EIP to an application instance.
Persistência de dados
Armazene os dados da aplicação no NAS, no OSS ou em um database para evitar perda de dados durante alterações ou interrupções da aplicação.
Logs e monitoramento
Logs e métricas — Após implantar a aplicação, visualize view real-time logs e view resource usage and load sem configurações adicionais. Também é possível enviar logs para o Simple Log Service ou Kafka para gerenciamento e análise centralizados.
-
Monitoramento de aplicações — O ARMS auxilia no rastreamento da integridade da aplicação, identificação rápida de APIs lentas ou com falhas, detecção de gargalos de desempenho e reprodução de parâmetros de chamada, aumentando a eficiência na resolução de problemas em produção.
Para aplicações da Standard Edition, visualize view ARMS Basic Edition monitoring data após a implantação sem configurações extras. Você também pode ativar e adquirir o ARMS Premium Edition monitoring.
Para aplicações da Professional Edition, ao ativar o Application Monitoring nas Advanced Settings e implantar a aplicação, visualize os dados de monitoramento do ARMS Premium Edition sem custos adicionais.
Outros recursos
-
Microservices Governance — O Microservices Governance oferece Graceful Start and Shutdown, traffic protection, end-to-end canary release e Intra-zone Provider First para aplicações Java. Considere esse escopo antes de ativar o recurso para uma aplicação PHP.
Para aplicações da Standard Edition, acesse a página de detalhes da aplicação após a implantação para ativar e adquirir o recurso Microservices Governance do MSE.
Para aplicações da Professional Edition, após ativar o Microservices Governance nas Advanced Settings, configure o Graceful Start and Shutdown. Para acessar mais recursos, vá até a página de detalhes da aplicação depois da implantação. Não há cobrança adicional.
CPU Burst — Ative o enable the CPU Burst feature para evitar desperdício de recursos quando a demanda de CPU na inicialização for maior do que durante a operação normal.
Contêineres sidecar — Desacople e padronize recursos não relacionados ao negócio do contêiner principal adicionando um adding a sidecar container.
Verificar a implantação
A criação da aplicação leva cerca de 1 a 2 minutos. Valide o resultado da seguinte forma:
A aplicação aparece na página Application List.
Consulte os view change records para confirmar o sucesso da implantação.
Tratar uma implantação com falha
Se a implantação falhar, o sistema não cria nenhuma instância da aplicação. Solucione o problema com base na mensagem de erro exibida em Change Details.
Próximos passos
Alterar a configuração da aplicação — Na página Application List, clique na aplicação desejada para acessar sua página de detalhes. Em seguida, clique em Deploy Application ou Modify Application Configurations na parte superior. A aplicação reinicia automaticamente para aplicar a nova configuração; portanto, realize essa operação fora dos horários de pico.
Fazer login em uma instância — Acesse uma log on to an application instance by using Webshell e interaja com a instância usando comandos do console.
Dimensionar a aplicação e reduzir custos — Ajuste manualmente o manually adjust the number of instances e a instance specification, ou ajuste automaticamente o número de instâncias configurando uma configuring an auto scaling policy. Reduza custos ativando o enabling idle mode.