Kết nối đến cơ sở dữ liệu
Hướng dẫn này giải thích cách kết nối đến cơ sở dữ liệu được triển khai trên FPT Database Engine bằng các phương thức kết nối được hỗ trợ và các thực hành tốt nhất. Sau khi khởi tạo một cơ sở dữ liệu trên FPT Database Engine, người dùng có thể kết nối đến nó bằng các client cơ sở dữ liệu chuẩn, driver ứng dụng hoặc công cụ quản lý. Khả năng kết nối phụ thuộc vào cấu hình mạng, kiểm soát truy cập và thông tin xác thực cơ sở dữ liệu. Trước khi kết nối đến một instance cơ sở dữ liệu, bạn phải cấu hình quyền truy cập mạng và các chính sách bảo mật phù hợp để cho phép các kết nối từ client của bạn. Việc này thường bao gồm tạo các quy tắc security group và gán một floating IP (IP công cộng) nếu bạn cần truy cập từ bên ngoài. Khi quyền truy cập mạng đã được cấp, bạn có thể kết nối đến cơ sở dữ liệu của mình bằng một công cụ client cơ sở dữ liệu.
Tạo Security Group
Security Group là một tập hợp các quy tắc tường lửa kiểm soát lưu lượng mạng vào và ra của một database cluster. Mỗi quy tắc xác định các cổng, giao thức và địa chỉ IP hoặc dải CIDR được phép. Cấu hình Security Group đúng cách giúp bảo mật kết nối cơ sở dữ liệu, thực thi mô hình truy cập đặc quyền tối thiểu và giảm rủi ro truy cập trái phép. ⚠️ Khuyến nghị bảo mật:
- Sử dụng Security Group riêng cho từng database cluster.
- Chỉ mở các cổng cần thiết để kết nối.
- Tránh dùng chung một Security Group giữa nhiều cluster hoặc cho phép tất cả các cổng. Các quy tắc quá dễ dãi có thể mở rộng bề mặt tấn công, tăng rủi ro truy cập trái phép và ảnh hưởng đến các cluster khác khi các quy tắc bị thay đổi. Trong một số trường hợp, điều này có thể dẫn đến gián đoạn dịch vụ hoặc lộ dữ liệu.
** ** ** Để đảm bảo an toàn và dễ quản lý, hãy tạo và cấu hình Security Group cho database cluster bằng cách làm theo các bước sau:
Bước 1: Truy cập trang Quản lý Security Groups
Đăng nhập vào FPT Cloud Portal. Sau khi đăng nhập thành công, từ menu chính, chọn Network > Security Groups. Giao diện Security Group Management sẽ hiển thị danh sách các security group hiện có, cùng với các tùy chọn để tạo, chỉnh sửa hoặc xóa một security group.
Bước 2: Tạo security group mới
Trên trang Security Group Management, nhấp Create security group. Màn hình Create New Security Group sẽ hiển thị như sau:
Nhập chi tiết cấu hình:
- Name : Nhập tên Security Group để dễ quản lý. Tên có thể dài tối đa 50 ký tự và có thể chứa chữ cái, số và dấu gạch ngang (-). Một tên mặc định có thể được hệ thống tự động tạo.
- Applied Instances (optional) : Chọn instance cơ sở dữ liệu mà Security Group sẽ được áp dụng.
- Add tag (Optional) : Gán các tag (cặp key-value) cho Security Group để phân loại tài nguyên, quản lý chi phí, vận hành và kiểm toán.
- Configure security rule (optional) : Cấu hình các quy tắc bảo mật để kiểm soát lưu lượng mạng vào và ra của database cluster.
- Inbound rules: Kiểm soát các kết nối đến database cluster, thường được dùng để cho phép ứng dụng hoặc người dùng truy cập cơ sở dữ liệu. Địa chỉ IP hoặc dải CIDR được phép được chỉ định trong trường Source.
- Outbound rules: Kiểm soát các kết nối đi ra từ database cluster. Trong hầu hết các trường hợp, cấu hình này không cần thiết cho giao tiếp nội bộ. Địa chỉ IP hoặc dải CIDR đích được chỉ định trong trường Destination.
Sau khi nhập đầy đủ thông tin cần thiết, chọn Create security group để hoàn tất quá trình tạo. Sau khi tạo thành công, security group mới sẽ xuất hiện trong danh sách quản lý, hiển thị các thông tin như tên, các node đã áp dụng và thời gian tạo. Nếu cần, bạn có thể thực hiện các thao tác sau trên security group đã tạo:
- Rename security group : Chức năng này cho phép bạn chỉnh sửa tên của security group. Để sử dụng, trên trang Security Group Management, chọn Rename bên cạnh security group bạn muốn chỉnh sửa. Thực hiện thay đổi và nhấp Rename để lưu.
- Delete security group : Chức năng này cho phép bạn xóa các security group không còn sử dụng, giúp hệ thống quản lý gọn gàng và chính xác. Trên trang Security Group Management, chọn Delete bên cạnh group bạn muốn xóa. Xác nhận hành động trong hộp thoại cảnh báo để hoàn tất việc xóa. Cảnh báo : Xóa một Security Group có thể làm gián đoạn kết nối mạng cho các instance hoặc cluster cơ sở dữ liệu liên quan. Khi đã xóa, tất cả các quy tắc bảo mật liên quan sẽ bị xóa ngay lập tức, điều này có thể khiến các ứng dụng không thể truy cập cơ sở dữ liệu hoặc gây mất kết nối giữa các dịch vụ nội bộ. Đảm bảo rằng Security Group không liên kết với bất kỳ tài nguyên nào trước khi tiến hành xóa.
Gán Floating IP
Để cho phép truy cập từ bên ngoài (công cộng) đến database cluster hoặc instance của bạn, bạn phải tạo và gán một Floating IP cho cơ sở dữ liệu. Floating IP là địa chỉ IPv4 công cộng tĩnh có thể được liên kết với tài nguyên DBaaS của bạn mà không cần thay đổi các thiết lập mạng khác. Việc gán yêu cầu các quy tắc security group / tường lửa của bạn cho phép lưu lượng phù hợp (cổng, giao thức) đến cơ sở dữ liệu của bạn. Thực hành tốt nhất : Chỉ gán Floating IP khi cần truy cập công cộng. Nếu cơ sở dữ liệu phục vụ lưu lượng nội bộ trong VPC, hãy cân nhắc sử dụng IP tĩnh riêng để tránh để lộ dịch vụ ra bên ngoài. Các bước để gán địa chỉ Floating IP như sau:
Bước 1: Truy cập trang Quản lý Floating IP
Đăng nhập vào FPT Cloud Portal. Sau khi đăng nhập thành công, từ menu chính, chọn Network > Floating IPs. Giao diện Floating IP Management sẽ hiển thị danh sách các Floating IP hiện có, cùng với các tùy chọn để tạo hoặc xóa một floating IP.
Bước 2: Cấp phát địa chỉ IP
Trên trang Floating IP Management, nhấp Allocate IP address. Popup Allocate IP address sẽ xuất hiện như sau:
Cấu hình cấp phát:
- IP address : Chọn cách bạn muốn lấy địa chỉ IP. Có hai tùy chọn:
- Allocate new from pool : Hệ thống tự động cấp phát một Floating IP công cộng mới từ pool IP có sẵn.
- Existing IP (if any) : Chọn một Floating IP đã có từ danh sách được định nghĩa trước.
- Resources : Chọn loại tài nguyên để liên kết với Floating IP. Đối với FPT Database Engine, chọn Resource type = Instance rồi chọn instance cơ sở dữ liệu mục tiêu.
- IP Port (Optional) : Chỉ định cổng công cộng khi cấu hình chuyển tiếp cổng hoặc các quy tắc NAT tùy chỉnh. Để trống để sử dụng cấu hình mặc định.
- Instance port (Optional) : Chỉ định cổng riêng trên instance để ánh xạ lưu lượng đến. Để trống để sử dụng cấu hình mặc định.
- Add tag (Optional) : Gán các tag (cặp key-value) để phân loại và quản lý Floating IP cho mục đích vận hành và kiểm toán.
Sau khi hoàn tất cấu hình, nhấp Allocate floating IP để bắt đầu quá trình cấp phát. Floating IP mới sẽ xuất hiện trong danh sách với trạng thái "Active" và được liên kết với instance hoặc cluster cơ sở dữ liệu đã chọn. Bạn có thể sử dụng Floating IP này để kết nối đến cơ sở dữ liệu từ bên ngoài, với điều kiện các quy tắc bảo mật và chính sách tường lửa được cấu hình cho phép lưu lượng. Giải phóng Floating IP : Khi Floating IP không còn cần thiết, chọn Release IP cho địa chỉ tương ứng và xác nhận hành động trong hộp thoại cảnh báo. Lưu ý & Xử lý sự cố:
- Đảm bảo Security Group của instance cho phép lưu lượng vào trên các cổng cần thiết (ví dụ: cổng SSH 22, cổng HTTP 80, hoặc các cổng cơ sở dữ liệu liên quan).
- Nếu Floating IP không hoạt động như mong đợi, hãy xem lại các quy tắc inbound của security group để đảm bảo các cổng cơ sở dữ liệu cần thiết đã được mở.
Kết nối đến cơ sở dữ liệu bằng client
Sau khi quyền truy cập mạng đã được cấp (thông qua security group và floating IP), bạn có thể kết nối bằng client cơ sở dữ liệu ưa thích của mình (ví dụ: pgAdmin cho PostgreSQL, MySQL Workbench cho MySQL).
Bước 1: Xem thông tin kết nối
Chi tiết kết nối cơ sở dữ liệu được hiển thị trên trang Database Overview trong FPT Cloud Portal. Để truy cập trang này, mở trang Database list, sau đó chọn ID database cluster để xem trang chi tiết:
Sử dụng thông tin sau để kết nối đến cơ sở dữ liệu:
- Domain endpoint : Địa chỉ endpoint dùng để kết nối đến cơ sở dữ liệu.
- Port : Cổng dịch vụ mà database engine đang lắng nghe.
- Database name : Tên cơ sở dữ liệu mặc định được tạo khi khởi tạo cơ sở dữ liệu.
- Username : Tên người dùng quản trị được dùng để truy cập cơ sở dữ liệu mặc định.
- Password : Mật khẩu liên kết với tài khoản quản trị.
Bước 2: Thiết lập kết nối
Bạn có thể kết nối đến cơ sở dữ liệu bằng một trong các phương thức sau:
- Sử dụng công cụ quản lý cơ sở dữ liệu: Dùng một công cụ quản lý cơ sở dữ liệu (ví dụ: pgAdmin, MySQL Workbench, SSMS) và cung cấp endpoint, port, username, password và database name.
- Sử dụng giao diện dòng lệnh (CLI): Kết nối trực tiếp từ một terminal hoặc application server bằng các lệnh CLI đặc thù cho engine.
- Kết nối từ ứng dụng: Sử dụng các driver cơ sở dữ liệu chính thức cho engine đã chọn và cấu hình connection string phù hợp để kết nối từ ứng dụng của bạn.
Khi kết nối thành công, bạn sẽ thấy cấu trúc cơ sở dữ liệu và có thể thực thi các truy vấn trực tiếp từ client. Lưu ý : Đảm bảo rằng các security group, quy tắc tường lửa và chính sách mạng cho phép truy cập đến endpoint và cổng của cơ sở dữ liệu. **


