使う前に

Q. インストール型PostgreSQLはどんな商品ですか。

  • ご希望のCentOSバージョンにPostgreSQLをいくつかの設定とクリックだけで簡単に構築できるBasic Install機能だけをサポートする商品です。 これに関連して提供されたインストール以外の部分については、技術支援を提供していません。
  • 「PPostgreSQL」は拡張可能性および標準遵守を強調するオープンソース・オブジェクト関係データベース(ORDBMS)であるPostgreSQLを利用しています。

Q. DBサーバーを作成する前にあらかじめ準備しなければならないものがありますか。

  • インストール型PostgreSQLDB商品は、現在NAVERクラウドプラットフォーム内部からのみアクセス可能なので、DBサーバーにアクセスするアプリケーションサーバーもNAVERクラウドプラットフォーム内部にある必要があります。
  • どのサービスでDBを使用し、使用量がどれくらいになるかを事前に予測し、サーバータイプを算定しなければなりません。

Q. DB サーバーで作成できるサーバータイプにはどんなものがありますか。

  • インストール型PostgreSQL商品では、お客様の用途に合わせて複数のサーバータイプの中から一つを選択することができます。
サーバータイプ 用途
2 vCPU, 4GBメモリ 最も小さいサーバータイプで、開発、テストDB、個人のブログなどに適しています。
4 vCPU, 8GBメモリ 小さなサーバタイプで小さなコミュニティまたは個人ショッピングモールの構築などに適しています。
8 vCPU, 16GBメモリ 一般的なサーバータイプで、スタートアップホームページ、サービスDBに向いています。
16 vCPU, 32GBメモリ 最大のサーバータイプで、ゲームDB、ショッピングモールDB、または中型サービスDBに適しています。

Q. DBサーバーの作成手続きはどうなりますか。

  • コンソールに接続した後、次のステップでDBサーバーを作成することができます。

database-6-1-101

  • コンソール接続:NAVERクラウドプラットフォームで提供する コンソールに接続します。
  • サーバー設定:ストレージの種類,サーバータイプ,サーバー名などを決めます。
  • 認証キーの設定:保有している認証キーを活用したり、なければ新しい認証キーを作成します。
  • ファイアウォールの設定:保有しているACGを選択するか、または新規ACGを作成します。
  • 最終確認:サーバータイプなどのサーバー設定情報とユーザーが選択した料金プラン情報などを最終確認し、DBサーバーを作成します。

Q. DBサーバーが作成される時、どのようなOSがインストールされ、提供されるディスクの大きさはいくらですか?

  • 運営体制はLinuxであり、CentOS 6またはCentOS 7バージョンのうち、選択してインストールすることができます。
  • インストール型のPostgreSQL商品の場合、オペレーティングシステム用の基本ディスクは50GBが提供され、DBサーバ料金に含まれています。
  • オペレーティングシステムがインストールされる基本ディスクは容量変更ができません。

Q. データベースストレージとは何ですか。

  • 最初のDB作成時、HDDとSSDの中で選択可能で、これによって異なる料金が適用されます。
  • サービスのためのDBの場合、なるべく高性能I/Oが提供されるSSDタイプをお勧めします。

Q. インストール型PostgreSQL商品のライセンスは何ですか?

  • PostgreSQLは、BSDまたはMITライセンスと同様の自由なオープンソースライセンスであるPostgreSQLライセンスとして配布されます。
  • PostgreSQLのGPLライセンス詳細については、「The PostgreSQL Licence (PostgreSQL) | Open Source」をご参照ください。

PostgreSQL インストール型サービスのご紹介

NAVERクラウドPostgreSQLインストール型サービスの概念と基本構造を説明します。

PostgreSQL ご紹介

PostgreSQLは、世界で最も安定的で進歩的なオープンソースと評価されるDBMSです。 完璧なトランザクション(ACID)と高い同時性制御(MVCC)をサポートすることで、効果的なコスト管理が可能です。

インストール型サービス

NAVERクラウドで支援するPostgreSQLインストール型サービスの場合、基本的な9.4バージョンのインストールを支援し、PostgreSQL ServerがStartupされた状態で提供されます。 これに関連し、DBインストール以外の部分については、技術サポートは提供しません。.

インストール方法及びパッケージ

PostgreSQLのインストールの場合、Source Compile / RPM / Binaryのインストール方法があり、 NAVERクラウドではNormalInstall方法であるRPMインストールイメージを提供します。

インストールRPMのインストールには PostgreSQL(postgresql.org)で公式的に提供する.repoファイルを使用し、Repoで提供するLatest Versionを基本にサーバーイメージに含めて提供します。

以下はデフォルト設定でインストールされるパッケージリストです。

  • postgresql94-server
  • postgresql94
  • postgresql94-libs

インストールディレクトリー

項目 位置
DATADIR ($PGDATA) /var/lib/pgsql/9.4/data
LOGFILE $PGDATA/pg_log
postgresql.conf $PGDATA/postgresql.conf
pg_hba.conf $PGDATA/pg_hba.conf
pg_defaultテーブルスペースの物理的位置 $PGDATA/base
pg_global テーブルスペースの物理的位置 $PGDATA/global

遠隔接続のための環境設定方法(CentOS 6/7共通)

PostgreSQLは最初のインストール時にlocalhost(127.0.0.1)でのみアプローチを許可するために、遠隔接続が不可能です。 したがって、NAVERクラウド内のPostgreSQLインストール型イメージから遠隔接続を許容するには、以下のように環境設定ファイルを変更する必要があります。

  • postgresql.conf

    基本的な PostgreSQL DB ファリオメーターの設定ファイルです。 PostgreSQLのListen Addressの基本設定はLocalhost(127.0.0.1)だけを許可するので外部からアクセスできません。 したがって、この設定をIP *(全体)に変更した後、サーバーを再起動する必要があります。 基本、ポート番号は5432であり、必要時に変更することができます。

    vi /var/lib/pgsql/9.4/data/postgresql.conf
    * listen_addresses = '*'  # 全てのIPに対するremote接続を許可します。
    * port = 5432             # ご希望のport番号を設定します。
    
  • pg_hba.conf

    host-based authenticationの略で、認証関連設定ファイルです。 HOST、DATABASE、USER、ADDRESS、METHOD情報で構成されます。

    基本的に下記設定が適用されていますので、別途内容を修正する必要はありません。 アカウントに対するアプローチを暗証番号方式に変更して秘密番号をmd5で暗号化して伝送します。

    vi /var/lib/pgsql/9.4/data/pg_hba.conf
    * host    all             all             0.0.0.0/0                 md5
    

PostgreSQL インストール型サービス管理

PostgreSQLインストール型サービスに関連する管理方法を説明します。

PostgreSQLイメージサーバー作成

PostgreSQLインストール型商品としてイメージサーバーを作成すると、PostgreSQLDBのインストールおよびdaemonがStartupされた状態で提供されます。

サーバ作成

PostgreSQLイメージがインストールされたサーバーを作成する方法を説明します。

Step 1. www.ncloud.com 接続およびログイン

database-6-1-102

① 右上段のコンソールを選択し、コンソールに接続します。

Step 2. サーバ作成

database-6-1-103

サーバー作成をクリックします。

Step 3. サーバーイメージ選択

database-6-1-104

① フィルタ条件をDBMSに設定します。

② 希望バージョンに該当するPostgreSQLを選択します。

database-6-1-105

③ PostgreSQLに関するお知らせを確認した後、確認をクリックします。

Step 4. サーバー設定

database-6-1-107

① 希望のサーバータイプを選択します。

② ご希望のサーバー名を入力します。

次のをクリックします。

Step 5. 認証キー設定

認証キーの設定段階では、新しい認証キーを作成したり、既存の認証キーをそのまま使用することができます。

database-6-1-108

① 最初のユーザーは、新しい認証キーの作成を選択し、認証キーの名前を入力します。

② ここでは、PostgreSQLncloudkeyという名前で認証キーを入力しました。

③ 認証キーの作成および保存をクリックし、ダウンロードされたPostgreSQLncloudkey.pemファイルを安全な場所に保存します。

  • このファイルは、今後サーバーの暗号を作るのに使用されます。
  • 同じpemファイルを使用しても、それぞれのサーバーにすべて異なる暗号が作成されます。

をクリックします。

Step 6. ファイアウォールの設定

ファイアウォールの設定では、ACG(Access Control Group)を作成するか、保有ACGを選択します。

database-6-1-109

① 最初に作成する場合は、ACG作成をクリックします。

database-6-1-110

② ACG 名を入力します。 ここでは、PostgreSQLを入力しました。

③ アクセスを試みるところのIP アドレスやIP アドレス帯域を記入します。 例えば、単一IPアドレスの場合10.64.51.205だけ入力して、10.64.51.XXX帯域ですべてのアクセスが必要な場合、10.64.51.0/24を入力します。 内部 Private IP アドレスが NAT 方式で外部に出る場合は、Public IP アドレスを入力しなければなりません。 ここでは0.0.0.0/0を入力しました。

④ ポートを個別にオープンする場合、必要なポート番号を許容ポート(サービス)に入力し、追加をクリックします。 必要なポートが複数である場合、項目を追加して入力することができます。 すべてのポートをオープンした場合、1-65535を入力すればいいです。 (ただし、この場合のサーバーは、セキュリティが脆弱になる可能性があるで、なるべく一本ポート(例:5432)入力を推奨致します。 ともに、単一ポートを指定するときはsshのデフォルトポート(22)またはポートフォワーディングポートを必ず追加登録しなければなりません。)

⑤ 右側の追加をクリックします。

database-6-1-111

⑥ 作成されるサーバーの最終設定を確認します。

作成をクリックします。

Step 7. 最終確認

上の段階まで進めた後、pem keyファイルを私のコンピュータの安全な場所に保管してACG設定を記憶していなければなりません。 pemキーがなければ作成したサーバーにアクセスできないので特に留意します。

database-6-1-112

サーバー作成をクリックします。

database-6-1-113

② サーバーが作成されるまで待機します。

サーバ初期設定手順

サーバーを作成した後、サーバーにアクセスするためには、公認IPアドレスを設定するか、ポートフォワーディングを設定しなければなりません。 GUI(pgAdmin) Toolを利用するには、必ず公認IPアドレスを設定する必要があります。

公認IPアドレス設定

上記に作成したサーバーに外部からアクセスするためには、公認IP アドレス設定が必要です。

database-6-1-114

① メニューからPublic IPをクリックします。

公認IP申込をクリックします。

  • 公認IPアドレスは、保有しているサーバーの数だけ申込することができます。

database-6-1-115

③ 作成されたサーバーを選択します。

確認をクリックします。

database-6-1-116

確認をクリックします。

database-6-1-117

⑥ 数分後、IPアドレスが割り当てられます。

  • 正常な公認IPアドレスが割り当てらればターミナルプログラムを利用して49.50.163.107:22に当該サーバにすぐアクセスすることができます。

ターミナルアクセスのためのポートフォワーディング設定

ポートフォワーディング情報に案内されたサーバー接続用の公認IPアドレスを利用してサーバーに接続するためには、ポートフォワーディングを設定する必要があります。

database-6-1-118

① サーバーを選択し、上段のポートフォワーディング設定をクリックします。

database-6-1-119

② 下画面のポートフォワーディング設定でssh 接続のための外部ポートを登録します。

③ 外部ポートの登録後、追加をクリックします。

適用をクリックします。

  • 上ポートフォワーディングの設定を通じてpostgresqlサーバー名に101.101.160.130:1234設定情報に接近することができます。

サーバーパスワードの確認

database-6-1-121

① 必要なサーバーを選択します。

サーバー管理および設定変更メニューから**管理者パスワードの確認をクリックします。

database-6-1-122

③ 認証キーの入力欄に私のコンピュータに保存されたPostgreSQLncloudkey.pemファイルをアップロードします。

