6

Esta es una pregunta principalmente sobre Chef. Cuando busco controlar los nodos dentro de Amazon VPC con Chef, me encuentro con algunas dificultades, principalmente que un nodo que no tiene una dirección IP externa no es fácilmente accesible por el chef.¿Cómo lanzar una instancia de amazon ec2 dentro de VPC usando Chef?

Fui a través del tutorial básico para el escenario # 2 http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_Scenario2.html#Case2_Launch_NAT

Sin embargo, esto esta el tiempo de espera:

knife ec2 server create -N app-server-1 -f m1.small -i rails-quick-start.pem -r "role[base]" -G WebServerSG -S rails-quick-start -x ubuntu -s subnet-580d7e30 -y -I ami-073ae46e -Z us-east-1d 

¿qué estoy haciendo mal?

Respuesta

1

La solución fue configurar un túnel y tunelizar el ssh en algún puerto de una computadora visible públicamente a todas las demás computadoras en la nube. Así que mi equilibrador de carga sirve tráfico http en el socket 80, es accesible a través del socket 22, y usa los zócalos 2222, 2223, 2224, ... para tunear ssh a instancias de nube no públicas. En equilibrador de carga (o cualquier instancia pública) ejecutar:

ncat --sh-exec "ncat PRIVATE.SUBNET.IP 22" -l 2222 & 

por ejemplo:

ncat --sh-exec "ncat 10.0.1.1 22" -l 2222 & 
1

Para que la cuchilla pueda comunicarse con el servidor, es posible que deba configurar una VPN. Si su VPC ya está conectada a su red local a través de una VPN, entonces debería funcionar, pero si no, es posible que desee ejecutar un servidor OpenVPN o algo similar.

También puede configurar servidores de otras dos maneras:

  1. Crear una instancia EC2 y deje que se arranca. A continuación, ejecute cuchillo bootstrap contra él.
  2. Crea una instancia de EC2 con los datos de usuario adecuados y configúrala en la nube (si ejecutas ubuntu con incluye cloud-init).
+0

Estoy intentando específicamente el escenario 2, aunque ... ¿Hay alguna forma de usar Chef con Amazon VPC y sin hardware adicional, solo NAT y reenvío de puertos? –

+0

Si sus servidores pueden llegar a Internet, entonces debería estar bien. Si no, necesitaría configurar un servidor Chef dentro de su VPC y apuntar con su script de inicio de nube. Las VPC pueden ser bastante complicadas y todo depende de si sus servidores están en una subred "pública" o una subred "privada". –

0

Tiene que haber una manera de asociar un IP elástico a la instancia con el fin de obtener una IP pública fácil acceso y luego realice todas las actividades de arranque y SSH a través del EIP.

+1

No realmente, puede configurar instancias sin asignarle IP públicas. Una de las razones para usar VPC en primer lugar es no tener direcciones públicas en todos los nodos. –

Cuestiones relacionadas