{DocumentDB}Amazon DocumentDB の使用開始

-- 1. Amazon DocumentDB クラスターの作成

aws docdb describe-orderable-db-instance-options \
--engine docdb | jq -rc '.OrderableDBInstanceOptions[] | [ .EngineVersion, .DBInstanceClass ]'


aws docdb create-db-cluster \
--db-cluster-identifier cluster01 \
--engine docdb \
--engine-version 4.0.0 \
--master-username test \
--master-user-password 'password' \
--no-storage-encrypted \
--no-deletion-protection

aws docdb create-db-instance \
--db-instance-identifier instance01 \
--db-instance-class db.t3.medium \
--engine docdb \
--no-auto-minor-version-upgrade \
--db-cluster-identifier cluster01

 

aws docdb describe-db-clusters \
--filter Name=engine,Values=docdb \
--db-cluster-identifier cluster01


aws docdb describe-db-instances \
--filter Name=engine,Values=docdb \
--db-instance-identifier instance01

 


-- 2. mongo シェルをインストールする

echo -e "[mongodb-org-4.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/4.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
sudo yum install -y mongodb-org-shell


-- 3. 動作確認

wget https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem
mongo --ssl --host cluster01.cluster-xxxxxxxxxxxx.ap-northeast-1.docdb.amazonaws.com:27017 --sslCAFile rds-combined-ca-bundle.pem --username test
db.collection.insert({"hello":"DocumentDB"})

db.collection.findOne()

db.profiles.insertMany([
{ "_id" : 1, "name" : "Matt", "status": "active", "level": 12, "score":202},
{ "_id" : 2, "name" : "Frank", "status": "inactive", "level": 2, "score":9},
{ "_id" : 3, "name" : "Karen", "status": "active", "level": 7, "score":87},
{ "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}
])

db.profiles.find()
db.profiles.find({name: "Katie"})


db.profiles.findAndModify({
query: { name: "Matt", status: "active"},
update: { $inc: { score: 10 } }
})

db.profiles.find({name: "Matt"})


-- 4. Amazon DocumentDB インスタンスの再起動
aws docdb reboot-db-instance \
--db-instance-identifier instance01

-- 5. Amazon DocumentDB クラスターの停止と開始
aws docdb stop-db-cluster \
--db-cluster-identifier cluster01

aws docdb start-db-cluster \
--db-cluster-identifier cluster01


-- 6. Amazon DocumentDB クラスターの削除

aws docdb delete-db-instance \
--db-instance-identifier instance01

aws docdb delete-db-cluster \
--db-cluster-identifier cluster01 \
--skip-final-snapshot