パスワードの確認をクリックします。

database-6-1-123

⑤ 最初の作成時に提供される管理者のパスワードが表示されます。

  • 最初の作成時に提供される管理者のパスワードを使用して最初にログインした後は、今後の管理のためにサーバーでパスワードを変更することができます。

ターミナルを利用した接続

ターミナルを利用してサーバーにNAVERクラウドプラットフォームPostgreSQLに接続する方法について説明します。

公認IPアドレスからのアクセス

database-6-1-124

① サーバーの接続情報を入力します。

 ● PORT:基本、ポート番号(22)  ● 公認IP:発行された公認IPアドレス(例:49.50.172.79)

開くをクリックします。

database-6-1-125

はいをクリックして接続します。

database-6-1-126

④ アカウント名のroot を入力し、Enter キーをクリックします。

⑤ 管理者パスワードで確認したパスワードを入力します。

ポートフォワーディングからのアクセス

database-6-1-127

① サーバーの接続情報を入力します。

  • PORT:ポートフォワーディングに設定したポート番号(例:1234)
  • 公認IP:ポートフォワーディング画面に案内されたサーバー接続用公認IPアドレス(例:49.50.172.79)

開くをクリックします。

database-6-1-128

はいをクリックして接続します。

database-6-1-129

④ アカウント名のroot を入力し、Enter キーをクリックします。

⑤ 管理者パスワードで確認したパスワードを入力します。

サーバーイメージ作成以後

  1. サーバー作成後、すぐに利用しない場合、セキュリティリスクを避けるために、PostgreSQL Daemon ShutDownを推奨します。

  2. 作成されたPostgreSQLの場合は、パスワードが設定されなかったために必ずパスワードを設定です。

PostgreSQL 起動/停止方法

PostgreSQL DBの起動および停止は、下記コマンドで実行します(root アカウントで実行)。

-- CentOS 6
shell> service postgresql-9.4 start
shell> service postgresql-9.4 stop

-- CentOS 7
shell> systemctl start postgresql-9.4
shell> systemctl stop postgresql-9.4

DB 駆動状態およびリストインポート確認方法

DBの駆動状態は、下記コマンドで確認します(rootアカウントで実行)。 コマンド実行結果CentOS 6/7共通にrunningという単語が見えなければなりません。

-- CentOS 6
Shell> service postgresql-9.4 status
-- CentOS 7
Shell> systemctl status postgresql-9.4

Listenポートは、以下のようなコマンドで確認します。 コマンド実行結果5432ポートがlisten状態でなければなりません。

Shell> netstat -tunlp | grep post

PostgreSQL パスワードの変更方法

PostgreSQL Passwordポリシーによって初期パスワードは指定されません。 最初の接続時には必ずパスワードを変更しなければなりません。 パスワードを変更するコマンドは次の通りです。

Shell> sudo su - postgres
Shell> psql
postgres=> alter user postgres with password 'パスワード';
PostgreSQL DB port 変更方法

PostgreSQL接続の際に使われるポート番号5432はユーザによく知られたポート番号だからセキュリティホールが存在します。 したがって、自分だけの固有のポート番号を決めて使用することを推奨します(例:15432)。 追加でACG(Access Control Group)の許容、ポート番号(例:15432)も同様に設定することを推奨します。

ポート番号は、下記のコマンドを使用して変更します。

  1. conf 設定の変更

     vi /var/lib/pgsql/9.4/data/postgresql.conf
     port = 15432    # ポート番号変更
    
  2. PostgreSQL 再起動

     # root アカウント
     -- CentOS 6
     shell> service postgresql-9.4 restart
    
     -- CentOS 7
     shell> systemctl restart postgresql-9.4
    
  3. 変更されたListenポート番号の確認

     shell> netstat -tunlp | grep post
    

ローカルからPostgreSQL DBへの接続方法

Shell> sudo su - postgres
Shell> psql
postgres=# \h  >> ヘルプを見る
postgres=# \q  >> 出る

遠隔サーバー(ウェブサーバーまたは他のDB)からPostgreSQLにアクセスする方法

