Instalar o software AWS IoT Greengrass Core com provisionamento automático de recursos
O software AWS IoT Greengrass Core inclui um instalador que configura seu dispositivo como um dispositivo principal do Greengrass. Para configurar um dispositivo rapidamente, o instalador pode provisionar o objeto da AWS IoT, o grupo de objetos da AWS IoT, o perfil do IAM e o alias do perfil da AWS IoT que o dispositivo principal precisa para operar. O instalador também pode implantar as ferramentas de desenvolvimento local no dispositivo principal, para que você possa usar o dispositivo para desenvolver e testar componentes de software personalizados. O instalador exige credenciais da AWS para provisionar esses recursos e criar a implantação.
Se você não puder fornecer credenciais da AWS para o dispositivo, poderá provisionar os recursos da AWS que o dispositivo principal precisa para operar. Também é possível implantar as ferramentas de desenvolvimento em um dispositivo principal para usar como dispositivo de desenvolvimento. Isso faz com que você forneça menos permissões ao dispositivo ao executar o instalador. Para ter mais informações, consulte Instalar o software AWS IoT Greengrass Core com provisionamento manual de recursos..
Importante
Antes de baixar o software AWS IoT Greengrass Core, verifique se seu dispositivo principal atende aos requisitos para instalar e executar o software AWS IoT Greengrass Core v2.0.
Tópicos
Configurar o ambiente do dispositivo
Siga as etapas nesta seção para configurar um dispositivo Linux ou Windows para usar como dispositivo principal do AWS IoT Greengrass.
Configurar um dispositivo Linux
Para configurar um dispositivo Linux para o AWS IoT Greengrass V2
-
Instale o runtime do Java, que o software AWS IoT Greengrass Core exige para ser executado. Recomendamos que você use as versões de suporte de longo prazo do Amazon Corretto
ou do OpenJDK . A versão 8 ou superior é obrigatória. Os seguintes comandos mostram como instalar o OpenJDK no dispositivo. -
Para distribuições com base em Debian ou em Ubuntu:
sudo apt install default-jdk
-
Para distribuições com base em Red Hat:
sudo yum install java-11-openjdk-devel
-
Para Amazon Linux 2:
sudo amazon-linux-extras install java-openjdk11
-
Para Amazon Linux 2023:
sudo dnf install java-11-amazon-corretto -y
Quando a instalação for concluída, execute o seguinte comando para verificar se o Java é executado no dispositivo Linux.
java -version
O comando imprime a versão do Java que é executada no dispositivo. Por exemplo, em uma distribuição baseada em Debian, o resultado pode ser semelhante ao seguinte exemplo.
openjdk version "11.0.9.1" 2020-11-04 OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2) OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
-
-
(Opcional) Crie o usuário e o grupo padrão do sistema que executa componentes no dispositivo. Também é possível optar por permitir que o instalador do software AWS IoT Greengrass Core crie esse usuário e grupo durante a instalação com o argumento
--component-default-user
do instalador. Para ter mais informações, consulte Argumentos de instalação.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
Verifique se o usuário que executa o software AWS IoT Greengrass Core (normalmente
root
) tem permissão para executarsudo
com qualquer usuário e qualquer grupo.-
Execute o seguinte comando para abrir o arquivo
/etc/sudoers
.sudo visudo
-
Verifique se a permissão do usuário se parece com o seguinte exemplo.
root ALL=(ALL:ALL) ALL
-
-
(Opcional) Para executar funções do Lambda em contêineres, habilite cgroups
v1 e habilite e monte os cgroups de memória e dispositivos. Se você não planeja executar funções do Lambda em contêineres, ignore esta etapa. Para habilitar essas opções de cgroups, inicialize o dispositivo com os seguintes parâmetros do kernel do Linux.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
Para mais informações sobre como visualizar e definir parâmetros do kernel para o dispositivo, consulte a documentação do sistema operacional e do carregador de inicialização. Siga as instruções para definir permanentemente os parâmetros do kernel.
-
Instale todas as outras dependências necessárias no dispositivo, conforme indicado na lista de requisitos em Requisitos do dispositivo.
Configurar um dispositivo Windows
nota
Esse atributo está disponível para a versão 2.5.0 e posterior do componente de núcleo do Greengrass.
Para configurar um dispositivo Windows para o AWS IoT Greengrass V2
-
Instale o runtime do Java, que o software AWS IoT Greengrass Core exige para ser executado. Recomendamos que você use as versões de suporte de longo prazo do Amazon Corretto
ou do OpenJDK . A versão 8 ou superior é obrigatória. -
Verifique se o Java está disponível na variável de sistema PATH
e, caso contrário, adicione. A conta LocalSystem executa o software AWS IoT Greengrass Core, então é preciso adicionar Java à variável de sistema PATH em vez da variável de usuário PATH para seu usuário. Faça o seguinte: -
Pressione a tecla Windows para abrir o menu Iniciar.
-
Digite
environment variables
para pesquisar as opções do sistema no menu Iniciar. -
Nos resultados da pesquisa do menu Iniciar, escolha Editar as variáveis de ambiente do sistema para abrir a janela Propriedades do sistema.
-
Escolha Variáveis de ambiente... para abrir a janela Variáveis de ambiente.
-
Em Variáveis de Sistema, selecione a variável Path e em seguida Editar. Na janela Editar variável de ambiente, você visualiza cada caminho em uma linha separada.
-
Verifique se o caminho para a pasta
bin
da instalação do Java está presente. O arquivo pode ser semelhante ao seguinte exemplo.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
Se a pasta
bin
da instalação do Java estiver ausente do Path, selecione Novo para adicioná-la e, em seguida, selecione OK.
-
-
Abra o prompt de comando do Windows (
cmd.exe
) como um administrador. -
Crie o usuário padrão na conta LocalSystem no dispositivo Windows. Substitua
senha
por uma senha segura.net user /add ggc_user
password
dica
Dependendo da configuração do Windows, a senha do usuário pode ser definida para expirar em uma data futura. Para garantir que suas aplicações do Greengrass continuem operando, monitore a validade da senha e atualize-a antes que ela expire. Também é possível definir que a senha nunca expire.
-
Para verificar quando um usuário e senha expiram, execute o comando a seguir.
net user
ggc_user
| findstr /C:expires -
Para definir que a senha de um usuário nunca expire, execute o seguinte comando.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
Se você usa o Windows 10 ou posterior, em que o comando
wmic
foi descontinuado, execute o comando do PowerShell a seguir. Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Baixe e instale o utilitário PsExec
da Microsoft no dispositivo. -
Use o utilitário PsExec para armazenar o nome de usuário e a senha do usuário padrão na instância do Credential Manager da conta do LocalSystem. Substitua a
senha
pela senha do usuário que você definiu anteriormente.psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:
password
Se PsExec License Agreement abrir, selecione Accept para concordar com a licença e execute o comando.
nota
Em dispositivos Windows, a conta LocalSystem executa o núcleo do Greengrass, e é preciso usar o utilitário PsExec para armazenar as informações padrão do usuário na conta LocalSystem. O uso da aplicação Gerenciador de Credenciais armazena essas informações na conta do Windows do usuário atualmente conectado, em vez da conta LocalSystem.
Fornecer credenciais da AWS para o dispositivo
Forneça as credenciais da AWS ao dispositivo para que o instalador possa provisionar os recursos da AWS necessários. Para mais informações sobre as permissões necessárias, consulte Política mínima de IAM para o instalador provisionar recursos.
Para fornecer credenciais da AWS ao dispositivo
-
Forneça as credenciais da AWS ao dispositivo para que o instalador possa provisionar os recursos do IAM e da AWS IoT necessários. Para aumentar a segurança, recomendamos que você obtenha credenciais temporárias para um perfil do IAM que habilite somente as permissões mínimas necessárias para provisionar. Para ter mais informações, consulte Política mínima de IAM para o instalador provisionar recursos.
nota
O instalador não salva nem armazena suas credenciais.
No seu dispositivo, faça o seguinte para recuperar as credenciais e disponibilizá-las para o instalador do software AWS IoT Greengrass Core:
-
(Recomendado) Usar credenciais temporárias do AWS IAM Identity Center
-
Forneça o ID da chave de acesso, a chave de acesso secreta e o token de sessão do IAM Identity Center. Para obter mais informações, consulte Atualização manual de credenciais em Como conseguir e atualizar credenciais temporárias no Guia do usuário do Centro de Identidade do IAM.
-
Use os comandos a seguir para fornecer credenciais ao software AWS IoT Greengrass Core.
-
-
Use credenciais de segurança temporárias de um perfil do IAM:
-
Forneça o ID da chave de acesso, a chave de acesso secreta e o token de sessão do perfil do IAM que você assume. Para obter mais informações sobre como recuperar essas credenciais, consulte Solicitação de credenciais de segurança temporárias no Guia do usuário do IAM.
-
Use os comandos a seguir para fornecer credenciais ao software AWS IoT Greengrass Core.
-
-
Use credenciais de segurança de longo prazo de um usuário do IAM:
-
Forneça o ID da chave de acesso e a chave de acesso secreta para seu usuário do IAM. É possível criar um usuário do IAM para provisionamento que será excluído posteriormente. Para ver a política do IAM a ser fornecida ao usuário, consulte Política mínima de IAM para o instalador provisionar recursos. Para obter mais informações sobre como recuperar credenciais de longo prazo, consulte Como gerenciar chaves de acesso para usuários do IAM no Guia do usuário do IAM.
-
Use os comandos a seguir para fornecer credenciais ao software AWS IoT Greengrass Core.
-
(Opcional) Se você criou um usuário do IAM para provisionar seu dispositivo Greengrass, exclua o usuário.
-
(Opcional) Se você usou o ID da chave de acesso e a chave de acesso secreta de um usuário do IAM existente, atualize as chaves do usuário para que elas não sejam mais válidas. Para obter mais informações, consulte Atualização de chaves de acesso no Guia de usuário do AWS Identity and Access Management.
-
-
Download do software do AWS IoT Greengrass Core
Baixe a versão mais recente do software AWS IoT Greengrass Core no seguinte local:
nota
É possível baixar uma versão específica do software AWS IoT Greengrass Core no seguinte local. Substitua a versão
pela versão a ser baixada.
https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-
version
.zip
Para download do software AWS IoT Greengrass Core
-
No dispositivo principal, baixe o software AWS IoT Greengrass Core para um arquivo chamado
greengrass-nucleus-latest.zip
.Ao fazer download desse software, você concorda com o Contrato de licença do software do Greengrass Core
. -
(Opcional) Para verificar a assinatura do software do núcleo do Greengrass
nota
Esse atributo está disponível com o núcleo do Greengrass versão 2.9.5 e posterior.
-
Use o comando a seguir para verificar a assinatura do artefato do núcleo do Greengrass:
-
A invocação
jarsigner
produz uma saída que indica os resultados da verificação.-
Se o arquivo zip do núcleo do Greengrass estiver assinado, a saída conterá a seguinte declaração:
jar verified.
-
Se o arquivo zip do núcleo do Greengrass não estiver assinado, a saída conterá a seguinte declaração:
jar is unsigned.
-
-
Se você forneceu a opção
-certs
do Jarsigner junto com as opções-verify
e-verbose
, a saída também incluirá informações detalhadas do certificado do assinante.
-
-
Descompacte o software AWS IoT Greengrass Core em uma pasta no dispositivo. Substitua o
GreengrassInstaller
pela pasta que você deseja usar. -
(Opcional) Execute o comando a seguir para ver a versão do software AWS IoT Greengrass Core.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version
Importante
Se você instalar uma versão do núcleo do Greengrass anterior à v2.4.0, não remova essa pasta depois de instalar o software AWS IoT Greengrass Core. O software AWS IoT Greengrass Core usa os arquivos dessa pasta para ser executado.
Se você baixou a versão mais recente do software, instale a versão 2.4.0 ou posterior e será possível remover essa pasta depois de instalar o software AWS IoT Greengrass Core.
Instalar o software do AWS IoT Greengrass Core
Execute o instalador com argumentos que especificam o seguinte:
-
Crie os recursos da AWS que o dispositivo principal precisa para operar.
-
Especifique o uso do usuário do sistema
ggc_user
para executar componentes de software no dispositivo principal. Em dispositivos Linux, esse comando também especifica o uso do grupo do sistemaggc_group
e o instalador cria o usuário e o grupo do sistema para você. -
Configure o software AWS IoT Greengrass Core como um serviço do sistema que é executado na inicialização. Em dispositivos Linux, isso requer o sistema init Systemd
. Importante
Nos dispositivos principais do Windows, é preciso configurar o software AWS IoT Greengrass Core como um serviço do sistema.
Para configurar um dispositivo de desenvolvimento com ferramentas de desenvolvimento local, especifique o argumento --deploy-dev-tools true
. As ferramentas de desenvolvimento local podem levar até um minuto para serem implantadas após a conclusão da instalação.
Para mais informações sobre os argumentos que podem ser especificados, consulte Argumentos de instalação.
nota
Se você estiver executando o AWS IoT Greengrass em um dispositivo com memória limitada, poderá controlar a quantidade de memória que o software AWS IoT Greengrass Core usa. Para controlar a alocação de memória, é possível definir as opções de tamanho do heap do JVM no parâmetro de configuração jvmOptions
no componente do núcleo. Para ter mais informações, consulte Controlar a alocação de memória com opções de JVM.
Como instalar o software do AWS IoT Greengrass Core
-
Execute o instalador do AWS IoT Greengrass Core. Substitua os valores dos argumentos no comando da seguinte maneira.
nota
O Windows tem uma limitação de comprimento de caminho de 260 caracteres. Se você estiver usando o Windows, use uma pasta raiz como
C:\greengrass\v2
ouD:\greengrass\v2
para manter os caminhos dos componentes do Greengrass abaixo do limite de 260 caracteres.-
ou/greengrass/v2
C:\greengrass\v2
: o caminho para a pasta raiz a ser usada para instalar o software AWS IoT Greengrass Core. -
GreengrassInstaller
. O caminho para a pasta em que você descompactou o instalador do software AWS IoT Greengrass Core. -
region
. A Região da AWS na qual encontrar ou criar recursos. -
MyGreengrassCore
. O nome do objeto da AWS IoT para seu dispositivo principal do Greengrass. Se o objeto não existir, o instalador o cria. O instalador baixa os certificados para autenticar o objeto da AWS IoT. Para ter mais informações, consulte Autorização e autenticação do dispositivo para o AWS IoT Greengrass.nota
O nome do objeto não pode conter caracteres de dois pontos (
:
). -
MyGreengrassCoreGroup
. O nome do objeto da AWS IoT para seu dispositivo principal do Greengrass. Se o grupo de objetos não existir, o instalador o cria e adiciona o objeto a ele. Se o grupo de objetos existir e tiver uma implantação ativa, o dispositivo principal baixará e executará o software especificado pela implantação.nota
O nome do grupo de objetos não pode conter caracteres de dois pontos (
:
). -
GreengrassV2IoTThingPolicy
. O nome da política do AWS IoT que permite que os dispositivos principais do Greengrass se comuniquem com AWS IoT e AWS IoT Greengrass. Se a política do AWS IoT não existir, o instalador cria uma política permissiva do AWS IoT com esse nome. É possível restringir as permissões dessa política para seu caso de uso. Para ter mais informações, consulte Política mínima de AWS IoT para dispositivos principais do AWS IoT Greengrass V2. -
GreengrassV2TokenExchangeRole
. O nome do perfil do IAM que permite que o dispositivo principal do Greengrass obtenha credenciais temporárias da AWS. Se a função não existir, o instalador a criará e criará e anexará uma política chamada
. Para ter mais informações, consulte Autorize os dispositivos principais a interagir com os serviços da AWS.GreengrassV2TokenExchangeRole
Access -
GreengrassCoreTokenExchangeRoleAlias
. O alias para o perfil do IAM que permite que o dispositivo principal do Greengrass obtenha credenciais temporárias posteriormente. Se o alias do perfil não existir, o instalador o cria e o aponta para o perfil do IAM especificado por você. Para ter mais informações, consulte Autorize os dispositivos principais a interagir com os serviços da AWS.
Importante
Nos dispositivos principais do Windows, é preciso especificar
--setup-system-service true
para configurar o software AWS IoT Greengrass Core como um serviço do sistema.O instalador imprime as seguintes mensagens se for bem-sucedido:
-
Se você especificar
--provision
, o instalador imprimiráSuccessfully configured Nucleus with provisioned resource details
se ele configurou os recursos com êxito. -
Se você especificar
--deploy-dev-tools
, o instalador imprimiráConfigured Nucleus to deploy aws.greengrass.Cli component
se ele criou a implantação com êxito. -
Se você especificar
--setup-system-service true
, o instalador imprimiráSuccessfully set up Nucleus as a system service
se ele configurou e executou o software como um serviço. -
Se você não especificar
--setup-system-service true
, o instalador imprimiráLaunched Nucleus successfully
se foi bem-sucedido e executou o software.
-
-
Ignore esta etapa se você instalou a versão 2.0.4 do Núcleo do Greengrass ou posterior. Se você baixou a versão mais recente do software, instalou a versão 2.0.4 ou posterior.
Execute o comando a seguir para definir as permissões de arquivo necessárias para a pasta raiz do software AWS IoT Greengrass Core. Substitua
pela pasta raiz especificada no comando de instalação e substitua/greengrass/v2
/greengrass
pela pasta pai para a pasta raiz.sudo chmod 755
&& sudo chmod 755/greengrass/v2
/greengrass
Se você instalou o software AWS IoT Greengrass Core como um serviço do sistema, o instalador executa o software para você. Caso contrário, será preciso executar o software manualmente. Para ter mais informações, consulte Executar o software AWS IoT Greengrass Core.
nota
Por padrão, o perfil do IAM criado pelo instalador não permite acesso aos artefatos dos componentes nos buckets do S3. Para implantar componentes personalizados que definem artefatos no Amazon S3, é preciso adicionar permissões ao perfil para permitir que seu dispositivo principal recupere artefatos de componentes. Para ter mais informações, consulte Permitir acesso aos buckets do S3 para artefatos de componentes.
Se você ainda não tem um bucket do S3 para artefatos de componentes, é possivel adicionar essas permissões depois de criar um bucket.
Para mais informações sobre como configurar e usar o software e o AWS IoT Greengrass, consulte: