Cloud Database
I. Điều kiện tiên quyết
- Tài khoản Amazon RDS For PostgreSQL
- Tài khoản Neon
- Tài khoản MongoDB Atlas
- Tài khoản RedisLab
- Tài khoản IBM Cloudant
- Đã cài Postgres ở local (tùy chọn)
- Đã cài MongoDB ở local (tùy chọn)
- Đã cài Redis ở local (tùy chọn)
II. Đối tượng đọc
- Customer Success Engineer
Có liên quan tới:
- Database
- Cloud Database
III. Amazon RDS For PostgreSQL
- Truy cập https://aws.amazon.com/rds/postgresql/
- Chọn "Get Started with Amazon RDS for PostgreSQL"
- Kéo xuống chọn "Create Database"
1 Tạo Amazon RDS For PostgreSQL
Chỉnh database như hình mẫu sau:


Đặt tên database instance, user và mật khẩu để truy cập database:

Tiếp tục cấu hình như hình sau:





2 Cấu hình database
- Truy cập vào https://aws.amazon.com
- Truy cập vào mục "Databases" trên thanh menu bên trái
- Tạo database nếu chưa có
- Bấm vào tên database để xem thông tin cấu hình của database
2.1 Cấu hình network
Bấm qua tab "Connectivity and security", chọn item bên dưới "VPC security groups" (trong hình là "sg-0e0f3cb0d8d5b0fef - default").

Chọn inbound rules để xem IP được quyển truy cập vào instance Amazon RDS For PostgreSQL này

Chọn Edit inbound để chỉnh sửa thông tin IP được whitelist

Thêm IP của bạn hoặc server vào để có thể thiết lập kết nối tới Instance Amazon RDS For PostgreSQL này.

2.2 Cấu hình kết nối
Quay lại trang thông tin database, chọn tab "Connectivity and security", để xem thông tin kết nối của database ở phần 1.
Kết nối tới database qua cú pháp sau (nếu cài Postgres theo cách bình thường):
psql -h <amazon_rds_for_postgres_connection_string> -d keycloak -U keycloak -WKết nối tới database qua cú pháp sau (nếu cài Postgres bằng docker):
docker exec -it <postgres-docker-container-name> -h <amazon_rds_for_postgres_connection_string> -d keycloak -U keycloak -WNó sẽ yêu cầu nhập mật khẩu. Nhập mật khẩu và nếu kết nối thành công, trên màn hình sẽ hiện ra như sau:

IV. MongoDB Atlas
1. Tạo database
- Truy cập https://www.mongodb.com/atlas/database
- Chọn Create Project nếu chưa có Project.
- Chọn Prọject rồi chọn Create Database.


2. Cấu hình và kết nối
2.1 Cấu hình user
- Chọn Database Access trên thanh menu bên trái.
- Bấm ADD NEW DATABASE USER và chọn quyền readWriteAnyDatabase@admin

2.2 Cấu hình network
- Chọn Network Access trên thanh menu bên trái.

- Bấm ADD IP ADDRESS để thêm địa chjỉ IP cần whitelist để truy cập ínstance MongoDB Atlas này.

2.3 Kết nối
- Quay lại trang chủ chính của Database.
- Ở mục DEPLOYMENT, chọn Database.
- Màn hình sẽ hiện như hình sau. Chọn Connect.
- Copy connection string. Nó sẽ có định dạng như sau
mongodb+srv://<username>:<password><@MONGODB_ATLAS_CLUSTER_URL> - Lưu ý: Tùy theo các phiên bản MongoDB khác nhau, sẽ có nhiều cách kết nối klhác nhau.

a. Mongo CLI
- Nếu lệnh kết nối tới mongo có bật auth (có dùng user và mật khâu) là:
mongo --username <username> --password <password>
- Thì lệnh kết nối tới 1 cluster MongoDB nguồn ở ngoài là:
mongo --host <connection_string> --username <username> --password <password>
- hoặc
mongo "mongodb://<username>:<password>@<MONGODB_SERVER_IP>/"
- Và lệnh kết nối tới MongoDB Atlas là:
mongo "mongodb+srv://<username>:<password>@<MONGODB_ATLAS_CLUSTER_URL>/"
- Nếu kết nối thành công, màn hình có thể hiển thị như sau:

b. NodeJS hoặc MongoDB Compass
- Connection string cho NodeJS và MongoDB Compass cũng chính là connection string copy từ MongoDB Atlas.
- Bỏ connection string sau vào .env hoặc URI của MongoDB Compass
mongodb+srv://<username>:<password>@MONGODB_ATLAS_CLUSTER_URL/
V. Redis Lab
- Truy cập https://app.redislabs.com/
- Đăng nhập
- Bấm New Database để tạo database mới nếu chưa có.
1. Kết nối qua CLI
- Vào Database, chọn Connect để xem connection string.
- Kết nối qua Redis-cli (nếu cài redis bằng cách bình thường):
redis-cli -u redis://<username>:<password>@<redis_cloud_url>:12773
- Kết qua Redis-cli (nếu cài bằng docker):
docker exec -it <redis_docker_container_name> redis-cli -u redis://<username>:<password>@<redis_cloud_url>:12773
2. Kết nối qua NodeJS
- Bỏ connection string sau vào file .env
<username>:<password>@<redis_cloud_url>:12773
VI. IBM Cloudant
1. Cấu hình:
- Truy cập https://cloud.ibm.com/
- Đăng ký gói dịch vụ free tier Cloudant và chọn cấu hình như các hình sau:



- Sau khi khởi tạo database thì truy cập resource list, sẽ thấy db vừa tạo trong danh sách như bên dưới




- Bấm vào database, Chọn Service credentials, tạo 1 cái. Cloudant sẽ tạo 1 service credential chứa thông tin tài khoản và api CouchDB:

- Truy cập đường dẫn với tài khoản và mật khẩu được cấp trong service credential

2. Kết nối
- Tương tự CouchDB ở local. Connection string của IBM Cloudant cũng theo format tương tự
https://<username>:<password>@<host>
VII. NeonDB (Postgres)
1. Cấu hình
- Truy cập https://neon.tech/pricing, bấm Get Started ở Free tier.
- Cấu hình theo hình bên dưới


2. Kết nối
- Connection string có thể được nhìn thấy ở dashboard quản lý database như hình bên dưới

VIII. Kết luận
- Và đó là các bước setup các database cần thiết ở cloud.
- Nếu có gì khúc mắt, vui lòng gửi feedback qua form bên dưới: