Open gkswls321 opened 3 years ago
서용석 Azure 구축 공부, (+ 시간되면 AWS구축공부)
김범, 금소영 Aws CloudWatch와 Lambda 연동
내용 정리
Amazon S3Simple Storage Service는 객체 스토리지이다. 안정성이 뛰어나고 가용성이 높으며 무제한 확장이 가능하다. Amazon S3를 이해하기 위해 먼저 객체Object와 버킷Bucket를 알아야 한다.
import json import boto3 s3 = boto3.client('s3')
def lambda_handler(event, context):
transactionToUpload = {} # unload하기 위해 json형식으로 변환
transactionToUpload['transactionId'] = '12345'
transactionToUpload['type'] = 'purchase'
transactionToUpload['amount'] = 20
transactionToUpload['customerId'] = 'CID-11111'
bucket = 'aws-simplified-transactions'
fileName = 'CID-11111' + '.json'
uploadByteStream = bytes(json.dumps(transactionToUpload).encode('UTF-8')) # s3에올리기 위해 Byte 스트림
s3.put_object(Bucket=bucket, Key=fileName, Body=uploadByteStream)
print('Put Complete!!')
def lambda_handler(event,context):
bucket = event['Records'][0]['s3']['bucket']['name']
###2 - 사전 조회 표기법을 사용하여 버켓 파일,키 가져오기
key = urllib.parse.unquote_plus(event['Records'][0]['s3']['object']['key'], encoding='utf-8')
try:
#3 - s3 객체에서 키,아이디를 통해 객체 가져오기
response = s3.get_object(Bucket=bucket, key=key)
#4 - 가져온 파일을 deserialize하기
text = response["Body"].read().decode()
data = json.loads(text)
#5 - 데이터 프린트
print(data)
#6 - Parse and print the transacitions
transactions = data['transactions']
for record in transacionts:
print(record['transType'])
return 'Sucess!!'
except Exception as e:
print(e)
raise e
2021.05.04 AWS Lambda 와 AWS SES, SNS 연동 연구
Azure mysql서버구축, 방화벽 설정 완료
서용석 - (수정) Azure sentinel 공부, Azure sentinel과 AWS 람다 연결 되는지 확인
공경선 Aws CloudWatch와 Lambda 공부
AWS Lambda에서 AWS Lambda 실행하기 예제 해보기
데이터 커넥터에서 AWS도 데이터 수집 가능
AWS CloudTrail에 Azure 센티널 연결 https://docs.microsoft.com/ko-kr/learn/modules/azure-sentinel-deploy-configure/2-deployment-options
import json import boto3 import datetime
def lambda_handler(event, context): bucket = 'aws-ap-northeast-2-569934397842-test-snsapp-pipe' #당신의 버킷 이름 file_name = str(datetime.datetime.now())[:-7] file = dict() file['customerID'] = 'jinyes' file['age'] = '25' file['product'] = 'aws_solution' result = upload_file_s3(bucket, file_name + '.json', file)
if result:
return {
'statusCode': 200,
'body': json.dumps("upload success")
}
else:
return {
'statusCode': 400,
'body': json.dumps("upload fail")
}
def upload_file_s3(bucket, file_name, file): encode_file = bytes(json.dumps(file).encode('UTF-8')) s3 = boto3.client('s3') try: s3.put_object(Bucket=bucket, Key=file_name, Body=encode_file) return True except: return False
각 조원은 자신이 오늘 할 일을 날짜별로 정리해서 기록해주세요