Desmond  Gerber

Desmond Gerber

1641194063

POC Of an AWS Lambda That Performs The Cryptocurrency Price Lookup

Cryptocurrency Prices

Overview

A ideia deste projeto é aplicar o conteúdo estudado sobre AWS Lambda. Ele implementa uma funcionalidade simples, consultar a cotação de uma quantidade determinada de criptomoedas, e enviar os dados processados para uma API.

Instalação

Repositório

Para clonar o repositório usando a linha de comando, execute:

> git clone https://github.com/gustavofreze/cryptocurrency-prices.git

Configuração

É necessário configurar as variáveis de ambiente, para todos os ambientes que você for executar. Isso pode ser feito definindo os respectivos valores em configs.

A consulta de cotações é feita usando esta API. Crie uma conta para obter uma chave de autenticação. A chave deve ser colocada na propriedade PRICE_KEY do arquivo de configuração.

A notificação é feita usando esse Webhook, basta copiar a url e adicioná-la a propriedade NOTIFICATION_URL do arquivo de configuração.

Para executar a consulta, processamento e envio dos preços, você pode executar em ambiente local, o seguinte comando:

> make run

CI/CD

O processo de integração e entrega contínua, definido nessa pipeline, automatiza o processo de implantação da lamba em ambientes diferentes.

Para realizar o deploy, será necessário ter uma conta na AWS, e obter as chaves de acesso no IAM, Access key ID e Secret access key. Seu usuário precisa de permissões para o S3, Cloud Watch Logs, Cloud Formation e Lambda.

Com as devidas permissões atribuídas, e com suas chaves de acesso, defina no repositório suas Actions secrets, levando em consideração seu environment.

