CHƯƠNG IV: CẤU HÌNH VÀ MÔI TRƯỜNG VẬN HÀNH Cấu hình tích hợp các công nghệ TRANG 1: Toàn tập cấu hình Deployment.toml Tệp  deployment/deployment.toml  là file cấu hình duy nhất của WSO2 Micro Integrator. Mọi thông số từ Port, Memory đến Database đều được quản lý tại đây. 1.1. Cấu hình Server cơ bản [server]:  Thiết lập  offset . Nếu trong mạng có nhiều node WSO2, mỗi node cần có một offset khác nhau để tránh xung đột cổng. [management_api]:  Cấu hình User/Password để các công cụ bên ngoài (như VS Code hoặc MI Dashboard) có thể kết nối và quản lý. 1.2. Cấu hình Connection Pool (HikariCP) Mặc định WSO2 MI sử dụng HikariCP để quản lý kết nối Database. Các tham số tối ưu cần lưu ý: max_active : Số lượng kết nối tối đa. Với LGSP, giá trị này nên đặt từ  30-50  tùy theo tải. min_idle : Duy trì ít nhất  5-10 kết nối chờ sẵn để tăng tốc độ phản hồi. TRANG 2: Quản lý Datasources và Kết nối Cơ sở dữ liệu Dự án LGSP yêu cầu 3 nguồn dữ liệu chính được định nghĩa trong block  [[datasource]] : 2.1. Nguồn dữ liệu ESB_DB Đây là nơi lưu trữ "trạng thái" của trục tích hợp. Vai trò:  Quản lý bảng  job_schedule ,  sync_lock ,  api_logs . Driver:  Sử dụng  com.mysql.cj.jdbc.Driver  (MySQL 8+). Lưu ý:  Datasource này phải trùng tên ( id = "ESB_DB" ) với khai báo trong các file  .dbs . 2.2. Nguồn dữ liệu LGSP_NOIBO Vai trò:  Chứa các bảng danh mục đồng bộ về (Đơn vị hành chính, TTHC...). Địa chỉ:  Thường nằm trên cụm DB chuyên dụng có tốc độ truy xuất cao. 2.3. Nguồn dữ liệu NIFI_DB Vai trò: Phục vụ cho việc đẩy dữ liệu báo cáo sang hệ thống Apache Nifi. TRANG 3: Broker và Messaging Configuration (RabbitMQ/Kafka) 3.1. Cấu hình RabbitMQ (Transport) Để sử dụng được mô hình "Store-and-Forward" (Gửi văn bản điện tử), bạn cần kích hoạt: [transport.rabbitmq.sender]:  Cho phép WSO2 MI đẩy tin vào Queue. [transport.rabbitmq.listener]:  Cho phép WSO2 MI lắng nghe và xử lý tin nhắn từ Queue. Tham số:  Cần khai báo đúng IP/Port của RabbitMQ Server và Virtual Host (thường là  / ). 3.2. Cấu hình Kafka (Streaming) Dùng cho việc đẩy Log Analytics: bootstrap.servers:  Danh sách các Kafka Broker (IP:Port). key.serializer/value.serializer:  Thường dùng  StringSerializer . TRANG 4: Bảo mật, Keystores và Certificates LGSP là hệ thống chính quyền, yêu cầu bảo mật HTTPS và mã hóa dữ liệu. 4.1. Quản lý Keystores Nằm tại  repository/resources/security/ : wso2carbon.jks:  Chứa chứng chỉ SSL của Server LGSP (Dùng cho HTTPS). client-truststore.jks:  Chứa các Public Key của đối tác (NGSP, Cổng DVC Quốc gia) để WSO2 có thể gọi API HTTPS của họ mà không bị lỗi SSL. 4.2. Bảo mật mật khẩu (Secret Management) Thay vì viết mật khẩu DB dạng Clear-text trong  deployment.toml , ta nên dùng công cụ  Secure Vault  của WSO2 để mã hóa: Chạy lệnh  ciphertool.sh  để mã hóa mật khẩu. Sử dụng cú pháp  $secret{alias} để gọi mật khẩu trong file cấu hình.