2017-09-14 17 views
1

私はElastic Beanstalk用のスプリングブートマイクロサービスに取り組んでおり、展開時にRDS認証情報がアプリケーションにどのように渡されるのかを明確にしたいのですか?スプリングブートRDS接続資格情報

以前私はCloud Foundryと協力していましたが、Spring Cloud ConnectorsライブラリはDataSourceのインスタンスを取得するために使用できる専用のCloudクラスを提供しているため、ログイン/パスワードを明示的に指定する必要はありません。 AWSで

私が明示的にアプリケーション環境での資格情報を指定する必要があることと思われる RDS_HOSTNAME、RDS_USERNAME、RDS_PASSWORD、... (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.RDS.html?icmpid=docs_elasticbeanstalk_console) そして、私は中(春クラウドAWSが自動的にそれを行うことができます例が見つかりませんでしたCFと同じ方法)。

私にとっては、AWSの一般的な方法は不便です。 また、アプリケーションライフサイクルにバインドされたアプリケーションと統合されたRDSインスタンスが自動的に設定されている場合、外部のRDSインスタンスの場合にこれを行うことができないのはなぜですか?

答えて

0

これは、Elastic BeanstalkアプリケーションにRDSインスタンスを統合する場合、Elastic Beanstalk環境に割り当てられる標準環境変数です。それを統合しない場合は、eb setenvコマンドを使用して、EB環境でそれらの(または類似の)環境変数を作成するだけで済みます。

この同じメカニズムは、RDSインスタンス以外のものにも使用されることに注意してください。おそらく、RedisやMongoDBデータベースのような外部サービスや、Elastic Beanstalkアプリケーションがアクセスする必要がある何らかのAPIがあるかもしれません。環境変数を作成することで、セキュリティ資格情報とアプリケーションに必要な環境固有のエンドポイントの両方を指定できます。

システム環境変数にアクセスするための標準Java/Springメソッドを使用するだけで、これらの値をアプリケーションに取り込むことができます。

+0

私は、AWSのRDSバインディングがCloud Foundryと類似していると考えました。ここで、データベースサービスをバインドし、Spring Cloud Connectorsから既に設定されたDataSourceを取得できます。 –

関連する問題