Shell> sudo su - postgres
Shell> psql -h IPアドレス -p 5432 -U ユーザー名 -d DB名
       Password for user : パスワード入力
postgres=# \h  >> ヘルプを見る
postgres=# \q  >> 出る

※ 参考

基本的に遠隔接続のための環境が設定されていなければなりません。 より詳しい内容は、本文書のpostgresql.confファイル修正方法をご参照ください。

GUI(pgAdmin) Toolを利用したPostgreSQL接続方法

本人のPCのWindows環境からPostgreSQLサーバーに接続しなければならないので、追加でPostgreSQLサーバーに公認IPアドレスを割り当てなければなりません。 Public IPメニューで公認IP申込を選択し、適用サーバーの選択から該当サーバーを選択します。

pgAdmin Toolに関するより詳しい内容は下記アドレスで確認できます。

※ 参考

基本的に遠隔接続のための環境が設定されていなければなりません。 より詳しい内容は、本文書のpostgresql.confファイル修正方法をご参照ください。

基本Data Directoty変更方法

  1. postgres daemon stop

     -- cent 6
     service postgresql-9.4 stop
     -- cent 7
     systemctl stop postgresql-9.4
    
  2. 新規ディレクトリ作成

     mkdir -p /var/lib/pgsql/NEW_PGDATA
    
  3. ディレクトリオーナー及び権限変更(700必須)

     chown -R postgres:postgres /var/lib/pgsql/NEW_PGDATA
     chmod 700 -R /var/lib/pgsql/NEW_PGDATA
    
  4. postgresユーザの.bash_profile環境変数の変更

     vi /var/lib/pgsql/.bash_profile
     変更前 : PGDATA=/var/lib/pgsql/9.4/data
     変更後 : PGDATA=/var/lib/pgsql/NEW_PGDATA
    
  5. pstgres service 設定変更

     -- cent 6
     # root ユーザから実行
     vi /etc/init.d/postgresql-9.4
     >> PGDATAと PGLOG ディレクトリパスを変更します。
     変更前 : PGDATA=/var/lib/pgsql/9.4/data
     変更後 : PGDATA=/var/lib/pgsql/NEW_PGDATA/data
    
     変更前 : PGLOG=/var/lib/pgsql/9.4/pgstartup.log
     変更前 : PGLOG=/var/lib/pgsql/NEW_PGDATA/pgstartup.log
    
     -- cent 7
     # root ユーザから実行
     vi /usr/lib/systemd/system/postgresql-9.4.service
     変更前 : Environment=PGDATA=/var/lib/pgsql/9.4/data/
     変更後 : Environment=PGDATA=/var/lib/pgsql/NEW_PGDATA/data
    
  6. 新しいPostgres datadirにデータ移転

     # postgres ユーザから実行
     mv /var/lib/pgsql/9.4/data /var/lib/pgsql/NEW_PGDATA/
    
  7. postmaster.opts ファイルを削除

     rm /var/lib/pgsql/NEW_PGDATA/data/postmaster.opts
    
  8. postgres daemon reload & start

     -- cent 6
     service postgresql-9.4 reload
     service postgresql-9.4 start
     -- cent 7
     systemctl daemon-reload
     systemctl start postgresql-9.4
    

PostgreSQLイメージサーバーを返却

NAVERクラウドでPostgreSQLが作成されたサーバーを返却する際、以下のような手順を経て返却することを推奨します。

  1. PostgreSQLで保存したデータをバックアップし、ダウンロード後別途保管

     Shell> sudo su - postgres
     Shell> pg_dumpall > '保存される dump file名'
    
  2. PostgreSQL サーバー停止

  3. PostgreSQLが保存されたデータディレクトリ削除

    • 예: rm -rf /var/lib/pgsql
  4. NAVERクラウドコンソールで停止 -> 返却手順で返却進行

関連情報リンク

下記の公式マニュアルで関連情報を確認することができます。

に対する検索結果は~件です。 ""

    に対する検索結果がありません。 ""

    処理中...