0

J'ai un cluster Redshift dans mon compte AWS. Je suis en mesure de s'y connecter en python et quand je lance le script localement, il fonctionne parfaitement bien:Comment se connecter au cluster redshift Amazon à partir de mon instance Amazon EC2

import psycopg2 
con = psycopg2.connect(dbname='some_dbname', host='hostname.us-east-2.redshift.amazonaws.com', port='port#', user='username', password='password') 
    cursor=con.cursor() 
    query = "select * from table;" 
    cursor.execute(query) 
    data = np.array(cursor.fetchall()) 
cursor.close() 
con.commit() 
con.close() 

Mais, quand je copie le script ci-dessus à mon instance EC2 (Amazon Linux AMI), puis essayer en cours d'exécution, je reçois l'erreur suivante:

conn = _connect(dsn, connection_factory=connection_factory, **kwasync) 
psycopg2.OperationalError: could not connect to server: Connection timed out 
    Is the server running on host "hostname.us-east-2.redshift.amazonaws.com" and accepting 
    TCP/IP connections on port port#? 

Quelqu'un peut-il me aider dans la façon de se connecter à mon groupe de Redshift de mon instance EC2? Merci!

+1

Avez-vous ouvert le port dans le groupe de sécurité affecté au cluster Redshift pour autoriser les connexions depuis l'instance EC2? –

+0

@MarkB Non, comment je fais ça? – Rajiv

+0

Comment avez-vous ouvert le groupe de sécurité pour autoriser l'accès depuis votre ordinateur local? C'est le même processus. –

Répondre

0

Il est soit des groupes de réseau ou de sécurité

When you provision an Amazon Redshift cluster, it is locked down by default so nobody has access to it. To grant other users inbound access to an Amazon Redshift cluster, you associate the cluster with a security group.

Voir http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html

Si l'EC2 est dans le même VPC que le cluster de Redshift vous devriez être ok pour la mise en réseau. Sinon, consultez ce guide http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html

+0

Alors quand je vais dans mon instance EC2, et sous l'onglet Description, je clique sur Security Groups, je vois que son ID VPC est le même Comme pour le cluster Redshift, les deux identifiants de groupe sont différents, mais je n'arrive toujours pas à me connecter et ça expire, désolé, très nouveau. – Rajiv