Como rodar scripts nos edge nodes
Para conseguir orquestrar serviços em seu dispositivo, é necessário configurar todos os recursos necessários para instalar, desinstalar e recarregar seus serviços.
Este guia apresenta como instalar a Azion CLI em seus edge nodes por meio de um recurso do tipo Shell Script
configurado em um edge service específico.
Pré-requisitos
- Um edge node com o Edge Orchestrator Agent instalado e autorizado.
- O gerenciador de pacotes Dpkg instalado neste edge node.
Crie um edge service
- Acesse o Azion Console.
- No canto superior esquerdo da página, abra o Products menu, representado por três linhas horizontais, e em seguida selecione Edge Services.
- Clique no botão + Service.
- Nomeie este serviço como
Instalação Azion CLI
. - Insira as varáveis e valores para o recurso, se necessário.
- Defina o status como Active.
- Clique no botão Save.
- Acesse o Real-Time Manager (RTM).
- No canto superior esquerdo da página, abra o Products menu, representado por três linhas horizontais, e em seguida selecione Edge Services.
- Clique no botão Add Service.
- Nomeie este serviço como
Instalação Azion CLI
. - Volte e, na lista de serviços, defina o status do serviço recém-criado como Active.
- Execute a seguinte requisição
POST
no seu terminal, substituindo[TOKEN VALUE]
pelo seu personal token e informando o nome do serviço a ser criado:
- Guarde o ID do edge service que você acabou de criar. Você pode acessá-lo no corpo da resposta, por exemplo:
- Execute a seguinte requisição
PATCH
no seu terminal para definir o serviço como ativo, substituindo[TOKEN VALUE]
pelo seu personal token e:id
pelo ID do edge service:
Crie um recurso
- Dentro do serviço que você acabou de criar, chamado
Instalação Azion CLI
vá para a aba Resources. - Clique em + Resource.
- Insira
/scripts/install-cli
no campo Filepath. - Escolha o tipo Shell Script.
- Escolha o trigger Install.
- Adicione o seguinte conteúdo ao bloco Content:
#!/bin/bash # Define a URL do binário para download
BINARY_URL="https://github.com/aziontech/azion/releases/download/1.10.2/azion_1.10.2_linux_arm64.deb" # Baixa o binário
wget $BINARY_URL -O /tmp/azion.deb # Instala o binário
# Isso pressupõe que você tem o dpkg instalado no seu sistema
sudo dpkg -i /tmp/azion.deb # Limpa o binário baixado
rm /tmp/azion.deb echo "Instalação concluída com sucesso"
- Clique no botão Save.
Este script instalará o binário azion
no seguinte caminho: /usr/local/bin
- Na lista de serviços, selecione o edge service que você acabou de criar, chamado
Instalação Azion CLI
. - Vá para a aba Resources e clique em Add Resource.
- Insira
/scripts/install-cli
no campo do caminho do arquivo. - Escolha o tipo Shell Script.
- Escolha o trigger Install.
- Adicione o seguinte conteúdo ao bloco Content:
#!/bin/bash # Define a URL do binário para download
BINARY_URL="https://github.com/aziontech/azion/releases/download/1.10.2/azion_1.10.2_linux_arm64.deb" # Baixa o binário
wget $BINARY_URL -O /tmp/azion.deb # Instala o binário
# Isso pressupõe que você tem o dpkg instalado no seu sistema
sudo dpkg -i /tmp/azion.deb # Limpa o binário baixado
rm /tmp/azion.deb echo "Instalação concluída com sucesso"
- Clique no botão Save.
Este script instalará o binário azion
no seguinte caminho: /usr/local/bin
- Execute a seguinte requisição
POST
no seu terminal:
curl --location 'https://api.azionapi.net/edge_services/:id/resources' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [TOKEN VALUE]' \
--header 'Content-Type: application/json' \
--data '{ "content_type": "Shell Script", "name": "/scripts/install-cli/", "content": "#!/bin/bash\n\n# Define a URL do binário para download\nBINARY_URL=\"https://github.com/aziontech/azion/releases/download/1.10.2/azion_1.10.2_linux_arm64.deb\"\n\n# Baixa o binário\nwget $BINARY_URL -O /tmp/azion.deb\n\n# Instala o binário\n# Isso pressupõe que você tem o dpkg instalado no seu sistema\nsudo dpkg -i /tmp/azion.deb\n\n# Limpa o binário baixado\nrm /tmp/azion.deb\n\necho \"Instalação concluída com sucesso\""
}'
Substitua [TOKEN VALUE] pelo seu personal token, :id
pelo ID do edge service e informe os seguintes parâmetros no corpo da requisição:
Propriedade | Descrição | Obrigatório |
---|---|---|
content_type | Tipo de conteúdo do recurso a ser criado | Sim |
name | Nome do recurso a ser criado | Sim |
content | Conteúdo que define as ações realizadas quando o estado do recurso muda no edge node | Sim |
Vincule um edge service a um edge node
- No canto superior esquerdo da página, abra o Products menu, representado por três linhas horizontais, e em seguida selecione Edge Services.
- Selecione o edge node ao qual você deseja vincular um serviço.
- Vá para a guia Services e clique no botão + Service.
- Escolha o serviço
Instalação Azion CLI
que você criou. - Clique no botão Save.
- No canto superior esquerdo da página, abra o Products menu, representado por três linhas horizontais, e em seguida selecione Edge Services.
- Selecione o edge node ao qual você deseja vincular um serviço.
- Vá para a guia Services e clique no botão Add Service.
- Escolha o serviço
Instalação Azion CLI
que você criou. - Clique no botão Save.
- Execute a seguinte requisição
GET
no seu terminal, substituindo[TOKEN VALUE]
pelo seu personal token e recupere o ID do edge node ao qual deseja vincular a um edge service:
curl --location 'https://api.azionapi.net/edge_nodes/' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [TOKEN VALUE]'
- Execute a seguinte requisição
POST
no seu terminal:
curl --location 'https://api.azionapi.net/edge_nodes/:id/services' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [TOKEN VALUE]' \
--header 'Content-Type: application/json' \
--data '{ "service_id": :id, "variables": [ { "name": "string", "value": "string" } ]
}'
Substitua [TOKEN VALUE] pelo seu personal token, :id
pelo ID do edge node e informe os seguintes parâmetros no corpo da requisição:
Propriedade | Descrição | Obrigatório |
---|---|---|
service_id | ID do edge service a ser vinculado ao edge node | Sim |
variables | Variáveis a serem substituídas durante o processamento no edge node | Não |
Acesse a Azion CLI
Após este processo, em seu edge node, acesse a pasta:
E execute:
A saída será semelhante a: