Функция runInstances EC2 не принимает опцию SourceDestCheck - PullRequest
0 голосов
/ 26 января 2019

При создании экземпляров из AWS SDK (для Nodejs) с использованием идентификатора изображения мне нужно добавить «проверку назначения источника», чтобы быть ложным для всех созданных экземпляров.

Добавлены сетевые интерфейсы под параметрами, но это не сработало:

const params = {
  ImageId: image,
  InstanceType: instanceType,
  MaxCount: 1,
  MinCount: 1,
  UserData: launchScriptHost
   };

 // .. some other parameters too, all works ok

 params.NetworkInterfaces=[{SourceDestCheck:false}]; // <----- tried this
 params.UserData = Buffer.from(params.UserData).toString("base64"); // launch scripts
    ec2.runInstances(params, function(err, data) {
        if (err)
        {
            console.log(err, err.stack);
            return callback("error");
        }
        else
        {
            console.log(data);
            return callback(data);
        }
    });

Это была ошибка:

UnexpectedParameter: Unexpected key 'SourceDestCheck' found in
params.NetworkInterfaces[0]

Без элемента NetworkInterfaces[0].SourceDestCheck он создает экземпляр, но с этой опцией, включенной по умолчанию (для типа экземпляра G3). Затем это приводит к сбою любых запросов HTTP POST из-за ошибки «econnrefused» в модуле http Nodejs.

Я прочитал документацию, но она не показывает эту опцию в части, где определено runInstances. Это поддерживается? Если да, почему он не принимает эту опцию?

Если это не разрешено таким образом, могу ли я сделать это в части сценария запуска (когда экземпляр загружается, прежде чем поступит какой-либо http-запрос)?

Мне нужны эти экземпляры, работающие как с входящими, так и с исходящими данными между lightsail или любым другим интернет-источником в качестве основного сервера (используя EC2 в качестве источника вычислений). Этот переключатель проверки назначения источника делает невозможным доступ извне, когда он true.

Если нет способа сделать это до того, как он откроет соединения, есть ли обходной путь, чтобы разрешить доступ как для входящего, так и для исходящего http / tcp? Перепробовал все комбинации настроек группы безопасности, но они не работают, когда эта опция включена (по умолчанию в G3).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...