Conoha DBサーバーの設定方法
はじめに
ConoHa VPSの解説は別ページをご参照下さい。
このページはDBの利用・設定方法だけに特化しているページです。
なお、ConoHaにはサーバー間のプライベート接続という機能が提供されていますが、それとデータベースのプライベート接続は両方同時に使えるものではないので、注意して下さい。
Webサーバー間でローカル接続をさせたいという場合には、データベースへのプライベート接続を選んだ時に提供されるローカル接続のIPアドレスを互いに使うことになります。
ConoHaのDBサーバーとは
所謂マネージドDB。
但し、サーバースペックについては未保証(あくまで共有サーバー的なものとして提供される)。
DBはデータの保全等クリティカルな部分なので、任せられるのなら任せたい。
ConoHaを使うのなら一番の理由にはなると思う。
Conoha DBサーバの設定方法・使い方
初めに
Conohaも公式のヘルプ記事を用意しています。
https://support.conoha.jp/v/dbnetwork/
基本そちらをベースに見て頂きながら、分からないところ・別説明を見たい時に、この文章をご活用下さい。
下準備: DBに接続するWebサーバーをDBサーバー接続用ネットワークに追加する
WebサーバーとDBサーバーは、何も設定しなければ、同じConohaのサーバーでも、インターネットを通じて会話してしまう。
ただ、効率とセキュリティ上、ローカルネットワークで会話させたいので、ローカルネットワークを通じて会話させるようにする。
その為には、まずWebサーバーを管理画面から停止
そして
ネットワーク > プライベートネットワーク > DBサーバー接続用ネットワーク
と移動し、対象のVPSインスタンスのセレクトボックスで「接続する」を選んで保存する。
そしてVPSインスタンスを起動。
DBの設定
サーバーの追加 > DBサーバー
と移動し、
・サーバースペック
・名前付け(ネームタグ)
・自動バックアップ有無
の選択をする。
なお、自動バックアップを選ぶと、
一日一回バックアップを取得し、3世代まで管理
できる。
月300円。
データベースとデータベースユーザの追加
サーバーのタブを押すと見えるサーバ一覧にDBサーバーが現れている
DBサーバーのネームタグをクリックして詳細に進む。
データベースは、サービスの名称とかを考慮しながら、データベース名とネームタグを記入して保存
ユーザーリストの方は
ユーザー名
パスワード
ユーザー種別(通常は「一般ユーザ」で問題ない)
を指定し、接続許可ホストのIPアドレスを指定する。
この場合はWebサーバーのIPアドレスを入力しておけば良い。
そして保存すると、ユーザーの方には接続先データベースという入力欄が新たに出てくるので
作ったデータベースを指定して選ぶ。
データベースヘの接続
サーバーをクリックして、サーバー一覧からDBをクリックしてDB情報の詳細に移動。
そうすると
接続先ホスト名
グローバルネットワーク …
と
プライベートネットワーク …
がある。
グローバルネットワークはインターネットを通じて外部からアクセスするホスト名、
プライベートネットワークはローカルネットワーク内に閉じてアクセスするホスト名。
ここからWebサーバーインスタンスのローカルIPアドレスをDBサーバと会話できる領域に設定する必要がある。
vi /etc/sysconfig/network-scripts/ifcfg-eth1
と打って
DEVICE=eth1 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=172.21.***.*** NETMASK=255.255.254.0
といった内容を入れる。
IPADDRにいれるべき値は、
サーバー > Webサーバに使うVPSのインスタンスをクリック > ネットワーク情報 > 表示NICのセレクトボックスからshared-…というのを選択
した時表示されるIPアドレス。
次は、特定のネットワークへのルーティングの定義をする(プライベートネットワークの方を使わせ、インターネット経由でアクセスしようとさせない為)。
vi route-eth1
と打って
$リージョンのネットワークアドレス via $eth1のゲートウェイのIPアドレス dev eth1
と入れて保存する。
なお、$リージョンのネットワークアドレスは、
東京リージョン:
(IPアドレスが172.21.***.***の場合)172.21.74.0/23
(IPアドレスが172.29.***.***の場合)172.29.92.0/23
アメリカリージョン: 172.21.92.0/23
シンガポールリージョン: 172.21.110.0/23
となっている。
その反映が終わったら
service network restart
でネットワーク設定を反映。
※上記コマンドが使えなければ「systemctl restart NetworkManager.service」と打つ
最後に検証として、使う方のホスト名に対し
telnet ホスト名 3306
と打ってみて繋がるか確認してみる。
繋がらなければ何かおかしいので、手順を再度確認する事。