Como configurar valores de dados do usuário do AWS EC2 e script bash


1

Ao iniciar uma instância do AWS EC2, você pode fornecer uma sequência de dados do usuário que seja interpretada como chave, pares de valores com algumas variáveis ​​de configuração ou como um script bash, se começar com uma #!/bin/bashlinha.

Estamos usando um software de terceiros que precisa de um par de chave e valor a ser fornecido, mas também estamos configurando a máquina no horário de início usando um script bash. Eu adicionei a chave, par de valores como uma variável de ambiente no script bash usando export KEY=VALUE, mas parece não funcionar e chegar à configuração do programa de terceiros.

Eu sei que eu poderia dar a chave, pares de valores e, em seguida, executar o script bash usando ssh, mas é muito mais difícil, pois tenho que esperar a instância para estar pronta para fazê-lo.

Alguém fez isso com sucesso?

Respostas:


1

Infelizmente, você não descreve qual tipo de Linux está usando, mas o bash pode ser um bom ponto de partida. Quando uma instância do EC2 está iniciando, os dados do usuário serão executados e a variável estará disponível apenas durante essa sessão.

Se você quiser usar variáveis ​​ENV, poderá implementá-las na .bashrcraiz (ou no usuário .bashrcque executará o aplicativo de terceiros). Se você quiser variáveis ​​ENV em todo o sistema, implemente-as em /etc/profileou /etc/environment/. Inclua as variáveis ​​em seu script de bash de dados do usuário como este:echo KEY=VALUE >> /etc/environment

Você também pode tentar este artigo / howto , com mais exemplos.


Eu estava falando sobre dados do usuário do AWS EC2 e não sobre variáveis ​​de ambiente do shell. As variáveis ​​de dados do usuário são tomadas pelo gerenciador de instâncias da AWS como uma configuração para fazer as coisas sem a necessidade de chamar os comandos diretamente.
cserpell
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.