Mục lục bài viết

ElastiCache Redis là gì

Amazon ElastiCache là dịch vụ lưu bộ nhớ đệm tương thích với Redis và Memcached phi máy chủ. Nó mang lại hiệu năng tối ưu hóa chi phí và hỗ trợ các ứng dụng hiện đại theo thời gian thực. Dịch vụ này cho phép bạn tạo bộ nhớ đệm có tính sẵn sàng cao trong vòng chưa đầy một phút mà không cần phải cấu hình các máy chủ hoặc cụm. ElastiCache điều chỉnh quy mô đến hàng trăm triệu thao tác mỗi giây với thời gian phản hồi tính bằng micrô giây, đồng thời đem lại độ bảo mật và độ tin cậy cấp doanh nghiệp.

Có 2 loại dịch vụ ElastiCache:

  1. memcached
    • Là viết tắt của memory cache daemon. Hoạt động trên nhiều luồng.
    • Khi tăng số lượng lõi CPU, hiệu suất cũng sẽ tăng.
    • Lưu trữ keys và values theo cặp 1-1 đơn giản.
    1. redis
    • Hoạt động trên một luồng đơn.
    • Hỗ trợ sao lưu và phục hồi dựa trên snapshot.
    • Cho phép cân bằng tải thông qua cấu trúc cluster gồm một master và nhiều slave.
    • Có thể chọn kích hoạt hoặc vô hiệu cluster mode.
    • Ngoài ra, việc lưu trữ dữ liệu trên bộ nhớ vào disk giúp không mất dữ liệu khi mất điện.

    Lợi ích của bản cập nhật này

    Việc có thể thiết lập xác thực IAM giúp kiểm soát truy cập một cách chi tiết hơn và dễ dàng hơn.

    Ví dụ: sử dụng chính sách IAM cho phép cấp hoặc thu hồi quyền truy cập cụm cho các nhóm IAM khác nhau.

    Ứng dụng Redis có thể sử dụng thông tin xác thực IAM để xác thực với ElastiCache trong quá trình kết nối.

    Quản lý và kiểm soát truy cập cho từng bản sao ElastiCache trở nên dễ dàng hơn, đây là một trong những lợi ích lớn.

    Điều kiện tiên quyết cho xác thực IAM của Redis

    • Phiên bản Redis phải là 7 trở lên.
    • Tên người dùng và ID người dùng ElastiCache trong IAM phải là duy nhất.
    • Token xác thực IAM có hiệu lực trong 15 phút.
    • ElastiCache for Redis sẽ tự động ngắt kết nối sau 12 giờ khi sử dụng xác thực IAM.
    • Xác thực IAM không hỗ trợ lệnh “MULTI EXEC”.

    Thử nghiệm

    1. Tạo chính sách IAM.
    {
    
    “Version”: “2012-10-17”,
    
    “Statement”: {
    
    “Effect”: “Allow”,
    
    “Principal”: { “AWS”: “arn:aws:iam::123456789012:root” },
    
    “Action”: “sts:AssumeRole”
    
    }
    
    }
    1. Tạo IAM role.
    {
    
    “Version”: “2012-10-17”,
    
    “Statement”: [
    
    {
    
    “Effect” : “Allow”,
    
    “Action” : [
    
    “elasticache:Connect”
    
    ],
    
    “Resource” : [
    
    “arn:aws:elasticache:us-east-1:123456789012:replicationgroup:replication-group-01”,
    
    “arn:aws:elasticache:us-east-1:123456789012:user:test”
    
    ]
    
    }
    
    ]
    
    }
    1. Đính kèm chính sách IAM vào role.
    1. Tạo và đính kèm nhóm người dùng và người dùng với xác thực IAM.
    1. Dưới đây là ví dụ truy cập bằng IAMAuthTokenRequest.
    public class IAMAuthTokenRequest {
    
    private static final HttpMethodName REQUEST_METHOD = HttpMethodName.GET;
    
    private static final String REQUEST_PROTOCOL = “http://”;
    
    private static final String PARAM_ACTION = “Action”;
    
    private static final String PARAM_USER = “User”;
    
    private static final String ACTION_NAME = “connect”;
    
    private static final String SERVICE_NAME = “elasticache”;
    
    private static final long TOKEN_EXPIRY_SECONDS = 900;

    Khu vực hỗ trợ

    Có thể sử dụng miễn phí ở tất cả các khu vực