AWS – Conexão Redshift via SSH Tunnel
Olá pessoal, como estão?
Vou escrever sobre como se conectar no Redshift que está numa subnet privada, usando o client SQLWorkbench. Tinha utilizado esta ferramenta em um dos treinamentos AWS que fiz e depois vi em algum post, então vou utilizá-la. 🙂
Você pode encontrá-la aqui: https://www.sql-workbench.eu. Você também vai precisar fazer o download do driver JDBC do Redshift (aqui).
Como a subnet é privada, não temos acesso direto a ela a partir de nosso PC. Precisamos fazer nosso Tunnel passar pelo bastion-host. Já falamos de algo parecido em outro artigo (AWS – Acessando serviços Web em Subnet Privadas), mas hoje vou falar de como fazer isso no Windows. A idéia é: vamos estabelecer um Tunnel e qualquer requisição a nossa própria máquina (localhost) vai passar por ele. Vai ficar mais claro com o exemplo, vamos lá.
Precisamos do ENDPOINT do Redshift, algo como bonacs-cluster.xxxxx.us-east-1.redshift.amazonaws.com:5439. Você pode encontrá-lo na console:
Com esse endpoint, vamos ao putty. Estou assumindo que você consegue se conectar ao bastion-host normalmente (se tiver dificuldades, comente que tento ajudar).
Procure a opção (1) Tunnel (Connection, SSH), preencha a (2) Sourte port com o valor de sua preferência (será a porta que o localhost estará escutando), o (3) Destination com o endpoint do Redshift e clique no botão (4) Add. Feito isso, acima irá aparecer a (5) config do seu Tunnel.
Agora precisamos voltar a opção Session, preencher com o IP do bastion-host e acessá-lo normalmente.
Uma vez que o acessamos, vamos para o SQLWorkbench.
O primeiro passo aqui é adicionar o driver do Redhift. Clique em baixo no botão Manage Drivers.
Escolha o Amazon Redshift a esquerda e clique no ícone a direita para fazer o import do JAR.
Agora é só testar e ver que sua conexão está funcionando. A URL que deve usar é algo parecido com: jdbc:redshift://localhost:5432/bonacsdb, lembrando que deve utilizar a porta que escolheu no putty e o nome do banco que utilizou na criação do cluster Redshift. Importante: Deixe marcado a opção Autocommit.
Com isso, podemos acessar nosso cluster a partir daí.
Até a proxima.