As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Implemente o Hub SDK com systemd
Importante
Siga o readme.md
no hubSystemdSetup
diretório do arquivo release.tgz para obter as atualizações mais recentes.
Esta seção descreve os scripts e processos para implantar e configurar serviços em um dispositivo hub baseado em Linux.
Visão geral
O processo de implantação consiste em dois scripts principais:
-
copy_to_hub.sh
: é executado na máquina host para copiar os arquivos necessários para o hub -
setup_hub.sh
: é executado no hub para configurar o ambiente e implantar serviços
Além disso, systemd/deploy_iotshd_services_on_hub.sh
gerencia a sequência de inicialização do processo e o gerenciamento de permissões do processo e é acionado automaticamente pelosetup_hub.sh
.
Pré-requisitos
Os pré-requisitos listados são necessários para uma implantação bem-sucedida.
o serviço systemd está disponível no hub
Acesso SSH ao dispositivo hub
Privilégios de Sudo no dispositivo hub
scp
utilitário instalado na máquina hostsed
utilitário instalado na máquina hostutilitário de descompactação instalado na máquina host
Estrutura do arquivo
A estrutura de arquivos foi projetada para facilitar a organização e o gerenciamento de seus diversos componentes, permitindo o acesso e a navegação eficientes do conteúdo.
hubSystemdSetup/ ├── README.md ├── copy_to_hub.sh ├── setup_hub.sh ├── iotshd_config.json # Sample configuration file ├── local_certs/ # Directory for DHA certificates └── systemd/ ├── *.service.template # Systemd service templates └── deploy_iotshd_services_on_hub.sh
No arquivo tgz da versão do SDK, a estrutura geral do arquivo é:
IoT-managed-integrations-Hub-SDK-aarch64-v1.0.0.tgz ├──package/ ├──greengrass/ ├──artifacts/ ├──recipes/ ├──hubSystemdSetup/ ├── REAME.md ├── copy_to_hub.sh ├── setup_hub.sh ├── iotshd_config.json # Sample configuration file ├── local_certs/ # Directory for DHA certificates └── systemd/ ├── *.service.template # Systemd service templates └── deploy_iotshd_services_on_hub.sh
Configuração inicial do
Extraia o pacote SDK
tar -xzf managed-integrations-Hub-SDK-vVersion
-linux-aarch64-timestamp
.tgz
Navegue até o diretório extraído e prepare o pacote:
# Create package.zip containing required artifacts zip -r package.zip package/greengrass/artifacts # Move package.zip to the hubSystemdSetup directory mv package.zip ../hubSystemdSetup/
Adicionar arquivos de configuração do dispositivo
Siga as duas etapas listadas para criar os arquivos de configuração do dispositivo e copiá-los para o hub.
-
Adicione arquivos de configuração do dispositivo para criar os arquivos de configuração do dispositivo necessários. O SDK usa esse arquivo para sua função.
-
Copie os arquivos de configuração para copiar os arquivos de configuração criados para o hub.
Copiar arquivos para o hub
Execute o script de implantação em sua máquina host:
chmod +x copy_to_hub.sh ./copy_to_hub.shhub_ip_address
package_file
exemplo Exemplo
./copy_to_hub.sh 192.168.50.223 ~/Downloads/EAR3-package.zip
Isso copia:
O arquivo do pacote (renomeado para package.zip no hub)
Arquivos de configuração
Certificados
Arquivos de serviço Systemd
Configurar hub
Depois que os arquivos forem copiados, faça o SSH no hub e execute o script de configuração:
ssh hub@hub_ip
chmod +x setup_hub.sh
sudo ./setup_hub.sh
Configurações de usuários e grupos
Por padrão, usamos o hub do usuário e o hub do grupo para os componentes do SDK. Há várias maneiras de configurá-las:
-
Use um usuário/grupo personalizado:
sudo ./setup_hub.sh --user=
USERNAME
--group=GROUPNAME
-
Crie-os manualmente antes de executar o script de configuração:
sudo groupadd -f
GROUPNAME
sudo useradd -r -gGROUPNAME
USERNAME
-
Adicione os comandos em
setup_hub.sh
.
Gerenciar serviços da
Para reiniciar todos os serviços, execute o seguinte script no hub:
sudo /usr/local/bin/deploy_iotshd_services_on_hub.sh
O script de configuração criará os diretórios necessários, definirá as permissões apropriadas e implantará os serviços automaticamente. Se você não estiver usando SSH/SCP, deverá modificar seu método de implantação copy_to_hub.sh
específico. Certifique-se de que todos os arquivos e configurações do certificado estejam configurados corretamente antes da implantação.