Como sei se executo na instância do Amazon EC2? [duplicado]

1

Eu tento descobrir se eu corro em um computador normal ou ec2 (de aplicativo baseado em JVM). O método simples pode tentar obter dados de instância , no entanto, isso significa Eu deveria esperar até o tempo limite, e isso não parece certo. Existe uma maneira mais rápida de saber isso?

    
por J-unior 23.06.2014 / 12:13

1 resposta

1

As AMIs do Amazon Amazon vêm com o serviço "EC2Config" instalado. Se pudermos fazer algumas suposições sobre o seu ambiente (como ... você também não está executando algum serviço chamado EC2Config localmente), então você poderá tirar proveito disso.

Se você puder listar os serviços disponíveis em sua máquina, pesquise o EC2Config Get-Service e retorno true se a contagem de serviços nomeados "Ec2Config" for maior que zero:

No EC2:

PS C:\> @(Get-Service -Name "Ec2Config" -ErrorAction 'SilentlyContinue').Count -gt 0
True

Em local:

PS C:\> @(Get-Service -Name "Ec2Config" -ErrorAction 'SilentlyContinue').Count -gt 0
False

Eu não posso ajudá-lo com uma implementação Java, mas algumas informações rápidas sugerem que não deveria ser tão ruim.

    
por 08.07.2014 / 21:05