我已使用https://docs.aws.amazon.com/quickstart/latest/mongodb/deployment.html处的AWS cloudplatform快速入门创建了mongodb设置。我可以从我的EC2实例成功连接到我,因此已经正确设置了。
由于我需要通过我的spring应用程序连接到它,因此我需要建立一条通过EC2实例到mongodb节点的SSH隧道。
我能找到的唯一相关答案是使用mysql和某种需要模式参数的DataSource对象(我没有,数据库将充满不同种类的实体),所以我不确定如何继续。
我的问题:
答案 0 :(得分:0)
我在专用子网中设置了一个堡垒,并使用ssh隧道通过git-bash访问我的MongoDb集群:
〜/ .ssh / config
Host bastion-host-mongo-forward
User ec2-user
Port 22
IdentityFile ~/admin.pem
HostName ec2-xx-xxx-xx-xxx.compute-1.amazonaws.com
Localforward 3307 ip-10-50-2-24.ec2.internal:27017
Localforward 3308 ip-10-50-3-143.ec2.internal:27017
Localforward 3309 ip-10-50-3-103.ec2.internal:27017
启动隧道:
ssh bastion-host-mongo-forward
之后,您可以设置application.yaml并定位uri:
spring:
profiles: local
data:
mongodb:
uri: mongodb://user:password@localhost:3307,localhost:3308,localhost:3309/databaseName