Node.js 无法从AWS lambda连接AWS红移
我正在尝试从AWS Lambda函数连接到AWS红移:Node.js 无法从AWS lambda连接AWS红移,node.js,amazon-web-services,aws-lambda,amazon-redshift,node-modules,Node.js,Amazon Web Services,Aws Lambda,Amazon Redshift,Node Modules,我正在尝试从AWS Lambda函数连接到AWS红移: var Redshift = require('node-redshift'); const getLOOKUP_LOV_JSON= async ()=>{ try{ var client = { host: "redshift-host", user: 'admin', database: 'dev', password: 'password
var Redshift = require('node-redshift');
const getLOOKUP_LOV_JSON= async ()=>{
try{
var client = {
host: "redshift-host",
user: 'admin',
database: 'dev',
password: 'password',
port: "5439"
};
return new Promise(function (resolve, reject) {
var redshiftClient = new Redshift(client, {rawConnection: true});
console.log("before Connect");
redshiftClient.connect(function(err){
console.log("after connect");
if(err){
console.log(err);
throw err;
}
else{
redshiftClient.query('SELECT * FROM "Persons"', {raw: true}, function(err, data){
if(err){
console.log(err);
throw err;
}
else{
console.log(data);
redshiftClient.close();
}
});
}
});
我的代码在连接之前执行方法,我的记录器中没有任何问题,它只打印“连接之前”。需要配置AWS Lambda函数,以连接到与Amazon Redshift群集相同VPC中的私有子网 您将遇到超时问题。要解决这个问题,您需要将lambda函数放在VPC中 您可以按照教程进行操作 然后在端口5439上lambda函数安全组的红移安全组中添加入站规则
这是否回答了您的问题?