O action será executado nas operações de push para as branches main e release/**, onde eu defini que main possui o environment production, enquanto release/** possui o environment staging.

Roadmap

Depois que o processo de CI/CD foi finalizado, e a lambda foi implantada na AWS, basta acessar o console e executar a chamada do lambda com um evento de teste.

Resultado da chamada do evento de teste. 
Resultado da chamada do evento de teste.

Após a chamada do evento de teste, verifique os dados enviados para o webhook que você definiu anteriormente.

Dados recebidos pelo webhook. 
Dados recebidos pelo webhook.

Testes

Executar testes em ambiente local.

Executa todos os testes:

> make test

#github #aws #cryptocurrency 

What is GEEK

Buddha Community

POC Of an AWS Lambda That Performs The Cryptocurrency Price Lookup
Desmond  Gerber

Desmond Gerber

1641194063

POC Of an AWS Lambda That Performs The Cryptocurrency Price Lookup

Cryptocurrency Prices

Overview

A ideia deste projeto é aplicar o conteúdo estudado sobre AWS Lambda. Ele implementa uma funcionalidade simples, consultar a cotação de uma quantidade determinada de criptomoedas, e enviar os dados processados para uma API.

Instalação

Repositório

Para clonar o repositório usando a linha de comando, execute:

> git clone https://github.com/gustavofreze/cryptocurrency-prices.git

Configuração

É necessário configurar as variáveis de ambiente, para todos os ambientes que você for executar. Isso pode ser feito definindo os respectivos valores em configs.

A consulta de cotações é feita usando esta API. Crie uma conta para obter uma chave de autenticação. A chave deve ser colocada na propriedade PRICE_KEY do arquivo de configuração.

A notificação é feita usando esse Webhook, basta copiar a url e adicioná-la a propriedade NOTIFICATION_URL do arquivo de configuração.

Para executar a consulta, processamento e envio dos preços, você pode executar em ambiente local, o seguinte comando:

> make run

CI/CD

O processo de integração e entrega contínua, definido nessa pipeline, automatiza o processo de implantação da lamba em ambientes diferentes.

Para realizar o deploy, será necessário ter uma conta na AWS, e obter as chaves de acesso no IAM, Access key ID e Secret access key. Seu usuário precisa de permissões para o S3, Cloud Watch Logs, Cloud Formation e Lambda.

Com as devidas permissões atribuídas, e com suas chaves de acesso, defina no repositório suas Actions secrets, levando em consideração seu environment.

O action será executado nas operações de push para as branches main e release/**, onde eu defini que main possui o environment production, enquanto release/** possui o environment staging.

Roadmap

Depois que o processo de CI/CD foi finalizado, e a lambda foi implantada na AWS, basta acessar o console e executar a chamada do lambda com um evento de teste.

Resultado da chamada do evento de teste. 
Resultado da chamada do evento de teste.

Após a chamada do evento de teste, verifique os dados enviados para o webhook que você definiu anteriormente.

Dados recebidos pelo webhook. 
Dados recebidos pelo webhook.

Testes

Executar testes em ambiente local.

Executa todos os testes:

> make test

#github #aws #cryptocurrency 

Cross-account access to invoke AWS lambda using AWS CDK

If you are here, you may have a pretty good knowledge of how to use AWS CDK for defining cloud infrastructure in code and provisioning it through AWS. So let’s get started on how to grant permission to your lambda function to access the resources in another AWS account.

Let’s say you have two accounts called Account A and Account B, and you need to give permission to lambda function in Account A (ex: 11111111)to access the resources in Account B(22222222). You can easily do this by assuming an IAM Role in Account B and then uses the returned credentials to invoke AWS resources in Account B.

#acces #account #aws #lambda #aws lambda #aws cdk

Cache secrets using AWS Lambda extensions

What is the AWS Lambda extension?

A month back AWS announced a preview of Lambda Extensions, a new way to easily integrate Lambda with your favorite monitoring, observability, security, and governance tools. Extensions can be published as Lambda layers, there are two types are extension:

  • Internal extensions → Run as part of the runtime process, in-process with your code. Internal extensions enable use cases such as automatically instrumenting code.
  • External extensions → Allow you to run separate processes from the runtime but still within the same execution environment as the Lambda function. External extensions can start before the runtime process and can continue after the runtime shuts down. These extensions run as companion processes to Lambda functions.

#aws #aws-secrets-manager #lambda #aws lambda

Hermann  Frami

Hermann Frami

1618047120

AWS Lambda Performance: Main Issues and How To Overcome Them

In this article, learn about the major issues affecting AWS lambda performance to improve your project’s speed and efficiency and cut unnecessary costs!

Introduction

AWS Lambda gives users powerhouse capabilities out-of-the-box. It enables web designers and creators to handle the broadest range of tasks. And yet, if you are looking to build a sturdy, smooth, and fast-running server infrastructure, the service’s standard functionality may not be enough. The good thing is that you can optimize AWS Lambda performance issues and tailor the platform to your particular needs.

Let’s find out how to actually avoid or eliminate the most relevant AWS Lambda performance issues.

Boosting AWS Efficiency via Lambda Performance Monitoring

Boosting AWS Efficiency via Lambda Performance Monitoring | TechMagic.co

How do you pinpoint the major issues hindering the performance of AWS Lambda? It’s all about thorough monitoring of the underlying functions. Understanding how everything works and behaves allows fine-tuning configurations to achieve the best operational results.

#cloud #aws #serverless #aws lambda #lambda

Gordon  Matlala

Gordon Matlala

1617875400

Adding Code to AWS Lambda, Lambda Layers, and Lambda Extensions Using Docker

2020 was a difficult year for all of us, and it was no different for engineering teams. Many software releases were postponed, and the industry slowed its development speed quite a bit.

But at least at AWS, some teams released updates out of the door at the end of the year. AWS Lambda received two significant improvements:

  • AWS Lambda Extensions; and
  • Support of Docker images for your functions.

With these two new features and Lambda Layers, we now have three ways to add code to Lambda that isn’t directly part of our Lambda function.

The question is now: when should we use what?

In this article, I try to shine some light on the Lambda Layers, Lambda Extensions, and Docker image for Lambda.

First things first. All these Lambda features can be used together. So if you think about where to put your code, at least your decisions aren’t mutually exclusive. You can upload a Docker image and attach a regular Lambda Layer and a Lambda Extension. The same is possible if your Lambda function is based on a ZIP archive.

What does this all mean? Keep reading and find out.

#aws #aws-lambda #serverless #devops #docker #lambda