[AWS] A1インスタンスに ARM版 MongoDBをインストールしてみる #reinvent
こんにちは、菊池です。
re:Invent 2018で、ARMベースのCPU「AWS Graviton Processors」を搭載した新しいEC2インスタンス、A1インスタンスが登場しました。
[速報]ARMベースのプロセッサ”AWS Graviton Processors”を搭載したA1インスタンスがリリースされました! #reinvent
で、みんな大好き(?)MongoDBでも以前よりARMプラットフォームでのサポートがされているってことで、試してみました。
MongoDB の ARMサポート
MongoDBでは、バージョン3.4以降でARM64プラットフォームをサポートしています。OSはUbuntu 16.04 LTSだけですが、こちらもEC2でサポートされるので動作させることが可能です。
やってみた
A1インスタンスの起動
まずはEC2の起動から。AMIは以下を選択しました。
- Ubuntu Server 16.04 LTS (HVM), SSD Volume Type - ami-036ede09922dadc9b (64 ビット Arm)
インスタンスタイプはa1.largeを選びます。
起動しました!
MongoDBのインストールと起動
それではMongoDBをインストールしていきます。公式ドキュメントの手順にしたがっていきましょう。プラットフォームによる差異は無いようです。
まずは/etc/apt/sources.list.d/mongodb-org-4.0.list
ファイルを作成します。
ubuntu@ip-172-31-0-103:~$ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse
続いて、各種パッケージをアップデートしておきます。
ubuntu@ip-172-31-0-103:~$ sudo apt-get update
そしたらmongodb-org
のインストールです。--allow-unauthenticated
をつけないとエラーが出てインストールできませんでした。
ubuntu@ip-172-31-0-103:~$ sudo apt-get install -y mongodb-org --allow-unauthenticated
インストールできたら、mongod
を起動。
ubuntu@ip-172-31-0-103:~$ sudo service mongod start
接続できました!
ubuntu@ip-172-31-0-103:~$ mongo localhost MongoDB shell version v4.0.4 connecting to: mongodb://127.0.0.1:27017/localhost Implicit session: session { "id" : UUID("2c2b5649-cba9-4364-9254-7c6589555953") } MongoDB server version: 4.0.4 : >
ストレージエンジンなども、AMD64版と変わりはないようでした。
> db.serverStatus().storageEngine { "name" : "wiredTiger", "supportsCommittedReads" : true, "supportsSnapshotReadConcern" : true, "readOnly" : false, "persistent" : true }
さいごに
新しいARM64ベースのインスタンス、A1インスタンスにMongoDBを導入してみました。MongoDBではCPU性能を求めるシーンは少ないかと思いますので、安価に利用できるインスタンスとして選択肢に入れていいかと思います。