Spec-Zone.ru › Ansible 2.9

lambda – Управление функциями AWS Lambda

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Позволяет управлять функциями Lambda.

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • boto
  • boto3
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key
строка
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.

псевдонимы: ec2_access_key, access_key
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.

псевдонимы: ec2_secret_key, secret_key
dead_letter_arn
-
Родительский объект, содержащий целевой Amazon Resource Name (ARN) очереди Amazon SQS или темы Amazon SNS.
debug_botocore_endpoint_logs
логическое значение
добавлен в 2.8
    Варианты:
  • нет ←
  • да
Использовать логирование botocore.endpoint для анализа уникальных (а не общих) API-вызовов «resource:action», выполненных во время задачи, выводив набор в ключ resource_actions в результатах задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, выполненного во время выполнения playbook. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS.
description
-
Краткое описание функции, заданное пользователем. Lambda не использует это значение. Присвойте осмысленное описание по своему усмотрению.
ec2_url
строка
URL для подключения к EC2 или вашей облачной платформе Eucalyptus (по умолчанию модуль будет использовать EC2-адреса). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL (если она есть).
environment_variables
-
Словарь переменных окружения, предоставляемых функции Lambda.

псевдонимы: environment
handler
-
Функция в вашем коде, которую Lambda вызывает для начала выполнения.
memory_size
-
По умолчанию:
128
Объем памяти в МБ, предоставляемый вашей функции Lambda.
name
- / обязательно
Имя, которое вы хотите присвоить функции, которую вы загружаете. Не может быть изменено.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
region
строка
AWS-регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION (если она есть). См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

псевдонимы: aws_region, ec2_region
role
-
Amazon Resource Name (ARN) роли IAM, которую Lambda принимает, когда выполняет вашу функцию для доступа к любым другим ресурсам Amazon Web Services (AWS). Вы можете использовать только ARN, если роль принадлежит тому же аккаунту AWS.
Требуется при state=present.
runtime
-
Средства выполнения для функции Lambda, которую вы загружаете.
Требуется при создании функции. Использует параметры, описанные в документации boto3.
Требуется при state=present.
Список поддерживаемых средств выполнения см. на https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html.
s3_bucket
-
Имя ведра Amazon S3, в котором хранится .zip-файл с пакетом развертывания.
Если state=present то либо zip_file, либо s3_bucket должны быть указаны.
s3_bucket и s3_key требуются вместе.
s3_key
-
Имя объекта Amazon S3 (пакета развертывания), которое вы хотите загрузить.
s3_bucket и s3_key требуются вместе.
s3_object_version
-
Версия объекта Amazon S3 (пакета развертывания), которую вы хотите загрузить.
security_token
строка
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

псевдонимы: access_token
state
-
    Варианты:
  • present ←
  • absent
Создать или удалить функцию Lambda.
tags
-
добавлен в 2.5
Словарь тегов для применения к функции (требуется botocore 1.5.40 или выше).
timeout
-
По умолчанию:
3
Максимальное время выполнения функции в секундах, после которого Lambda должна завершить функцию.
validate_certs
логическое значение
    Варианты:
  • нет
  • да ←
При значении «нет» сертификаты SSL не будут проверяться для boto-версий >= 2.6.0.
vpc_security_group_ids
-
Список идентификаторов групп безопасности VPC, которые следует ассоциировать с функцией Lambda. Требуется при использовании vpc_subnet_ids.
vpc_subnet_ids
-
Список идентификаторов подсетей для выполнения функции Lambda. Используйте этот параметр, если вам нужно получить доступ к ресурсам в вашей VPC. Оставьте пустым, если вы не хотите запускать функцию в VPC.
zip_file
-
.zip-архив, содержащий ваш пакет развертывания
Если state=present то либо zip_file, либо s3_bucket должны быть указаны.

псевдонимы: src

Примечания

Примечание

  • Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета AWS_URL или EC2_URL, AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY или EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY или EC2_SECRET_KEY, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN, AWS_REGION или EC2_REGION
  • Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно можно использовать для указания AWS-региона, когда это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

# Create Lambda functions
- name: looped creation
  lambda:
    name: '{{ item.name }}'
    state: present
    zip_file: '{{ item.zip_file }}'
    runtime: 'python2.7'
    role: 'arn:aws:iam::987654321012:role/lambda_basic_execution'
    handler: 'hello_python.my_handler'
    vpc_subnet_ids:
    - subnet-123abcde
    - subnet-edcba321
    vpc_security_group_ids:
    - sg-123abcde
    - sg-edcba321
    environment_variables: '{{ item.env_vars }}'
    tags:
      key1: 'value1'
  loop:
    - name: HelloWorld
      zip_file: hello-code.zip
      env_vars:
        key1: "first"
        key2: "second"
    - name: ByeBye
      zip_file: bye-code.zip
      env_vars:
        key1: "1"
        key2: "2"

# To remove previously added tags pass an empty dict
- name: remove tags
  lambda:
    name: 'Lambda function'
    state: present
    zip_file: 'code.zip'
    runtime: 'python2.7'
    role: 'arn:aws:iam::987654321012:role/lambda_basic_execution'
    handler: 'hello_python.my_handler'
    tags: {}

# Basic Lambda function deletion
- name: Delete Lambda functions HelloWorld and ByeBye
  lambda:
    name: '{{ item }}'
    state: absent
  loop:
    - HelloWorld
    - ByeBye

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
code
словарь
успех
местоположение функции лямбда, возвращаемое методом get_function в boto3

Пример:
{'location': 'предварительно подписанный URL S3', 'repository_type': 'S3'}
configuration
словарь
успех
метаданные функции лямбда, возвращаемые методом get_function в boto3

Пример:
{'code_sha256': 'Хэш SHA256', 'code_size': 123, 'description': 'Моя функция', 'environment': {'variables': {'ключ': 'значение'}}, 'function_arn': 'arn:aws:lambda:us-east-1:123456789012:function:myFunction:1', 'function_name': 'myFunction', 'handler': 'index.handler', 'last_modified': '2017-08-01T00:00:00.000+0000', 'memory_size': 128, 'role': 'arn:aws:iam::123456789012:role/lambda_basic_execution', 'runtime': 'nodejs6.10', 'timeout': 3, 'version': '1', 'vpc_config': {'security_group_ids': [], 'subnet_ids': []}}


Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Steyn Huizinga (@steynovich)

Подсказка

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

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/lambda_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API