はじめに
QGISサーバーの構築について色々と試しているのだが、その際にローカルで作成したQGISプロジェクトファイルをアップロードして、QGISのWebClientでも問題なく表示できるか試そうとしている。
しかし、QGISプロジェクトファイルが参照しているデータ先を共通の宛先にしないと表示確認が面倒なので、別途外部からの接続が可能なDBサーバーを用意しようと考えている。
EC2の様にインスタンスを立てて普通にPostgreSQLを入れればできるのだが、せっかくなのでRDSを使ってみて、楽さを実感しようと思った。記事にする様な内容でもないかもしれないが、時間もかからないので一応メモとして残すことにした。
メモの内容
1.AWSサービスのRDSよりPostgreSQL構築
2.外部から接続するための設定追加
1.AWSサービスのRDSよりPostgreSQL構築
RDS for PostgreSQL バージョンに同梱されている PostGISのバージョンはこちらのサイトに記載があるので、今回はこれを見て、"PostGIS2.5.2" のバージョンが同梱されているPostgreSQLのバージョンを選択。
AWSサービスの中から『RDS』を選択し、『データベース』から **"データベースの作成"**をクリック。
設定は下図を参考に。
※今回はPostGIS2.5.2のバージョンが同梱されている、PostgreSQLのバージョンを選択。
ローカルPCやGCP上のVMインスタンスから接続をしたいので、パブリックアクセスは有りにし、通常のパスワード認証を使用。(後にIPフィルタは設定する予定)
最後に右下の方にある『データベースを作成』をクリックすれば、選択したエンジンが搭載されたインスタンスが立ち上がる。(1分もかからず構築できた)
2.外部から接続するための設定追加
ローカルとGCP上のインスタンスから接続できる様に、インバウンド設定にIPアドレス[許可]を追加する。
『セキュリティグループのルール』をクリック。
※青枠のエンドポイントは、外部から接続する際のホスト名。
インバウンドルールの中の 『Edit inbound rules』をクリックする。
次の画面で新しいルールを追加でき、そこで許可IPアドレスの追加などができる。
(デフォルトで自分のグローバルIPが入っていてビックリした!DB作成時にAWSコンソールに接続している端末は、インバウンド許可ルールに追加されるっぽい。)
pgAdmin
などで試しに接続してみて、スキーマやテーブルを作成できればOK!(GISの拡張機能を有効にしたい場合は、有効にしたいDB内でCREATE EXTENSION postgis;
を実行すればよい)