Как зарегистрировать экземпляр EC2 в кластере ECS?

интересная проблема, и здесь мое предлагаемое решение:

import java.util.Collections;
import java.util.Vector;

public class CompareToken implements Comparable<CompareToken>
{
    int valN;
    String valS;
    String repr;

    public String toString() {
    return repr;
    }

    public CompareToken(String s) {
    int l = 0;
    char data[] = new char[s.length()];
    repr = s;
    valN = 0;
    for (char c : s.toCharArray()) {
        if(Character.isDigit(c))
        valN = valN * 10 + (c - '0');
        else
        data[l++] = c;
    }

    valS = new String(data, 0, l);
    }

    public int compareTo(CompareToken b) {
    int r = valS.compareTo(b.valS);
    if (r != 0)
        return r;

    return valN - b.valN;
    }


    public static void main(String [] args) {
    String [] strings = {
        "aaa",
        "bbb3ccc",
        "bbb12ccc",
        "ccc 11",
        "ddd",
        "eee3dddjpeg2000eee",
        "eee12dddjpeg2000eee"
    };

    Vector<CompareToken> data = new Vector<CompareToken>();
    for(String s : strings)
        data.add(new CompareToken(s));
    Collections.shuffle(data);

    Collections.sort(data);
    for (CompareToken c : data)
        System.out.println ("" + c);
    }

}
24
задан Hello lad 6 April 2016 в 21:25
поделиться

2 ответа

Когда вы создаете экземпляр EC2, вы должны указать роль IAM, связанную с вашим контейнером ECS (если вы используете SDK / ..., вы должны указать «ARN профиля экземпляра» этой роли в параметрах), если вы используете при создании интерактивного кластера ECS при первом использовании ECS на веб-сайте aws у вас уже должна быть ссылка ecsInstanceRole на кластер по умолчанию.

Затем, после запуска, ваш экземпляр EC2 будет автоматически зарегистрирован как контейнер ECS в этом кластере.

18
ответ дан DarkCenobyte 6 April 2016 в 21:25
поделиться

Кроме сценария пользовательских данных, отображающего имя кластера не по умолчанию, помните, что экземплярам контейнера необходим внешний доступ к сети для связи со службой Amazon ECS. Поэтому, если ваши экземпляры контейнеров не имеют общедоступных IP-адресов, они должны использовать шлюз трансляции сетевых адресов (NAT) для обеспечения этого доступа.

Источник: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html

0
ответ дан Slawomir 6 April 2016 в 21:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: