<@U02QT9X4N75> Hi mate, for EC2, when defining the...
# community-help
k
@Rohit Gupta Hi mate, for EC2, when defining the nodes.txt file - how did you get the private IP of all the other nodes? I'm able to get the current node IP but not the others my aws_instance resource in terraform looks like this atm
Copy code
user_data = <<-EOF
    # download & unarchive typesense
    curl -O <https://dl.typesense.org/releases/${var.typesense_version}/typesense-server-${var.typesense_version}-linux-arm64.tar.gz>
    tar -xzf typesense-server-${var.typesense_version}-linux-arm64.tar.gz -C /opt/typesense

    # remove archive
    rm typesense-server-${var.typesense_version}-linux-arm64.tar.gz

    # get instance private IP
    EC2_INSTANCE_IP=$(curl -s <http://instance-data/latest/meta-data/local-ipv4>)

    # create typesense folders
    mkdir -p /opt/typesense/data
    mkdir -p /opt/typesense/log

    # create the nodes file
    echo "$EC2_INSTANCE_IP:${var.peering_port}:${var.app_port}" > /opt/typesense/nodes

    # create typesense server config file
    echo "[server]
    api-key = ""
    data-dir = /opt/typesense/data
    log-dir = /opt/typesense/log
    enable-cors = true
    api-port = ${var.app_port}
    peering-port = ${var.peering_port}
    peering-address = $EC2_INSTANCE_IP
    nodes = /opt/typesense/nodes" > /opt/typesense/typesense.ini

    # create typesense service
    echo "[Unit]
    Description=Typesense service
    After=network.target
    [Service]
    Type=simple
    Restart=always
    RestartSec=5
    User=ec2-user
    ExecStart=/opt/typesense/typesense-server --config=/opt/typesense/typesense.ini
    [Install]
    WantedBy=default.target" > /etc/systemd/system/typesense.service

    # start typesense service
    systemctl start typesense

    # enable typesense daemon
    systemctl enable typesense
  EOF