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á.
Instale o software AWS IoT Greengrass principal com provisionamento manual 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 manualmente, você pode criar os recursos necessários AWS IoT e do IAM para o dispositivo usar. Se você criar esses recursos manualmente, não precisará fornecer AWS credenciais ao instalador.
Ao instalar manualmente o software AWS IoT Greengrass Core, você também pode configurar o dispositivo para usar um proxy de rede ou conectar-se AWS à porta 443. Talvez seja necessário especificar essas opções de configuração se o dispositivo estiver protegido por um firewall ou proxy de rede, por exemplo. Para ter mais informações, consulte Conectar-se à porta 443 ou por meio de um proxy de rede.
Você também pode configurar o software AWS IoT Greengrass Core para usar um módulo de segurança de hardware (HSM) por meio da interface PKCS #11
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
- Recupere endpoints AWS IoT
- Crie qualquer AWS IoT coisa
- Crie o certificado da coisa
- Configure o certificado da coisa
- Crie uma função de troca de tokens
- Baixe certificados para o dispositivo
- Configurar o ambiente do dispositivo
- Baixe o software AWS IoT Greengrass Core
- Instale o software AWS IoT Greengrass Core
Recupere endpoints AWS IoT
Obtenha os AWS IoT endpoints para você Conta da AWS e salve-os para usar mais tarde. Seu dispositivo usa esses endpoints para se conectar a. AWS IoT Faça o seguinte:
-
Obtenha o endpoint de AWS IoT dados para você Conta da AWS.
aws iot describe-endpoint --endpoint-type iot:Data-ATS
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "endpointAddress": "
device-data-prefix
-ats.iot.us-west-2.amazonaws.com" } -
Obtenha o endpoint AWS IoT de credenciais para seu. Conta da AWS
aws iot describe-endpoint --endpoint-type iot:CredentialProvider
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "endpointAddress": "
device-credentials-prefix
.credentials.iot.us-west-2.amazonaws.com" }
Crie qualquer AWS IoT coisa
AWS IoT as coisas representam dispositivos e entidades lógicas que se conectam AWS IoT a. Os principais dispositivos do Greengrass são AWS IoT coisas. Quando você registra um dispositivo como uma AWS IoT coisa, esse dispositivo pode usar um certificado digital para se autenticar AWS.
Nesta seção, você cria AWS IoT algo que representa seu dispositivo.
Para criar qualquer AWS IoT coisa
-
Crie qualquer AWS IoT coisa para o seu dispositivo. No seu computador de desenvolvimento, execute o comando a seguir.
-
MyGreengrassCore
Substitua pelo nome da coisa a ser usada. Esse nome também é o nome do seu dispositivo principal do Greengrass.nota
O nome da coisa não pode conter caracteres de dois pontos (
:
).
aws iot create-thing --thing-name
MyGreengrassCore
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "thingName": "MyGreengrassCore", "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "thingId": "8cb4b6cd-268e-495d-b5b9-1713d71dbf42" }
-
-
(Opcional) Adicione a AWS IoT coisa a um grupo de coisas novo ou existente. Você usa grupos de coisas para gerenciar frotas de dispositivos principais do Greengrass. Ao implantar componentes de software em seus dispositivos, você pode segmentar dispositivos individuais ou grupos de dispositivos. Você pode adicionar um dispositivo a um grupo de coisas com uma implantação ativa do Greengrass para implantar os componentes de software desse grupo de coisas no dispositivo. Faça o seguinte:
-
(Opcional) Crie um grupo de AWS IoT coisas.
-
MyGreengrassCoreGroup
Substitua pelo nome do grupo de coisas a ser criado.nota
O nome do grupo de coisas não pode conter caracteres de dois pontos (
:
).
aws iot create-thing-group --thing-group-name
MyGreengrassCoreGroup
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" }
-
-
Adicione a AWS IoT coisa a um grupo de coisas.
-
MyGreengrassCore
Substitua pelo nome da sua AWS IoT coisa. -
MyGreengrassCoreGroup
Substitua pelo nome do grupo de coisas.
aws iot add-thing-to-thing-group --thing-name
MyGreengrassCore
--thing-group-nameMyGreengrassCoreGroup
O comando não terá nenhuma saída se a solicitação for bem-sucedida.
-
-
Crie o certificado da coisa
Quando você registra um dispositivo como uma AWS IoT coisa, esse dispositivo pode usar um certificado digital para se autenticar AWS. Esse certificado permite que o dispositivo se comunique com AWS IoT AWS IoT Greengrass e.
Nesta seção, você cria e baixa certificados que seu dispositivo pode usar para se conectar AWS.
Se você quiser configurar o software AWS IoT Greengrass Core para usar um módulo de segurança de hardware (HSM) para armazenar com segurança a chave privada e o certificado, siga as etapas para criar o certificado a partir de uma chave privada em um HSM. Caso contrário, siga as etapas para criar o certificado e a chave privada no AWS IoT serviço. O recurso de segurança de hardware está disponível somente em dispositivos Linux. Para obter mais informações sobre a segurança do hardware e os requisitos para usá-lo, consulteIntegração de segurança de hardware.
Crie o certificado e a chave privada no AWS IoT serviço
Para criar o certificado da coisa
-
Crie uma pasta na qual você baixa os certificados da AWS IoT coisa.
mkdir greengrass-v2-certs
-
Crie e baixe os certificados da AWS IoT coisa.
aws iot create-keys-and-certificate --set-as-active --certificate-pem-outfile greengrass-v2-certs/device.pem.crt --public-key-outfile greengrass-v2-certs/public.pem.key --private-key-outfile greengrass-v2-certs/private.pem.key
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\ MIIBIjANBgkqhkEXAMPLEQEFAAOCAQ8AMIIBCgKCAQEAEXAMPLE1nnyJwKSMHw4h\ MMEXAMPLEuuN/dMAS3fyce8DW/4+EXAMPLEyjmoF/YVF/gHr99VEEXAMPLE5VF13\ 59VK7cEXAMPLE67GK+y+jikqXOgHh/xJTwo+sGpWEXAMPLEDz18xOd2ka4tCzuWEXAMPLEahJbYkCPUBSU8opVkR7qkEXAMPLE1DR6sx2HocliOOLtu6Fkw91swQWEXAMPLE\\GB3ZPrNh0PzQYvjUStZeccyNCx2EXAMPLEvp9mQOUXP6plfgxwKRX2fEXAMPLEDa\ hJLXkX3rHU2xbxJSq7D+XEXAMPLEcw+LyFhI5mgFRl88eGdsAEXAMPLElnI9EesG\ FQIDAQAB\ -----END PUBLIC KEY-----\ ", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\ key omitted for security reasons\ -----END RSA PRIVATE KEY-----\ " } }
Salve o Amazon Resource Name (ARN) do certificado para usar na configuração posterior do certificado.
Crie o certificado a partir de uma chave privada em um HSM
nota
Esse recurso está disponível para a versão 2.5.3 e posterior do componente núcleo do Greengrass. AWS IoT Greengrass atualmente não oferece suporte a esse recurso nos dispositivos principais do Windows.
Para criar o certificado da coisa
-
No dispositivo principal, inicialize um token PKCS #11 no HSM e gere uma chave privada. A chave privada deve ser uma chave RSA com um tamanho de chave RSA-2048 (ou maior) ou uma chave ECC.
nota
Para usar um módulo de segurança de hardware com chaves ECC, você deve usar o Greengrass nucleus v2.5.6 ou posterior.
Para usar um módulo de segurança de hardware e um gerenciador secreto, você deve usar um módulo de segurança de hardware com chaves RSA.
Consulte a documentação do seu HSM para saber como inicializar o token e gerar a chave privada. Se seu HSM oferecer suporte a IDs de objeto, especifique uma ID de objeto ao gerar a chave privada. Salve o ID do slot, o PIN do usuário, o rótulo do objeto e o ID do objeto (se o HSM usar um) que você especifica ao inicializar o token e gerar a chave privada. Você usa esses valores posteriormente ao importar o certificado do item para o HSM e configurar o software AWS IoT Greengrass Core.
-
Crie uma solicitação de assinatura de certificado (CSR) a partir da chave privada. AWS IoT usa essa CSR para criar um certificado para a chave privada que você gerou no HSM. Para obter informações sobre como criar uma CSR a partir da chave privada, consulte a documentação do seu HSM. O CSR é um arquivo, como
iotdevicekey.csr
. -
Copie a CSR do dispositivo para o computador de desenvolvimento. Se o SSH e o SCP estiverem habilitados no computador de desenvolvimento e no dispositivo, você poderá usar o
scp
comando no computador de desenvolvimento para transferir o CSR.device-ip-address
Substitua pelo endereço IP do seu dispositivo e substitua~/iotdevicekey.csr pelo caminho para o arquivo CSR
no dispositivo.scp
device-ip-address
:~/iotdevicekey.csr
iotdevicekey.csr -
No seu computador de desenvolvimento, crie uma pasta na qual você baixa o certificado da AWS IoT coisa.
mkdir greengrass-v2-certs
-
Use o arquivo CSR para criar e baixar o certificado da AWS IoT coisa em seu computador de desenvolvimento.
aws iot create-certificate-from-csr --set-as-active --certificate-signing-request=file://iotdevicekey.csr --certificate-pem-outfile greengrass-v2-certs/device.pem.crt
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----" }
Salve o ARN do certificado para usá-lo na configuração posterior do certificado.
Configure o certificado da coisa
Anexe o certificado do AWS IoT item ao que você criou anteriormente e adicione uma AWS IoT política ao certificado para definir as AWS IoT permissões para o dispositivo principal.
Para configurar o certificado da coisa
-
Anexe o certificado à AWS IoT coisa.
-
MyGreengrassCore
Substitua pelo nome da sua AWS IoT coisa. -
Substitua o certificado Amazon Resource Name (ARN) pelo ARN do certificado que você criou na etapa anterior.
aws iot attach-thing-principal --thing-name
MyGreengrassCore
--principalarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
O comando não terá nenhuma saída se a solicitação for bem-sucedida.
-
-
Crie e anexe uma AWS IoT política que defina as AWS IoT permissões para seu dispositivo principal do Greengrass. A política a seguir permite acesso a todos os tópicos do MQTT e operações do Greengrass, para que seu dispositivo funcione com aplicativos personalizados e futuras alterações que exijam novas operações do Greengrass. Você pode restringir essa política com base no seu caso de uso. Para ter mais informações, consulte AWS IoTPolítica mínima para dispositivos AWS IoT Greengrass V2 principais.
Se você já configurou um dispositivo principal do Greengrass, pode anexar sua AWS IoT política em vez de criar uma nova.
Faça o seguinte:
-
Crie um arquivo que contenha o documento AWS IoT de política exigido pelos dispositivos principais do Greengrass.
Por exemplo, em um sistema baseado em Linux, você pode executar o seguinte comando para usar o GNU nano para criar o arquivo.
nano greengrass-v2-iot-policy.json
Copie o seguinte JSON no arquivo.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:Connect", "greengrass:*" ], "Resource": [ "*" ] } ] }
-
Crie uma AWS IoT política a partir do documento de política.
-
Substitua
GreengrassV2IoT
pelo nome da ThingPolicy política a ser criada.
aws iot create-policy --policy-name
GreengrassV2IoTThingPolicy
--policy-document file://greengrass-v2-iot-policy.jsonA resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "policyName": "GreengrassV2IoTThingPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassV2IoTThingPolicy", "policyDocument": "{ \\"Version\\": \\"2012-10-17\\", \\"Statement\\": [ { \\"Effect\\": \\"Allow\\", \\"Action\\": [ \\"iot:Publish\\", \\"iot:Subscribe\\", \\"iot:Receive\\", \\"iot:Connect\\", \\"greengrass:*\\" ], \\"Resource\\": [ \\"*\\" ] } ] }", "policyVersionId": "1" }
-
-
Anexe a AWS IoT política ao certificado da AWS IoT coisa.
-
Substitua
GreengrassV2IoT pelo nome da política ThingPolicy a ser
anexada. -
Substitua o ARN de destino pelo ARN do certificado de sua coisa. AWS IoT
aws iot attach-policy --policy-name
GreengrassV2IoTThingPolicy
--targetarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
O comando não terá nenhuma saída se a solicitação for bem-sucedida.
-
-
Crie uma função de troca de tokens
Os dispositivos principais do Greengrass usam uma função de serviço do IAM, chamada função de troca de tokens, para autorizar chamadas para serviços. AWS O dispositivo usa o provedor de AWS IoT credenciais para obter AWS credenciais temporárias para essa função, o que permite que o dispositivo interaja AWS IoT, envie registros para o Amazon CloudWatch Logs e baixe artefatos de componentes personalizados do Amazon S3. Para ter mais informações, consulte Autorizar dispositivos principais a interagir comAWSserviços.
Você usa um alias de AWS IoT função para configurar a função de troca de tokens para os dispositivos principais do Greengrass. Os aliases de função permitem que você altere a função de troca de tokens de um dispositivo, mas mantenha a mesma configuração do dispositivo. Para obter mais informações, consulte Autorização de chamadas diretas para AWS serviços no Guia do AWS IoT Core desenvolvedor.
Nesta seção, você cria uma função do IAM de troca de tokens e um alias de AWS IoT função que aponta para a função. Se você já configurou um dispositivo principal do Greengrass, pode usar sua função de troca de tokens e seu alias de função em vez de criar novos. Em seguida, você configura o dispositivo AWS IoT para usar essa função e alias.
Para criar uma função do IAM de troca de tokens
-
Crie uma função do IAM que seu dispositivo possa usar como função de troca de tokens. Faça o seguinte:
-
Crie um arquivo que contenha o documento de política de confiança exigido pela função de troca de tokens.
Por exemplo, em um sistema baseado em Linux, você pode executar o seguinte comando para usar o GNU nano para criar o arquivo.
nano device-role-trust-policy.json
Copie o seguinte JSON no arquivo.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Crie a função de troca de tokens com o documento de política de confiança.
-
Substitua
GreengrassV2 TokenExchangeRole
pelo nome da função do IAM a ser criada.
aws iam create-role --role-name
GreengrassV2TokenExchangeRole
--assume-role-policy-document file://device-role-trust-policy.jsonA resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "Role": { "Path": "/", "RoleName": "GreengrassV2TokenExchangeRole", "RoleId": "AROAZ2YMUHYHK5OKM77FB", "Arn": "arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole", "CreateDate": "2021-02-06T00:13:29+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } }
-
-
Crie um arquivo que contenha o documento de política de acesso exigido pela função de troca de tokens.
Por exemplo, em um sistema baseado em Linux, você pode executar o seguinte comando para usar o GNU nano para criar o arquivo.
nano device-role-access-policy.json
Copie o seguinte JSON no arquivo.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams", "s3:GetBucketLocation" ], "Resource": "*" } ] }
nota
Essa política de acesso não permite acesso a artefatos de componentes em buckets do S3. Para implantar componentes personalizados que definem artefatos no Amazon S3, você deve adicionar permissões à função 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, você pode adicionar essas permissões depois de criar um bucket.
-
Crie a política do IAM a partir do documento de política.
-
Substitua
GreengrassV2 TokenExchangeRoleAccess
pelo nome da política do IAM a ser criada.
aws iam create-policy --policy-name
GreengrassV2TokenExchangeRoleAccess
--policy-document file://device-role-access-policy.jsonA resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "Policy": { "PolicyName": "GreengrassV2TokenExchangeRoleAccess", "PolicyId": "ANPAZ2YMUHYHACI7C5Z66", "Arn": "arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "CreateDate": "2021-02-06T00:37:17+00:00", "UpdateDate": "2021-02-06T00:37:17+00:00" } }
-
-
Anexe a política do IAM à função de troca de tokens.
-
Substitua
GreengrassV2 TokenExchangeRole
pelo nome da função do IAM. -
Substitua o ARN da política pelo ARN da política do IAM que você criou na etapa anterior.
aws iam attach-role-policy --role-name
GreengrassV2TokenExchangeRole
--policy-arnarn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess
O comando não terá nenhuma saída se a solicitação for bem-sucedida.
-
-
-
Crie um alias de AWS IoT função que aponte para a função de troca de tokens.
-
GreengrassCoreTokenExchangeRoleAlias
Substitua pelo nome do alias de função a ser criado. -
Substitua o ARN da função pelo ARN da função do IAM que você criou na etapa anterior.
aws iot create-role-alias --role-alias
GreengrassCoreTokenExchangeRoleAlias
--role-arnarn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole
A resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "roleAlias": "GreengrassCoreTokenExchangeRoleAlias", "roleAliasArn": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" }
nota
Para criar um alias de função, você precisa ter permissão para passar a função do IAM de troca de tokens para AWS IoT. Se você receber uma mensagem de erro ao tentar criar um alias de função, verifique se o AWS usuário tem essa permissão. Para obter mais informações, consulte Conceder permissões a um usuário para passar uma função para um AWS serviço no Guia do AWS Identity and Access Management usuário.
-
-
Crie e anexe uma AWS IoT política que permita que seu dispositivo principal do Greengrass use o alias de função para assumir a função de troca de tokens. Se você já configurou um dispositivo principal do Greengrass, pode anexar sua AWS IoT política de alias de função em vez de criar uma nova. Faça o seguinte:
-
(Opcional) Crie um arquivo que contenha o documento AWS IoT de política exigido pelo alias da função.
Por exemplo, em um sistema baseado em Linux, você pode executar o seguinte comando para usar o GNU nano para criar o arquivo.
nano greengrass-v2-iot-role-alias-policy.json
Copie o seguinte JSON no arquivo.
-
Substitua o ARN do recurso pelo ARN do seu alias de função.
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:AssumeRoleWithCertificate", "Resource": "
arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias
" } ] } -
-
Crie uma AWS IoT política a partir do documento de política.
-
GreengrassCoreTokenExchangeRoleAliasPolicy
Substitua pelo nome da AWS IoT política a ser criada.
aws iot create-policy --policy-name
GreengrassCoreTokenExchangeRoleAliasPolicy
--policy-document file://greengrass-v2-iot-role-alias-policy.jsonA resposta será semelhante ao exemplo a seguir, se a solicitação for bem-sucedida.
{ "policyName": "GreengrassCoreTokenExchangeRoleAliasPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassCoreTokenExchangeRoleAliasPolicy", "policyDocument": "{ \\"Version\\":\\"2012-10-17\\", \\"Statement\\": [ { \\"Effect\\": \\"Allow\\", \\"Action\\": \\"iot:AssumeRoleWithCertificate\\", \\"Resource\\": \\"arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias\\" } ] }", "policyVersionId": "1" }
-
-
Anexe a AWS IoT política ao certificado da AWS IoT coisa.
-
GreengrassCoreTokenExchangeRoleAliasPolicy
Substitua pelo nome da AWS IoT política de alias de função. -
Substitua o ARN de destino pelo ARN do certificado de sua coisa. AWS IoT
aws iot attach-policy --policy-name
GreengrassCoreTokenExchangeRoleAliasPolicy
--targetarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
O comando não terá nenhuma saída se a solicitação for bem-sucedida.
-
-
Baixe certificados para o dispositivo
Anteriormente, você baixou o certificado do seu dispositivo para o seu computador de desenvolvimento. Nesta seção, você copia o certificado para o seu dispositivo principal para configurar o dispositivo com os certificados que ele usa para se conectar AWS IoT. Você também baixa o certificado da autoridade de certificação raiz (CA) da Amazon. Se você usa um HSM, você também importa o arquivo de certificado para o HSM nesta seção.
-
Se você criou o certificado e a chave privada do item no AWS IoT serviço anteriormente, siga as etapas para baixar os certificados com a chave privada e os arquivos de certificado.
-
Se você criou o certificado do item a partir de uma chave privada em um módulo de segurança de hardware (HSM) anteriormente, siga as etapas para baixar os certificados com a chave privada e o certificado em um HSM.
Baixe certificados com chave privada e arquivos de certificado
Para baixar certificados para o dispositivo
-
Copie o AWS IoT certificado do item do seu computador de desenvolvimento para o dispositivo. Se o SSH e o SCP estiverem habilitados no computador de desenvolvimento e no dispositivo, você poderá usar o
scp
comando no computador de desenvolvimento para transferir o certificado.device-ip-address
Substitua pelo endereço IP do seu dispositivo.scp -r greengrass-v2-certs/
device-ip-address
:~ -
Crie a pasta raiz do Greengrass no dispositivo. Posteriormente, você instalará o software AWS IoT Greengrass Core nessa pasta.
-
(Somente Linux) Defina as permissões do pai da pasta raiz do Greengrass.
-
Substitua
/greengrass
pelo pai da pasta raiz.
sudo chmod 755
/greengrass
-
-
Copie os certificados do AWS IoT item para a pasta raiz do Greengrass.
-
Baixe o certificado da autoridade de certificação raiz (CA) da Amazon. AWS IoT os certificados são associados ao certificado CA raiz da Amazon por padrão.
Baixe certificados com a chave privada e o certificado em um HSM
nota
Esse recurso está disponível para a versão 2.5.3 e posterior do componente núcleo do Greengrass. AWS IoT Greengrass atualmente não oferece suporte a esse recurso nos dispositivos principais do Windows.
Para baixar certificados para o dispositivo
-
Copie o AWS IoT certificado do item do seu computador de desenvolvimento para o dispositivo. Se o SSH e o SCP estiverem habilitados no computador de desenvolvimento e no dispositivo, você poderá usar o
scp
comando no computador de desenvolvimento para transferir o certificado.device-ip-address
Substitua pelo endereço IP do seu dispositivo.scp -r greengrass-v2-certs/
device-ip-address
:~ -
Crie a pasta raiz do Greengrass no dispositivo. Posteriormente, você instalará o software AWS IoT Greengrass Core nessa pasta.
-
(Somente Linux) Defina as permissões do pai da pasta raiz do Greengrass.
-
Substitua
/greengrass
pelo pai da pasta raiz.
sudo chmod 755
/greengrass
-
-
Importe o arquivo de certificado da coisa,
~/greengrass-v2-certs/device.pem.crt
, para o HSM. Consulte a documentação do seu HSM para saber como importar certificados para ele. Importe o certificado usando o mesmo token, ID do slot, PIN do usuário, rótulo do objeto e ID do objeto (se o HSM usar um) em que você gerou a chave privada no HSM anteriormente.nota
Se você gerou a chave privada anteriormente sem uma ID de objeto e o certificado tiver uma ID de objeto, defina a ID do objeto da chave privada com o mesmo valor do certificado. Consulte a documentação do seu HSM para saber como definir o ID do objeto de chave privada.
-
(Opcional) Exclua o arquivo de certificado do item, para que ele exista somente no HSM.
rm ~/greengrass-v2-certs/device.pem.crt
-
Baixe o certificado da autoridade de certificação raiz (CA) da Amazon. AWS IoT os certificados são associados ao certificado CA raiz da Amazon por padrão.
Configurar o ambiente do dispositivo
Siga as etapas nesta seção para configurar um dispositivo Linux ou Windows para ser usado como seu dispositivo AWS IoT Greengrass principal.
Configurar um dispositivo Linux
Para configurar um dispositivo Linux para AWS IoT Greengrass V2
-
Instale o Java Runtime, 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. É necessária a versão 8 ou superior. Os comandos a seguir mostram como instalar o OpenJDK no seu 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 comando a seguir para verificar se o Java é executado no seu 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 exemplo a seguir.
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. Você também pode 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 do
--component-default-user
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 comando a seguir para abrir o
/etc/sudoers
arquivo.sudo visudo
-
Verifique se a permissão para o usuário se parece com o exemplo a seguir.
root ALL=(ALL:ALL) ALL
-
-
(Opcional) Para executar funções Lambda em contêineres, você deve habilitar cgroups
v1 e habilitar e montar os cgroups de memória e dispositivos. Se você não planeja executar funções Lambda em contêineres, pode pular esta etapa. Para habilitar essas opções de cgroups, inicialize o dispositivo com os seguintes parâmetros do kernel Linux.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
Para obter informações sobre como visualizar e definir os parâmetros do kernel para seu 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 em seu dispositivo, conforme indicado na lista de requisitos emRequisitos do dispositivo.
Configurar um dispositivo Windows
nota
Esse recurso 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 AWS IoT Greengrass V2
-
Instale o Java Runtime, 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. É necessária a versão 8 ou superior. -
Verifique se o Java está disponível na variável de sistema PATH
e, caso contrário, adicione-o. A LocalSystem conta executa o software AWS IoT Greengrass Core, então você deve 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 do sistema, selecione Caminho e, em seguida, escolha Editar. Na janela Editar variável de ambiente, você pode visualizar cada caminho em uma linha separada.
-
Verifique se o caminho para a
bin
pasta da instalação do Java está presente. O caminho pode ser semelhante ao exemplo a seguir.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
Se a
bin
pasta da instalação do Java estiver ausente do Path, escolha Novo para adicioná-la e, em seguida, escolha OK.
-
-
Abra o prompt de comando do Windows (
cmd.exe
) como administrador. -
Crie o usuário padrão na LocalSystem conta no dispositivo Windows.
Substitua a 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 seus aplicativos Greengrass continuem operando, monitore quando a senha expira e atualize-a antes que ela expire. Você também pode definir a senha do usuário para nunca expirar.
-
Para verificar quando um usuário e sua 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 comando a seguir.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
Se você estiver usando o Windows 10 ou posterior, onde o
wmic
comando está obsoleto, execute o comando a seguir. PowerShell Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Baixe e instale o PsExecutilitário
da Microsoft no dispositivo. -
Use o PsExec utilitário para armazenar o nome de usuário e a senha do usuário padrão na instância do Credential Manager da LocalSystem conta. 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 for PsExec License Agreementaberto, opte por Acceptconcordar com a licença e execute o comando.
nota
Em dispositivos Windows, a LocalSystem conta executa o núcleo Greengrass, e você deve usar o PsExec utilitário para armazenar as informações padrão do usuário na conta. LocalSystem O uso do aplicativo Credential Manager armazena essas informações na conta do Windows do usuário atualmente conectado, em vez da LocalSystem conta.
Baixe o software AWS IoT Greengrass Core
Você pode baixar a versão mais recente do software AWS IoT Greengrass Core no seguinte local:
nota
Você pode 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 baixar o software AWS IoT Greengrass Core
-
Em seu 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 Greengrass nucleus
nota
Esse recurso está disponível com o Greengrass nucleus versão 2.9.5 e posterior.
-
Use o comando a seguir para verificar a assinatura do artefato do núcleo Greengrass:
-
A
jarsigner
invocação produz uma saída que indica os resultados da verificação.-
Se o arquivo zip do Greengrass nucleus estiver assinado, a saída conterá a seguinte declaração:
jar verified.
-
Se o arquivo zip do Greengrass nucleus não estiver assinado, a saída conterá a seguinte declaração:
jar is unsigned.
-
-
Se você forneceu a
-certs
opção Jarsigner junto com-verbose
as opções-verify
e, a saída também incluirá informações detalhadas do certificado do assinante.
-
-
Descompacte o software AWS IoT Greengrass Core em uma pasta no seu dispositivo.
GreengrassInstaller
Substitua 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 Core. AWS IoT Greengrass 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 poderá remover essa pasta depois de instalar o software AWS IoT Greengrass Core.
Instale o software AWS IoT Greengrass Core
Execute o instalador com argumentos que especificam as seguintes ações:
-
Instale a partir de um arquivo de configuração parcial que especifica o uso AWS dos recursos e certificados que você criou anteriormente. O software AWS IoT Greengrass Core usa um arquivo de configuração que especifica a configuração de cada componente do Greengrass no dispositivo. O instalador cria um arquivo de configuração completo a partir do arquivo de configuração parcial fornecido por você.
-
Especifique o uso do usuário do
ggc_user
sistema para executar componentes de software no dispositivo principal. Em dispositivos Linux, esse comando também especifica o uso do grupo doggc_group
sistema, 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, você deve configurar o software AWS IoT Greengrass Core como um serviço do sistema.
Para obter mais informações sobre os argumentos que você pode especificar, consulteArgumentos de instalação.
nota
Se você estiver executando 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, você pode definir as opções de tamanho da pilha da JVM no parâmetro de jvmOptions
configuração em seu componente de núcleo. Para ter mais informações, consulte Controle a alocação de memória com opções de JVM.
-
Se você criou o certificado e a chave privada do item no AWS IoT serviço anteriormente, siga as etapas para instalar o software AWS IoT Greengrass Core com a chave privada e os arquivos de certificado.
-
Se você criou o certificado do item a partir de uma chave privada em um módulo de segurança de hardware (HSM) anteriormente, siga as etapas para instalar o software AWS IoT Greengrass Core com a chave privada e o certificado em um HSM.
Instale o software AWS IoT Greengrass Core com arquivos de chave privada e certificado
Para instalar o software AWS IoT Greengrass Core
-
Verifique a versão do software AWS IoT Greengrass Core.
-
GreengrassInstaller
Substitua pelo caminho para a pasta que contém o software.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Use um editor de texto para criar um arquivo de configuração chamado
config.yaml
para fornecer ao instalador.Por exemplo, em um sistema baseado em Linux, você pode executar o seguinte comando para usar o GNU nano para criar o arquivo.
nano
GreengrassInstaller
/config.yamlCopie o seguinte conteúdo YAML para o arquivo. Esse arquivo de configuração parcial especifica os parâmetros do sistema e os parâmetros do núcleo do Greengrass.
--- system: certificateFilePath: "
/device.pem.crt" privateKeyPath: "/greengrass/v2
/private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "/greengrass/v2
MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.12.3
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com
" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com
"Então, faça o seguinte:
-
Substitua cada instância do
pela pasta raiz do Greengrass./greengrass/v2
-
MyGreengrassCore
Substitua pelo nome da AWS IoT coisa. -
Substitua
2.12.3
pela versão do software AWS IoT Greengrass Core. -
Substitua
us-west-2
pelo local em que você Região da AWS criou os recursos. -
GreengrassCoreTokenExchangeRoleAlias
Substitua pelo nome do alias da função de troca de tokens. -
Substitua o
iotDataEndpoint
por seu endpoint de AWS IoT dados. -
Substitua o
iotCredEndpoint
pelo endpoint de suas AWS IoT credenciais.
nota
Nesse arquivo de configuração, você pode personalizar outras opções de configuração do núcleo, como as portas e o proxy de rede a serem usados, conforme mostrado no exemplo a seguir. Para obter mais informações, consulte Configuração do núcleo do Greengrass.
--- system: certificateFilePath: "
/device.pem.crt" privateKeyPath: "/greengrass/v2
/private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "/greengrass/v2
MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.12.3
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotCredEndpoint: "device-credentials-prefix
.credentials.iot.us-west-2
.amazonaws.com" iotDataEndpoint: "device-data-prefix
-ats.iot.us-west-2
.amazonaws.com" mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "https://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" -
-
Execute o instalador e especifique
--init-config
para fornecer o arquivo de configuração.-
Substitua
ou/greengrass/v2
C:\greengrass\v2
pela pasta raiz do Greengrass. -
Substitua cada instância do
GreengrassInstaller
pela pasta em que você descompactou o instalador.
Importante
Nos dispositivos principais do Windows, você deve especificar
--setup-system-service true
a configuração do software AWS IoT Greengrass Core como um serviço do sistema.Se você especificar
--setup-system-service true
, o instaladorSuccessfully set up Nucleus as a system service
imprimirá se configurou e executou o software como um serviço do sistema. Caso contrário, o instalador não emitirá nenhuma mensagem se instalar o software com êxito.nota
Você não pode usar o
deploy-dev-tools
argumento para implantar ferramentas de desenvolvimento local ao executar o instalador sem o--provision true
argumento. Para obter informações sobre a implantação da CLI do Greengrass diretamente em seu dispositivo, consulte. Interface de linha de comando do Greengrass -
-
Verifique a instalação visualizando os arquivos na pasta raiz.
Se a instalação for bem-sucedida, a pasta raiz conterá várias pastas
config
, comopackages
, e.logs
Instale o software AWS IoT Greengrass Core com a chave privada e o certificado em um HSM
nota
Esse recurso está disponível para a versão 2.5.3 e posterior do componente núcleo do Greengrass. AWS IoT Greengrass atualmente não oferece suporte a esse recurso nos dispositivos principais do Windows.
Para instalar o software AWS IoT Greengrass Core
-
Verifique a versão do software AWS IoT Greengrass Core.
-
GreengrassInstaller
Substitua pelo caminho para a pasta que contém o software.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Para permitir que o software AWS IoT Greengrass Core use a chave privada e o certificado no HSM, instale o componente do provedor PKCS #11 ao instalar o software AWS IoT Greengrass Core. O componente do provedor PKCS #11 é um plug-in que você pode configurar durante a instalação. Você pode baixar a versão mais recente do componente provedor PKCS #11 no seguinte local:
Baixe o plug-in do provedor PKCS #11 para um arquivo chamado
aws.greengrass.crypto.Pkcs11Provider.jar
.GreengrassInstaller
Substitua pela pasta que você deseja usar.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar >
GreengrassInstaller
/aws.greengrass.crypto.Pkcs11Provider.jarAo fazer download desse software, você concorda com o Contrato de licença do software do Greengrass Core
. -
Use um editor de texto para criar um arquivo de configuração chamado
config.yaml
para fornecer ao instalador.Por exemplo, em um sistema baseado em Linux, você pode executar o seguinte comando para usar o GNU nano para criar o arquivo.
nano
GreengrassInstaller
/config.yamlCopie o seguinte conteúdo YAML para o arquivo. Esse arquivo de configuração parcial especifica os parâmetros do sistema, os parâmetros do núcleo do Greengrass e os parâmetros do provedor PKCS #11.
--- system: certificateFilePath: "pkcs11:object=
iotdevicekey
;type=cert" privateKeyPath: "pkcs11:object=iotdevicekey
;type=private" rootCaPath: "
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "/greengrass/v2
MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.12.3
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com
" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com
" aws.greengrass.crypto.Pkcs11Provider: configuration: name: "softhsm_pkcs11
" library: "/usr/local/Cellar/softhsm/2.6.1/lib/softhsm/libsofthsm2.so
" slot:1
userPin: "1234
"Então, faça o seguinte:
-
Substitua cada instância de
iotdevicekey
nos URIs do PKCS #11 pelo rótulo do objeto em que você criou a chave privada e importou o certificado. -
Substitua cada instância do
pela pasta raiz do Greengrass./greengrass/v2
-
MyGreengrassCore
Substitua pelo nome da AWS IoT coisa. -
Substitua
2.12.3
pela versão do software AWS IoT Greengrass Core. -
Substitua
us-west-2
pelo local em que você Região da AWS criou os recursos. -
GreengrassCoreTokenExchangeRoleAlias
Substitua pelo nome do alias da função de troca de tokens. -
Substitua o
iotDataEndpoint
por seu endpoint de AWS IoT dados. -
Substitua o
iotCredEndpoint
pelo endpoint de suas AWS IoT credenciais. -
Substitua os parâmetros de configuração do
aws.greengrass.crypto.Pkcs11Provider
componente pelos valores da configuração do HSM no dispositivo principal.
nota
Nesse arquivo de configuração, você pode personalizar outras opções de configuração do núcleo, como as portas e o proxy de rede a serem usados, conforme mostrado no exemplo a seguir. Para obter mais informações, consulte Configuração do núcleo do Greengrass.
--- system: certificateFilePath: "pkcs11:object=
iotdevicekey
;type=cert" privateKeyPath: "pkcs11:object=iotdevicekey
;type=private" rootCaPath: "
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "/greengrass/v2
MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.12.3
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com
" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com
" mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "https://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.crypto.Pkcs11Provider: configuration: name: "softhsm_pkcs11
" library: "/usr/local/Cellar/softhsm/2.6.1/lib/softhsm/libsofthsm2.so
" slot:1
userPin: "1234
" -
-
Execute o instalador e especifique
--init-config
para fornecer o arquivo de configuração.-
Substitua pela pasta raiz do Greengrass./greengrass/v2
-
Substitua cada instância do
GreengrassInstaller
pela pasta em que você descompactou o instalador.
sudo -E java -Droot="
" -Dlog.store=FILE \ -jar .//greengrass/v2
GreengrassInstaller
/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller
/aws.greengrass.crypto.Pkcs11Provider.jar \ --init-config ./GreengrassInstaller
/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service trueImportante
Nos dispositivos principais do Windows, você deve especificar
--setup-system-service true
a configuração do software AWS IoT Greengrass Core como um serviço do sistema.Se você especificar
--setup-system-service true
, o instaladorSuccessfully set up Nucleus as a system service
imprimirá se configurou e executou o software como um serviço do sistema. Caso contrário, o instalador não emitirá nenhuma mensagem se instalar o software com êxito.nota
Você não pode usar o
deploy-dev-tools
argumento para implantar ferramentas de desenvolvimento local ao executar o instalador sem o--provision true
argumento. Para obter informações sobre a implantação da CLI do Greengrass diretamente em seu dispositivo, consulte. Interface de linha de comando do Greengrass -
-
Verifique a instalação visualizando os arquivos na pasta raiz.
Se a instalação for bem-sucedida, a pasta raiz conterá várias pastas
config
, comopackages
, e.logs
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, você deverá executar o software manualmente. Para ter mais informações, consulte Execute o software AWS IoT Greengrass Core.
Para obter mais informações sobre como configurar e usar o software AWS IoT Greengrass, consulte o seguinte: