LoginSignup
0
0

More than 1 year has passed since last update.

【AWS】Ubuntu Server 18.04にMroongaをインストール(MySQL)

Last updated at Posted at 2021-06-07

構成

今回は、プライベートサブネット内にデータベースを作成していきます。

AWSでのUbuntu Serverの立ち上げ

AWS マネジメントコンソールのEC2の画面からインスタンスの作成をクリックします。
image.png

AMIの選択

Amazon マシンイメージ (AMI)のページで検索欄にUbuntuと入力します。
今回は「Ubuntu Server 18.04 LTS」を利用します。
image.png

インスタンスタイプの選択

インスタンスタイプはt2.microを選択します。
t2.nanoはメモリが足りずMySQLが起動できないという情報が有った為、断念しました。

インスタンスの設定

VPC内のプライベートサブネットを選択しました。
「キャパシティーの予約」だけ開くを選択しました。

ストレージの追加

デフォルトの設定にしました。

タグの設定

Nameタグを設定しました。

セキュリティグループの設定

セキュリティーグループは下記のように設定しました。
image.png

キーペアの選択

新しいキーペアの作成を選択し、キーペアをダウンロードしました。

AWS 踏み台サーバーからUbuntuへのアクセス

踏み台サーバーは、VPCのパブリック内に立ち上げておいてください。

アクセス方法

踏み台サーバーへキーペアをアップロードします。

Ubuntuサーバーのインスタンスを選択し、接続を押すとインスタンスに接続する方法が表示されます。

踏み台サーバーにアップしたキーに対し、chmodでアクセス権限の変更をおこなってください。

その後、「例」の内容をコピーし、sudo権限をつけて実行します。

image.png

結果

下記の画像のように表示された場合、接続が完了しています。
image.png

Ubuntuサーバーからインターネットへアクセスする為の設定

安全にネットワークに接続する為にNATを利用仕様と思います。

NAT GateWayの作成

VPCのページから、「NAT ゲートウェイ」を選択します。
NATゲートウェイのページで、NAT ゲートウェイの作成をクリックします。

image.png

サブネットはUbuntuサーバーを配置したVPC内のパブリックサブネットを選択してください。
Elastic IPは新しいEIPの作成を押してください。

作成されたNATゲートウェイのIDをメモしてください。
nat-0590f6bc305083087
そのまま、ルートテーブルの編集をクリックしてください。

ルートテーブルの作成

VPCのプライベートネットワークに「ルートテーブル」を作成します。

VPCのページからルートテーブルを選択し、ルートテーブルの作成を押します。
名前と対象のVPCを選択し、作成ボタンをクリックします。

image.png

ルートテーブルの編集

先ほど作成したルートテーブルを選択し、ルートの編集を行います。

image.png

ルートの追加を選択し、下記の設定を行います。

  • 送信先 : 0.0.0.0/0
  • ターゲット : 先ほど作成したNATを指定

設定を入力したら、ルートの保存をクリックします。

サブネットの関連付け

先ほど作成したルートテーブルを選択し、ルートの編集を行います。
image.png

Ubuntuのサーバーを設置したプライベートのサブネットを選択し、保存をクリックします。

インターネット接続の確認

踏み台サーバーを経由して、Ubuntuサーバーにアクセスします。
下記のコマンドを実行してください。

実行コマンド
curl https://google.com

下記のような実行結果が表示されれば、正常にネットワークに接続されています。

curl実行結果
ubuntu@ip-XX-XX-XX-XX:~$ curl https://google.com
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="https://www.google.com/">here</A>.
</BODY></HTML>

サーバー等の環境構築は以上です。次からMroongaのインストールを行います。

Mroongaのインストール

PPA (Personal Package Archive)を利用してインストールしていきます。

公式のインストールページには以下の説明が書かれています。
Ubuntu用のMroongaのAPTリポジトリーはLaunchpad上のPPA(Personal Package Archive)を使っています。このPPAからAPTでMroongaをインストールできます。

インストール前の設定

universeリポジトリーとセキュリティアップデートリポジトリを有効化

はじめに、「add-apt-repository」を利用できるようにする為に、「software-properties-common」をインストールします。
利用中の Linux ディストリビューションおよび Linux Standard Base との互換性の識別を補助するためのシンプルなツール 「lsb-release」もインストールします。

sudo apt-get install -y -V software-properties-common lsb-release

次に各リポジトリの有効化を行います。

universeリポジトリーの有効化
sudo add-apt-repository -y universe
セキュリティアップデートリポジトリの有効化
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu $(lsb_release --short --codename)-security main restricted"

PPAをシステムに追加

PPAをシステムに追加するために下記コマンドを実行してください。

PPAシステムの追加
sudo add-apt-repository -y ppa:groonga/ppa
sudo apt-get update

Mroongaのインストール

今回はMySQL用のMroongaをインストールします。

MySQL_Mroonga
sudo apt-get install -y -V mysql-server-mroonga

実行した結果内に「mysql.service」が「Active」になっていた場合、正常にインストールできています。

image.png

MeCabのインストール

今回はMeCabをトークナイザーとして利用したいので、「groonga-tokenizer-mecab」をインストールします。

groonga-tokenizer-mecabのインストール
sudo apt-get install -y -V groonga-tokenizer-mecab

Mroongaがインストールできたかを確認する。

下記のコマンドを実行してMySQLに接続します。
初期の設定は、ユーザー名:rootにパスワード無しで接続できます。

MySQLへの接続
sudo mysql -uroot

Mroongaがインストールされているかどうかを確認します。

エンジンの確認
mysql> SHOW ENGINES;

下記のように実行結果内の「Engine」のカラムにMroongaが存在すれば無事インストールされています。

実行結果
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| Mroonga            | YES     | CJK-ready fulltext search, column store                        | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
10 rows in set (0.00 sec)

一応、バージョンの確認もしておきましょう。

実行するコマンド
mysql> SHOW VARIABLES LIKE 'mroonga_version';
実行結果
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| mroonga_version | 9.11  |
+-----------------+-------+
1 row in set (0.00 sec)

まとめ

これで、正常にMySQLをインストールすることができました。

MySQLの初期設定等は、後日記事にしていこうと思います。

動作確認日

2020年01月15日に動作を確認しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0