Сценарий AWS Elastic Beanstalk CloudFormation: невозможно подписать запрос без установленных учетных данных - PullRequest
0 голосов
/ 26 июня 2018

Я новичок в скриптах CloudFormation. Попытка построить среду Beanstalk, и она в основном создана, за исключением того, что конфигурация потоковой передачи журнала завершается неудачно, а сценарий запуска прерывается после этого:

[2018-06-26T12:28:41.358Z] INFO  [2990]  - [Application deployment/AddonsBefore/ConfigCWLAgent/10-config.sh] : Activity execution failed, because: unable to sign request without credentials set (ElasticBeanstalk::ExternalInvocationError)

вызвано: невозможно подписать запрос без установленных учетных данных (Executor :: NonZeroExitStatus)

Единственная связанная опция в скрипте это:

  - Namespace: aws:elasticbeanstalk:cloudwatch:logs
    OptionName: StreamLogs
    Value: true

Я начал создание стека из веб-консоли и не выбрал какую-либо роль в CloudFormation, поэтому я предполагаю, что в экземплярах используется aws-elasticbeanstalk-ec2-role. Пытался добавить к нему полный доступ к журналам CloudWatch, но проблема не исчезла. Текущие прилагаемые политики:

AWSElasticBeanstalkWebTier
CloudWatchLogsFullAccess
AWSElasticBeanstalkMulticontainerDocker
AWSElasticBeanstalkWorkerTier

Полный скрипт:

AWSTemplateFormatVersion: '2010-09-09'

Parameters:
  ParamDatabaseSpringProfile:
    Description: Select Spring database profile to connect to
    Type: String
    Default: db_h2
    AllowedValues:
      - db_h2
      - db_mysql_test
      - db_mysql_staging
      - db_mysql_prod

  ParamInstanceType:
    Description: Select instance type to create
    Type: String
    Default: t2.micro
    AllowedValues:
      - t2.micro
      - t2.small
      - t2.medium
      - t2.large

Resources:
  pcaBackendApp:
    Type: AWS::ElasticBeanstalk::Application
    Properties:
      Description: Photo Companion Backend

  pcaBackendVersion100:
    Type: AWS::ElasticBeanstalk::ApplicationVersion
    Properties:
      ApplicationName:
        Ref: pcaBackendApp
      Description: Photo Companion Backend Version 1.0.0
      SourceBundle:
        S3Bucket: pca-dev-releases
        S3Key: backend-1.0.0.jar

  pcaBackendConfigTemplate:
    Type: AWS::ElasticBeanstalk::ConfigurationTemplate
    Properties:
      ApplicationName:
        Ref: pcaBackendApp
      Description: Photo Companion Backend Template
      SolutionStackName: 64bit Amazon Linux 2018.03 v2.7.2 running Java 8
      OptionSettings:
      - Namespace: aws:elasticbeanstalk:application:environment
        OptionName: SERVER_CONTEXT_PATH
        Value: /
      - Namespace: aws:elasticbeanstalk:application:environment
        OptionName: SPRING_PROFILES_ACTIVE
        Value: !Sub
          - logging_normal, http_insecure, credentials_insecure, ${DbProfile}
          - { DbProfile: !Ref ParamDatabaseSpringProfile }
      - Namespace: aws:autoscaling:asg
        OptionName: MinSize
        Value: '1'
      - Namespace: aws:autoscaling:asg
        OptionName: MaxSize
        Value: '2'
      - Namespace: aws:autoscaling:launchconfiguration
        OptionName: InstanceType
        Value: !Ref ParamInstanceType
      - Namespace: aws:elasticbeanstalk:environment
        OptionName: EnvironmentType
        Value: LoadBalanced
      - Namespace: aws:elasticbeanstalk:environment
        OptionName: LoadBalancerType
        Value: application
      - Namespace: aws:elasticbeanstalk:cloudwatch:logs
        OptionName: StreamLogs
        Value: false # true
      - Namespace: aws:elasticbeanstalk:command
        OptionName: DeploymentPolicy
        Value: Rolling
      - Namespace: aws:elasticbeanstalk:command
        OptionName: BatchSizeType
        Value: Fixed
      - Namespace: aws:elasticbeanstalk:command
        OptionName: BatchSize
        Value: '1'
      - Namespace: aws:elasticbeanstalk:environment:process:default
        OptionName: HealthCheckPath
        Value: /actuator/public/health
      - Namespace: aws:elasticbeanstalk:environment:process:default
        OptionName: Port
        Value: 8080
      - Namespace: aws:elbv2:listener:default
        OptionName: ListenerEnabled
        Value: false
      - Namespace: aws:elbv2:listener:443
        OptionName: ListenerEnabled
        Value: true
      - Namespace: aws:elbv2:listener:443
        OptionName: Protocol
        Value: HTTPS
      - Namespace: aws:elbv2:listener:443
        OptionName: SSLCertificateArns
        Value: arn:aws:acm:eu-west-1:<removed>

  pcaBackendEnvironment100:
    Type: AWS::ElasticBeanstalk::Environment
    Properties:
      ApplicationName:
        Ref: pcaBackendApp
      Description: Photo Companion Backend Environment
      TemplateName:
        Ref: pcaBackendConfigTemplate
      VersionLabel:
        Ref: pcaBackendVersion100
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...