Re:從零開始的MongoDB Atlas生活
想要在Cloud使用MongoDB的使用者,MongoDB Atlas會是你最好的選擇。
MongoDB 源自開源,所以雲端的MongoDB Atlas也很佛心,能夠提供永久免費的MongoDB集群給大家使用,所以接下來就由我來推坑大家快速了解並使用MongoDB Atlas吧!
MongoDB Atlas 簡介
MongoDB Atlas (以下簡稱Atlas) 由 MongoDB Inc公司直接營運
不同於一般Cloud資料庫,你可以自由地在AWS, AZURE, GCP 上多達80個區域部署使用MongoDB,所以也可以自由地將已經部署好的MongoDB做線上的跨區域部署或是跨雲搬移。
同時Atlas亦滿足了雲端資料庫的所有需求,例如 權限/網路/備份/安全/自動化 等功能,因此也廣受全球兩萬多個客戶喜愛,現已在Atlas上建立了超過一百萬套MongoDB (台灣區域也貢獻不少XD)。
對於初入Atlas的用戶,相信對於Atlas的介面多少都不太熟悉,我也很常收到類似的問題與疑惑,所以接下來我將會簡單的整理Atlas的主要功能來跟大家分享。
如何開始免費使用Atlas ?
註冊帳號並登入Atlas Portal
首先,輸入網址 https://www.mongodb.com/cloud/atlas 即可開始您的 Atlas 之旅。
你會需要申請一組帳號, 或是使用Gmail認證登入即可 , 不需要信用卡之類的。
開始你的第一個Organization & Project
註冊完成後會被要求創建一個屬於自己的Organization, 這個組織就是Atlas帳戶的最上層,在其之下則是 Project。
如果把Organization想像成一個公司或是一個部門,而Project就是專案或是環境,例如正式環境/測試環境/開發環境等等。
所以創建完Organization後還需要創建Project才能使用MongoDB集群。
建立一個/多個屬於自己免費的集群
當Organization & Project 準備好後,就可以來建立免費的MongoDB集群了!
目前的Policy是每個Project只能建立一個免費的集群,所以如果想要多個免費MongoDB來使用,是需要建立多個Project的喔。
選定偏好的雲端區域
目前免費集群(M0)只有在特定的區域有,很幸運有GCP台灣,如果想要別的雲端,AWS新加坡,AZURE香港也可以做選擇。
之後填好cluster name,永久免費使用的MongoDB集群就完成了!!
(建立時需注意cluster name不可更改)
連線至Atlas
建立免費集群(M0)後,通常需要1~3分鐘的部署時間,這個時候讓我們來做環境準備,設定帳號與網路吧。
1.設定帳號
選擇左方 Database Access,你需要在這裡建立資料庫帳號
2.設定網路
選擇左方的Network Access,你需要在這裡建立IP White List
如果想要使用 Cloud Network Peering/Private Endpoint,很可惜目前並不支援於免費集群,需要升級集群才能使用。
所以我們將使用Public IP access 免費的MongoDB集群。
3.選擇連線
選擇左方的cluster,這個時候集群應該已經準備好了,選擇Connect 就可以開始使用MongoDB了。
TLS安全連線模式
Atlas 必需要透過 Transport Layer Security (TLS) 進行安全連線,目前預設使用 TLS 1.2 以上的版本,最低可以降到TLS 1.0。
SRV連線模式
有別於一般自己安裝的MongoDB集群,Atlas特別提供了SRV服務,可以做到集群連線時的流量負載平衡,也終於在連線的時候不用輸入一長串IP 。
也可以把下方連線的shell版本調整到3.4, 就會跳出大家熟悉的長長一串的連線字串。
連線字串比較:
SRV :
"mongodb+srv://tw.cy17l.mongodb.net/myFirstDatabase" --username arktw
一般 :
"mongodb://tw-shard-00-00.cy17l.mongodb.net:27017,tw-shard-00-01.cy17l.mongodb.net:27017,tw-shard-00-02.cy17l.mongodb.net:27017/myFirstDatabase?replicaSet=atlas-rtaiss-shard-0" --ssl --authenticationDatabase admin --username arktw --password <password>
集群功能介紹
Atlas除了提供資料庫服務以外還有提供許多功能,只要點選上方小小的cluster name ”tw” 就可以看到集群更多的資訊,我這邊簡單敘述一下有哪些好用功能。
Overview : 快速地查看集群健康狀態與現在的使用量
Real Time : 可以看到 MongoDB 即時的交易資訊(mongotop&mongostat),但是免費版沒有提供 (嘶)。
Metrics : 可以看到 MongoDB 軟硬體的多達數十種的各項指標,能夠自由選擇區間做比較,但是免費版幾乎沒有 (嘶)。
Collections : 能夠透過 UI 的方式查看並管理 collection。
Search : Search 功能,詳細請參考另一篇拙著 MongoDB Atlas Search 。
Profiler : 搜集slow command呈現哪些指令跑得慢,免費版沒有提供 (啊) 。
Performance Advisor : 提供效能調校索引建議 ,免費版沒有提供 (啊)。
Backup : 備份還原的功能,免費版沒有提供 (囧)。
Online Archive : Data Lake 功能,詳細會另外做一篇文章做分享。
Command Line Tolls : 可使用MongoDB Database Tools做import/export, dump/resotre。
More on Atlas …
以上就是 Atlas 免費入門的使用分享,目前有些很實用功能是免費版沒有提供的,所以就不在這裡贅述。
我會另外寫一篇文章專門再做進階分享,讓付費的使用者們也能夠更加了解Atlas。
關於 MongoDB Atlas
MongoDB Atlas是由MongoDB公司直營的雲端資料庫服務,能夠免費創建多組MongoDB集群於AWS,AZURE,GCP三個公有雲,並且永久免費使用 (只限制可用資源)。