Security groups -> Allow TCP traffic to port 6379 only from client node.
Logs -> disabled
Limtador and Driver
1 EC2 instance
amazon linux 2023 AMI
type: c7i xlarge 4vCPU 8Gib Memory
sudo yum update -y
sudo yum install -y docker
sudo service docker start
sudo usermod -a -G docker ec2-user
# (logout and login again)
docker ps
Create docker image with limitador and limitador-driver
cat <<'EOF' >Dockerfile
ARG LIMITADOR_IMAGE
FROM $LIMITADOR_IMAGE as limitador
# Stage 1: Build limitador-driver
FROM rust:1.76-bullseye as builder
ARG LIMITADOR_DRIVER_REPO=https://github.com/alexsnaps/limitador-driver.git
ARG LIMITADOR_DRIVER_BRANCH=main
RUN apt update && apt upgrade -y \
&& apt install -y protobuf-compiler git
RUN git clone --depth 1 $LIMITADOR_DRIVER_REPO -b $LIMITADOR_DRIVER_BRANCH /opt/limitador-driver
WORKDIR /opt/limitador-driver
RUN cargo build --release
# Stage 2: Setup the environment to run limitador-driver and limitador
FROM rust:1.76-bullseye
# Copy the Rust binary from the builder stage
COPY --from=builder /opt/limitador-driver/target/release/limitador-driver /usr/local/bin
# Copy the limitador service into the container
COPY --from=limitador /home/limitador/bin/limitador-server /usr/local/bin
# Run the script
CMD "/bin/bash"
EOF
Build image based on some limitador image, for example quay.io/kuadrant/limitador:write-behind-lock
Test setup
Redis proxy
1 EC2 instance
amazon linux 2023 AMI
type: c7i.large 2vCPU 4Gib Memory
Elasticache
Limtador and Driver
1 EC2 instance
amazon linux 2023 AMI
type: c7i xlarge 4vCPU 8Gib Memory
Create docker image with limitador and limitador-driver
Build image based on some limitador image, for example
quay.io/kuadrant/limitador:write-behind-lock
Limits file
Start container
Start limitador
Open a new shell the ec2 instance
Run the driver to start the test
Results