áá±á¬ááºážáá«ážááá¬áá¬ááŒááºááᯠáááºáááºážáá¬ážáá»á¬ážá¡ááœáẠá¡áá°ážááŒááºáááºáá¬ážáá«áááºá
á¡ááá¯ááºážá¡áá¬á á
áœááºážáá±á¬ááºáááºá áá»áœá±áá¬ááá¯ááºááŸá¯ááŸáá·áº áá
áºááá»áŸáẠáá±á¬ááºážááá¯áá»ááºáá±á«ááºáž áááºážáá±á«ááºážáá»á¬ážá
áœá¬ ááá¯á·ááá¯áẠááá®áá»á¶áá±á«ááºážáá»á¬ážá
áœá¬ááᯠááá¯ááºááœááºááá¯ááºá
áœááºážá¡ááœáẠAWS Lambda ááá¯á· ááŒá±á¬ááºážááœáŸá±á·áá¬ááŒáááºá áá®ááá¯áá¯ááºááá¯á·á áááºáá±á¬ááºááŸá¯áááºáááºáá±áá²á· á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠááœá±ááᯠá
á®áá¶ááá·áºááœá²ááá¯á· áááá¯á¡ááºáá«áá°ážá ááŸáá·áº á¡ááá¯á¡áá»á±á¬áẠá¡ááœááºá¡á
á¬áž áá»á²á·ááœááºááŒááºážááẠááá·áºá¡á¬áž áá
áºá
áá¹ááá·áºáá»áŸáẠáá
áºááŒáá¯ááºááẠáá±á¬ááºážááá¯áá»áẠáá±á¬ááºáá±á«ááºážáá»á¬ážá
áœá¬ááᯠáá±á¬ááºááœááºáá±ážááá¯ááºáááºá AWS Lambda ááᯠáá°ááŒáá¯ááºá¡áá»á¬ážáá¯á¶áž AWS áááºáá±á¬ááºááŸá¯áá»á¬ážáá²á០áá
áºáá¯áᯠááŸááºáááºá
áœá¬ áá±á«áºááá¯ááá¯ááºáááºáᯠáá»áœááºáá±á¬áºáááºáá«áááºá
AWS Lambda
AWS Lambda ááẠááá·áºá¡á¬áž áá¬áá¬áá»á¬ážááᯠá á®áá¶ááŒááºáž ááá¯á·ááá¯áẠá á®áá¶ááá·áºááœá²ááŒááºážáááŸááá² áá¯ááºááá¯ááœáá·áºáááºááŸáá·áº á áááºááŒáá¯ááºáá¯áá¹áááá±áááᯠá¡áá¯á¶ážááŒá¯á á¡ááŒá¬ážáá±á¬ AWS áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠááá¯ážáá»á²á·ááœáá·áºááŒá¯ááá·áº á¡ááŒá áºá¡áá»ááº-áá±á¬ááºážááŸááºááá·áº áá¬áá¬áá²á· ááœááºáá»á°áá¬áááºáá±á¬ááºááŸá¯áá áºáá¯ááŒá áºáááºá Lambda ááẠAmazon API Gateway ááŸáá áºááá·áº HTTP áá±á¬ááºážááá¯ááŸá¯áá»á¬ážá Amazon S3 áá¯á¶ážáá»á¬ážááœáẠáá±áá¬ááŒá±á¬ááºážáá²ááŸá¯ ááá¯á·ááá¯áẠAmazon DynamoDB ááá¬ážáá»á¬ážáá²á·ááá¯á·áá±á¬ á¡áá»áá¯ážáá»áá¯ážáá±á¬ááŒá áºáááºáá»á¬áž (á¡á áá»áá¯ážááŸá¯áá»á¬ážáá¯áá±á«áºáááº) ááᯠá¡ááá¯á¡áá»á±á¬ááºáá¯á¶á·ááŒááºáá«áááºá ááá¯á·ááá¯áẠAWS Step Functions ááœáẠAWS SDK ááŸáá·áº ááŒááºáááºá¡áá°ážá¡ááŒá±á¬ááºážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á API áá±á«áºááá¯ááŸá¯áá»á¬ážááŸáááá·áº ááá·áºáá¯ááºááᯠrun ááá¯ááºáá«áááºá
Lambda ááẠá¡ááœááºáááŸáááá¯ááºáá±á¬ ááœááºáá»á°áá¬á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶áá±á«áºááœáẠáá¯ááºááá¯áá¯ááºáá±á¬ááºááŒá®áž áá¬áá¬ááŸáá·áº áááºáááºááŸá¯á áá áºááááºážááááºážááŸá¯á á¡áááºážá¡ááŒá áºáá¶á·ááá¯ážááŸá¯á á¡ááá¯á¡áá»á±á¬ááºá áá±ážáá»ááŸá¯á áá¯ááºá á±á¬áá·áºááŒáá·áºááŒááºážááŸáá·áº ááŸááºáááºážáá±ážááŒááºážá¡áá«á¡ááẠá¡áááºážáá¶ááááºáá±á¬ááºážááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠá¡ááŒáá·áºá¡ááá¬áááºááŸááááºá ááá¯ááá¯áááºááŸá¬á áááºááẠáááºááá¯ááºááᯠá¡ááºáá¯ááºáá¯ááºáááºááŸáá·áº áááºážááᯠáá¯ááºáá±á¬ááºááá·áºááá·áºá¡áá»áááºááŸáá·áº áááºáá²á·ááá¯á· á á®á ááºáááºááŸááºááẠááá¯á¡ááºáá«áááºá áá áºáááºá áááºáá±á¬ááºááŸá¯ááẠáááºážáá áááºááŸá¯ááᯠááá¯ááŒá¯áááºááŒá áºááŒá®áž ááá·áºá¡ááá®áá±ážááŸááºážá ááŒáá·áºáá¬ážá áœá¬áááŸáááá¯ááºááŸá¯ááᯠáá±áá»á¬á á±áááºá
Lambda ááᯠáááºá¡áá»áááºááŸá¬ ááŒá±á¬ááºážáááá²á
AWS Lambda ááẠááá·áºáá¯ááºá áá¬áá¬á áá¬ážááŸáá·áº runtime ááᯠáááºáá±á¬ááºááŸá¯á០áá¶á·ááá¯ážáá±ážáááœá±á· á¡áá¯á¶ážááŒá¯ááŸá¯ááá á¹á áá»áá¯ážá á¯á¶á¡ááœáẠááá·áºáá»á±á¬áºáá±á¬ á¡áááºááŒá±áá±á¬ ááœááºáá»á°áá¬ááááºáá±á¬ááºážáá áºáá¯ááŒá áºáááºá áá¬áá¬ááŒá¯ááŒááºááááºážááááºážááŒááºážá á á®áá¶áá±á¬ááºááœááºáá±ážááŒááºážááŸáá·áº á áá±ážáá»á²á·ááŒááºážááá¯á·ááᯠáá»áá¯ážááŒá±á¬ááºážáá®áá»á±á¬áºáá±á¬ áá¯ááºáá»á ááááºááŒáá·áº ááá·áºáá¯ááºááŸáá·áº áá¯ááºáááºážáá¯áá¹ááááᯠá¡á¬áá¯á¶á áá¯ááºááá¯áá«áá AWS Lambda ááẠáá»áááºážáá±ááœá¬ážáááá·áºáááºážááŒá áºáááºá
Lambda ááẠáááá¯ááááºážáááºáž á¡ááºáá¬áá±á·á áºáá»á¬ážááᯠáááºáá®ážáááºá¡ááœáẠá á¶ááŒááŒá áºááŒá®áž API Gateway ááŸáá·áº ááœá²áááºá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«ááœáẠáááºááẠáá¯ááºáá»á ááááºáá»á¬ážááᯠáááááá¬áᬠáá»áŸá±á¬á·áá»ááá¯ááºááŒá®áž á á»á±ážááœááºááá¯á· ááá¯ááá¯ááŒááºáááºá áœá¬ áá±á¬ááºááŸáááá¯ááºáááºá Lambda áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áááºááŸáá·áº áá¬áá¬áá²á·áááá¯áá¬ááᯠá á¯á ááºážáááºá¡ááœáẠááœá±ážáá»ááºá áá¬áá»á¬áž á¡áá»áá¯ážáá»áá¯ážááŸááá«ááẠ- áá°ááá¯ááºážááẠáááºážááá¯á·ááááºážááá¯ááºá¡áá±á«áºá¡ááŒá±áá¶á ááá·áºáá»á±á¬áºáá±á¬á¡áá¬ááᯠááœá±ážáá»ááºááá¯ááºáááºá
Lambda ááẠááá·áºá¡á¬áž á¡áá¯ááºáá»á¬ážá áœá¬ááᯠáá¯ááºáá±á¬ááºááá¯ááºá á±áá«áááºá ááá¯á·ááŒá±á¬áá·áº CloudWatch áá¶á·ááá¯ážááŸá¯ááŒá±á¬áá·áº áááºááẠááœáŸá±á·ááá¯ááºážáá¬ážáá±á¬ á¡áá¯ááºáá»á¬ážááᯠáááºáá®ážááá¯ááºááŒá®áž áá áºáŠážáá»ááºáž áá¯ááºáááºážá ááºáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬ááºáá¯ááºáá±á¬ááºááá¯ááºáááºá áááºáá±á¬ááºááŸá¯á ááá±á¬ááá¬áááŸáá·áº á¡áá¯á¶ážááŒá¯ááŸá¯ááŒááºážáááºááŸá¯á¡áá±á«áº ááá·áºáááºáá»ááºáá»á¬ážáááŸááá« (ááŸááºáá¬ááºáá¯á¶ážá áœá²ááŸá¯ááŸáá·áº á¡áá»áááºááᯠááá·áºááœááºážá ááºážá á¬ážáááº)á ááŸáá·áº Lambda ááá¯á¡ááŒá±áá¶ááá·áº ááŒáá·áºá á¯á¶áá±á¬ ááá¯ááºáááá¯áááºáá±á¬ááºááŸá¯ááᯠá áá áºááá»áá¯ááºáá±á¬ááºááŒááºážá០ááá·áºá¡á¬áž áááºááá·áºá¡áá¬áá០áá¬ážáá®ážááááºáááºáááºááá¯ááºáá«á
á€áá±áá¬ááœáẠáááºááẠá¡áááºáááŒááºáá¯ááºáá±á¬ááºááá·áº áááºáá±á¬ááºááŸá¯ááᯠáŠážáááºááá·áº áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáááºáá®ážááá¯ááºáááºá áá¬áá¬áẠá¥ááá¬áá áºáá¯ááẠáá¯ááºáá¯á¶á áá±ážáá»á²á·ááŒááºáž ááŒá áºáááºá ááŒáá·áºáá±ááá·áºá áá áºáá»á¬ážááœááºáááºá Lambda áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááẠáááºááœááºáá±áá±ážáááºá
ááá¯á·ááŒá±á¬áá·áºá áááºááẠááœááºáá»á°áá¬á¡áááºážá¡ááŒá áºáá»á¬ážááœá²áá±ááŒááºážááŸáá·áº á á®áá¶ááá·áºááœá²ááŒááºážááá¯á·ááᯠáááá¯ááºááœááºááá¯áá«á AWS Lambda ááᯠá ááºážáá¯á¶ážááŒáá·áºáá«á á¡áááºá áááºááẠáá±ážáá¶áá±á¬á á¡áááºážá¡ááŒá áº-áá»á¬ážáá±á¬ ááœááºáá»ááºááŸá¯áá»á¬ážááᯠáááá¯á¡ááºáá«áá AWS Lambda ááá¯áááºáž á ááºážááŒáá·áºáá«á á¡áááºá ááá·áºáá¯ááºááẠáá¯á¶ááŸááºáááºáááºáá±áá«áá áááºááẠAWS Lambda ááᯠá ááºážááŒáá·áºááá·áºáááºá
áá¯á¶ááœá¯á¶ááŸá¯
ááá¯á¡áá»áááºá¡áá áá¯á¶ááŒá¯á¶áá±ážááŸáá·áº áááºáááºá ááá¯ááºááŒá¬ážááŸá¯áá»á¬áž áááŸááá±ážáá±á á¡ááŒá¬ážáá áºáááºááœááºá á€áá±á¬áºáááºáá¡ááœááºážááá¯ááºážáá¯ááºáááºážá ááºáá»á¬ážááŸáá·áº á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯á¡ááºá¹áá«áááºá¡áá»á¬ážá¡ááŒá¬ážááᯠAWS Lambda á á®áá¶ááá·áºááœá²áá¬ážáá±á¬ runtime áááºáááºážáá»ááºááœáẠá¡áá¯á¶ážááŒá¯áá°á០ááŸááºáá¬ážáá±á¬ááŒá±á¬áá·áºá áá±áá¯áá»á¡á¬ážááŒáá·áº áááºáá¶áá¬ážáá±á¬ á ááºážáá»ááºážá¡áá»áá¯á·ááẠcloud áá¯á¶ááŒá¯á¶áá±ážááŸáá·áº ááááºááá¯ááºáá±á¬á·áá«á
AWS áááºáá±á¬ááºááŸá¯á¡áá»á¬ážá á¯áá²á·ááá¯á·áááºá Lambda ááẠAWS ááŸáá·áº áá¯á¶ážá áœá²áá°ááŒá¬ážááœáẠáá»áŸáá±áá¬ážáá±á¬ áá¯á¶ááŒá¯á¶áá±ážááŸáá·áº ááá¯ááºáá¬ááŸá¯á¡ááŒá±áá¶ááŒáá·áº áá¶á·ááá¯ážáá±ážáá¬ážáááºá AWS ááẠhost operating system ááŸáá·áº virtualization á¡ááœáŸá¬á០á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááá¯ááºááá¯ááºááŸá¯áá»á¬ážá áá¯ááºááá¯ááºážááá¯ááºáá¬áá¯á¶ááŒá¯á¶áá±ážá¡áá áááºáá±á¬ááºááŸá¯á¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠááááºážááááºážááŒááºážá á á®áá¶ááá·áºááœá²ááŒááºážááŸáá·áº á á±á¬áá·áºááŒáá·áºááŒááºážááá¯ááºáᬠáá¬áááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºáá±ážáá±á¬ááŒá±á¬áá·áº á€áá°ááẠáá¯á¶ážá áœá²áá°á¡ááœáẠáááºáááºááŸá¯ááá¯ááºáá¬áááºáá¯ááºáááºááá¯ážááᯠáá»áŸá±á¬á·áá»áá±ážáá«áááºá
AWS Lambda á¡ááŒá±á¬ááºáž á¡ááá¡áá»ááŒá±á¬ááá»áŸáẠAWS ááẠá¡áááºážáá¶á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶á áááºá ááºáá±á¬ááºáá¶áááºáá±á¬ááºááŸá¯áá»á¬ážá áááºáááºááŸá¯á áá áºááŸáá·áº á¡ááá®áá±ážááŸááºážááááºáá±á¬ááºážáá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááẠáá¬áááºááŸááá«áááºá á¡áá¯á¶ážááŒá¯áá°á áá¯ááºáá¯á¶ááŒá¯á¶áá±ážá¡ááœááºá áá»áŸáá¯á·ááŸááºá¡áá»ááºá¡áááºáá»á¬ážááᯠááááºážáááºážááŒááºážá áááºážááá¯áááºáá±á¬ááºááœáá·áºááᯠááááºážáá»á¯ááºááŒááºážá¡ááŒáẠLambda áááºáá±á¬ááºááŸá¯ááŸáá·áº á¡áááºážá¡ááŒá áºáá»á¬áž (Identity and Access Management, IAM) ááᯠá¡áá¯á¶ážááŒá¯ááá·áº áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá ááá·áºáááºáá»ááºáá»á¬ážá¡ááœááºáž á¡áá«á¡áááºá
á¡á±á¬ááºáá«áá¯á¶ááœáẠAWS Lambda ááŸáá·áº áááºááá¯ááºááá·áº áá»áŸáá±áá¬áááºáá°ááŸá¯áá¯á¶á á¶ááᯠááŒááá¬ážáááºá AWS Responsibility ááẠáááá¹áá±á¬áºáá±á¬ááºááŒá áºááŒá®áž Customer Responsibility ááẠá¡ááŒá¬áá±á¬ááºááŒá áºáááºá áááºááœá±á·ááŒááºáááá·áºá¡ááá¯ááºážá AWS ááẠáááºáá±á¬ááºááŸá¯ááœááºááá·áºááœááºážáá¬ážáá±á¬ á¡ááá®áá±ážááŸááºážáá»á¬ážá¡ááœáẠááá¯ááá¯áá¬áááºáá°áá«áááºá
AWS Lambda á¡ááœáẠáá»áŸáá±áá¬ážáá±á¬ áá¬áááºáá»á±ááŸá¯áá¯á¶á á¶
Lambda á¡ááŒá±ážá¡áá»áááº
Lambda á á¡áááá¡á¬ážáá¬áá»ááºááŸá¬ ááá·áºááá¯ááºá á¬áž áá¯ááºáá±á¬ááºáá»ááºáá áºáá¯ááᯠáá¯ááºáá±á¬ááºááŒááºážááŒáá·áºá áááºáá±á¬ááºááŸá¯ááá¯ááºááá¯ááºá ááá¯á¡ááºáá±á¬á¡áááºážá¡ááŒá áºáá»á¬ážááᯠááœá²áá±áá±ážááŒááºážááŒá áºáááºá á áá áºá á®áá¶ááá·áºááœá²ááŸá¯ááœáẠá¡áá»áááºááŸáá·áº á¡á¬ážá áá¯ááºáá¯ááºááŸá¯ááᯠááŸá±á¬ááºááŸá¬ážááá¯ááºááŒá®áž áá¯ááºáááºážááá¯ááºáᬠáá¯áá¹áááá±áááŸáá·áº áá¯ááºáá±ážááŒááºážááá¯á·ááᯠá¡á¬áá¯á¶á áá¯ááºááá¯ááºáááºá
Lambda áááºáá±á¬ááºááŸá¯ááᯠáá±áá¬ááºááŸá áºá ááºáž ááœá²ááŒá¬ážáá¬ážáááºá ááááá áºáá¯á ááááºážáá»á¯ááºáá±ážáá±áá¬ááºá Wikipedia á á¡ááá¯á¡á ááááºážáá»á¯ááºáá±ážáá±áá¬ááºááẠá¡áá»ááºááŒáááºážááŒá±á¬ááºážááŸáá·áº áááºážááŒá±á¬ááºážáá»á¬ážááᯠááá¯á·áá±á¬ááºáá±ážááá·áº ááœááºáááºá á¡á áááºá¡ááá¯ááºážáá áºáá¯ááŒá áºáááºá áááºážááẠá¡áá¯ááºáá¬áááºáá»á¬áž áá¶á·ááá¯ážáá±ážááŒááºážá áááºáá±á¬ááºááŸá¯áá±ážááŒááºážááŸáá·áº ááœá²áá±áá±ážááŒááºážááá¯ááºáᬠááá¹áá¬áá¯á¶ážááá¯ááºáᬠáá¯á¶ážááŒááºáá»ááºáá»á¬ážáá»ááŸááºááá·áº á¡áááá¡á áááºá¡ááá¯ááºážááŒá áºáááºá ááá¯á·á¡ááŒááºá ááááºážáá»á¯ááºáá±ážáá±áá¬ááºááẠáááºážááŒá±á¬ááºážááŒááŒááºážááŸáá·áº á¡ááœá¬ážá¡áá¬áá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááẠáá¬áááºááŸáááá·áº ááŒá±ááŸááºážáá»ááºáá±ážáá°á ááœááºááẠtopology á¡ááŒá Ạáá¯ááºáá±á¬ááºáááºá
áá¯ááááá±áá¬ááºááẠáá±áá¬áá±áá¬ááºááŒá áºáááºá ááááºážáá»á¯ááºáá±ážáá±áá¬ááºáá²á·ááá¯á·áááºá áááºážááœáẠááá¯ááºááá¯ááºáá¬áááºáá»á¬ážááŸááááºá ááááºážáá»á¯ááºááŸá¯áá±áá¬ááºááẠáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠAPIs áá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááẠ(CreateFunctioná UpdateFunctionCode) ááŸáá·áº Lambda ááẠá¡ááŒá¬ážáá±á¬ AWS áááºáá±á¬ááºááŸá¯áá»á¬ážááŸáá·áº áááºááœááºáá¯á¶ááᯠááááºážáá»á¯ááºáááºá áá±áá¬áá±áá¬ááºááẠLambda áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááá·áº Invoke API ááᯠááááºážáá»á¯ááºáááºá áá¯ááºáá±á¬ááºáá»ááºáá áºáá¯ááᯠáá±á«áºááŒá®ážáá±á¬ááºá ááááºážáá»á¯ááºááŸá¯áá±áá¬ááºááẠááá¯áá¯ááºáá±á¬ááºáá»ááºá¡ááœáẠááŒáá¯áááºááŒááºáááºáá¬ážááá·áº ááŸáááŒá®ážáá¬áž runtime áááºáááºážáá»ááºááᯠááœá²áá±áááºááŸááºáá±ážáááºá ááá¯á·áá±á¬áẠáááºážááŸááá¯ááºááᯠáá¯ááºáá±á¬ááºáááºá
AWS Lambda ááẠJava 8á Python 3.7á Goá NodeJS 8á .NET Core 2 ááŸáá·áº á¡ááŒá¬áž programming language á¡áá»áá¯ážáá»áá¯ážááᯠáááºážááá¯á·á áááºááá¯ááºáᬠruntime áááºáááºážáá»ááºáá»á¬ážááŸáááá·áº áá¶á·ááá¯ážáá±ážáá«áááºá AWS ááẠáááºážááá¯á·ááᯠáá¯á¶ááŸááºá¡ááºááááºáá¯ááºááŒááºážá áá¯á¶ááŒá¯á¶áá±ážáá¬áá±ážááŒááºážáá»á¬ážááᯠááŒáá·áºáá±ááŒááºážááŸáá·áº á€áááºáááºážáá»ááºáá»á¬ážááœáẠá¡ááŒá¬ážáá±á¬ ááŒá¯ááŒááºááááºážááááºážááŒááºážááá¯ááºáᬠáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºáá«áááºá Lambda ááẠááá·áºá¡á¬áž ááá·áºáá»á±á¬áºáá±á¬ runtime ááᯠáááºááá¯ááºááá¯ááºá¡áá±á¬ááºá¡áááºáá±á¬áºáá±ážáááºááá¯áá«á á¡ááŒá¬ážáá¬áá¬á áá¬ážáá»á¬ážááá¯áááºáž á¡áá¯á¶ážááŒá¯ááá¯ááºáááºá ááá¯á·áá±á¬ááºáááºážááá¯á¶ááŒá¯á¶áá±ážááá¯á á±á¬áá·áºááŒáá·áºááŒááºážá¡áá«á¡áááºáááºážáááááºážááááºážááŸá¯ááá¯áááºááá¯á áá¯ááºááááá·áºáááºá
á¡á¬ážáá¯á¶ážáááºááá¯á¡áá¯ááºáá¯ááºááá²á áááºáá±á¬ááºááŸá¯á ááá·áºáá¯ááºáá±á¬ááºáá»ááºááœá±ááᯠáááºááá¯áá¯ááºáá±á¬ááºááá²á
áá¯ááºáá±á¬ááºáá»ááºáá áºáá¯á á®ááẠáááºážáá¯ááºáá±á¬ááºáá»ááºáá¡áááºáá¬á¡ááœááºáá¬áááºááŸáááŒá®áž áá»ááºáá®ážáá¶áááá·áº áá áºáᯠááá¯á·ááá¯áẠáá áºáá¯áááºááá¯áá±á¬ áá®ážááŒá¬ážáááºáááºážáá»ááºáá»á¬ážááœáẠáá¯ááºáá±á¬ááºáááºá áááºáááºážáá»ááºáá áºáá¯á á®ááẠáá áºááŒáááºáá»áŸáẠáá±á«áºááá¯ááŸá¯áá áºáá¯áᬠááŒá¯áá¯ááºáá±á¬áºáááºáž áá°áá®áá±á¬áá¯ááºáá±á¬ááºáá»ááºááá¯á· áá¶áá«ááºá ááºáá±á«áºááá¯ááŸá¯áá»á¬áž á¡áá»á¬ážá¡ááŒá¬ážááŸááá«á áááºážááᯠááŒááºáááºá¡áá¯á¶ážááŒá¯áá«áááºá microVM áá¯áá±á«áºáá±á¬ áá¬á·ááºáá² á¡áá¯áá¯ááºááŒááºáž ááŒáá·áº á¡áá¯ááºáá¯ááºáá»ááẠáááºáááºážáá»ááºá¡á¬ážáá¯á¶ážááẠvirtual machines áá»á¬ážáá±á«áºááœáẠá¡áá¯ááºáá¯ááºáá«áááºá microVM áá áºáá¯á á®ááᯠáá®ážááŒá¬áž AWS á¡áá±á¬áá·áºáá áºáá¯á¡ááŒá ẠáááºááŸááºáá¬ážááŒá®áž ááá¯á¡áá±á¬áá·áºá¡ááœááºáž ááá°áá®áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºáááºá¡ááœáẠáááºáááºážáá»ááºáá»á¬ážá០ááŒááºáááºá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá MicroVM áá»á¬ážááᯠAWS ááŸááá¯ááºááá¯ááºááŒá®áž áááºáááºáá±ááá·áº Lambda Worker áá¬á·ááºáá²ááááºáá±á¬ááºážá áááºáá±á¬ááºááŸá¯áá¯ááºááœááºáá»á¬ážááœáẠááá·áºááœááºážáá¬ážáááºá áá°áá®áá±á¬ runtime ááᯠááá°áá®áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááŒáá·áº á¡áá¯á¶ážáááŒá¯ááá¯ááºáááᯠááá°áá®áá±á¬ AWS á¡áá±á¬áá·áºáá»á¬ážá¡ááœáẠmicroVM áá»á¬ážááᯠáá®ážááŒá¬ážá¡áá¯á¶ážááŒá¯ááááá«á
AWS Lambda Isolation Model
áááºáááºáá»áááºáááºáááºážáá»ááºáá»á¬ážááᯠáá®ážááŒá¬ážááœá²áá¯ááºááŒááºážááẠááá¹ááá¬ážáá»á¬ážá áœá¬ááᯠá¡áá¯á¶ážááŒá¯áá¬ážáááºá áááºáááºážáá»ááºáá áºáá¯á á®á ááááºáááºážá¡ááá·áºááœáẠá¡á±á¬ááºáá«á¡á áááºá¡ááá¯ááºážáá»á¬ážá áá®ážááŒá¬ážáááá¹áá°áá»á¬áž ááŸááá«áááºá
- áá¯ááºáá±á¬ááºáá»ááºáá¯ááº
- áá¯ááºáá±á¬ááºáá»ááºá¡ááœáẠááœá±ážáá»ááºáá¬ážáá±á¬ áááºááá·áº Lambda á¡ááœáŸá¬áá»á¬áž
- áá¯ááºáá±á¬ááºáá»áẠá¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ áááºáááºážáá»ááº
- Amazon Linux ááá¯á¡ááŒá±áá¶á á¡áá¯á¶ážááŒá¯áá°áá±áá¬ááœáẠá¡áááºážáá¯á¶áž
ááá°áá®áá±á¬ áá¯ááºáá±á¬ááºááŸá¯áááºáááºážáá»ááºáá»á¬ážááᯠáá®ážááŒá¬ážááœá²áá¯ááºááẠá¡á±á¬ááºáá«ááá¹ááá¬ážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áááº-
- cgroups - runtime áááºáááºážáá»ááºáá áºáá¯á á®á¡ááœáẠCPUá memoryá storage ááŸáá·áº network resources áá»á¬ážááá¯á· áááºáá±á¬ááºááœáá·áºááᯠááá·áºáááºáá¬ážáááºá
- namespaces - áá¯ááºáááºážá áẠID áá»á¬ážá á¡áá¯á¶ážááŒá¯áá° ID áá»á¬ážá ááœááºáááºááŒá¬ážáá¶áá»á¬áž ááŸáá·áº Linux kernel á០á á®áá¶ááá·áºááœá²ááá·áº á¡ááŒá¬ážá¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡á¯ááºá á¯ááœá²á·ááŒááºážá runtime áá áºáá¯á á®ááẠáááºážáááá¯ááºááá¯áẠnamespace ááœááºá¡áá¯ááºáá¯ááºáááºá
- seccomp-bpf - runtime ááœááºáá¯á¶ážááá¯ááºáá±á¬á áá áºáá±á«áºááá¯ááŸá¯áá»á¬ážááá¯ááá·áºáááºáááºá
- iptables ááŸáá·áº routing tables - áá áºáá¯ááŸáá·áºáá áºáᯠááœááºáá»ááºááŒááºážáááºáááºážáá»ááºáá»á¬ážááᯠáá®ážááŒá¬ážááœá²áá¯ááºááŒááºážá
- chroot - á¡áááºážáá¶ááá¯ááºá áá áºááá¯á· á¡ááá·áºá¡áááºááŒáá·áº áááºáá±á¬ááºááœáá·áºáá±ážáááºá
AWS áá®ážááá·áº áá®ážááŒá¬ážááœá²áá¯ááºááŒááºážáááºážááá¬áá»á¬ážááŸáá·áº áá±á«ááºážá ááºáá¬ážáá±á¬ á€ááá¹ááá¬ážáá»á¬ážááẠáá¯á¶ááŒááºá áááºáá»ááá±á¬ runtime ááœá²ááŒá¬ážááŸá¯ááᯠáá±áá»á¬á á±áááºá á€áááºážááŒáá·áº áá®ážááŒá¬ážááœá²áá¬ážáá±á¬ áááºáááºážáá»ááºáá»á¬ážááẠá¡ááŒá¬ážáááºáááºážáá»ááºáá»á¬ážá០áá±áá¬áá»á¬ážááᯠáááºáá±á¬ááºááŒááºáž ááá¯á·ááá¯áẠááŒááºáááºááŒááºážáááŒá¯ááá¯ááºáá«á
áá°áá®áá±á¬ AWS á¡áá±á¬áá·áºá runtime á¡áá»á¬ážá¡ááŒá¬ážááᯠmicroVM áá áºáá¯áááºážááœáẠáá¯ááºáá±á¬ááºááá¯ááºáá±á¬áºáááºáž áááºááá·áºá¡ááŒá±á¡áá±ááœááºá០microVM áá»á¬ážááᯠááá°áá®áá±á¬ AWS á¡áá±á¬áá·áºáá»á¬ážááŒá¬ážááœáẠáá»áŸáá±ááá¯ááºáááºááá¯ááºáá±á AWS Lambda ááẠmicroVM áá»á¬ážááá¯ááœá²áá¯ááºááẠááá¹ááá¬ážááŸá áºáá¯áá¬á¡áá¯á¶ážááŒá¯áááº- EC2 instances ááŸáá·áº Firecrackerá EC2 ááŒá áºáááºáá»á¬ážááá¯á¡ááŒá±áá¶á Lambda ááœááºá§áá·áºáááºá¡áá®ážáá»ááºáá±ááŒááºážááẠ2015 áá¯ááŸá áºááááºážáááŒá áºáááºá Firecracker ááẠserverless workloads á¡ááœáẠAWS á០á¡áá°ážáá®ááá¯ááºážáá¯ááºáá¬ážáá±á¬ open source hypervisor á¡áá áºááŒá áºááŒá®áž 2018 áá¯ááŸá áºááœáẠááááºáááºáá²á·áááºá microVMs áááºáááºáá±áá±á¬ áá¯ááºááá¯ááºážááá¯ááºáᬠáá¬á·ááºáá²ááᯠááá°áá®áá±á¬ á¡áá±á¬áá·áºáá»á¬ážááŒá¬ážááœáẠáá»áŸáá±áá¬ážáááºá
áááºáááºážáá»ááºááᯠáááºáááºááŒááºážááŸáá·áº áá¯ááºáááºážá ááºáá»á¬ážááᯠáá±á¬áºááŒáááºá
Lambda runtime áá»á¬ážááẠááá°áá®áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá¡ááœáẠáá°ážááŒá¬ážáá±á¬áºáááºážá áááºážááá¯á·ááẠáá°áá®áá±á¬áá¯ááºáá±á¬ááºáá»ááºááᯠáááºáá«ááá²áá²áá±á«áºááá¯ááá¯ááºáááºá ááá¯ááá¯áááºááŸá¬ runtime ááẠááá»ááºá á®ážáá® áá¬áá®áá»á¬ážá áœá¬ááŒá¬á¡á±á¬áẠááŸááºáááºááá¯ááºáááºá
Lambda runtime áá áºáá¯á á®ááœáẠ/tmp directory ááŸáááá·áº áááºáá±á¬ááºááá¯ááºáá±á¬ á á¬áá±ážááá¯ááºáá±á¬ ááá¯ááºá áá áºáááºáž ááŸááá«áááºá áááºážáá¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááᯠá¡ááŒá¬áž runtime áá»á¬ážá០áááºáá±á¬ááºááááá«á process state persistence ááŸáá·áºáááºáááºáá«á /tmp ááá¯á·áá±ážáá¬ážáá±á¬ááá¯ááºáá»á¬ážááẠruntime áááºáááºážáá»ááºááááá¶ááá¬áá áºáá¯áá¯á¶ážá¡ááœááºááŒá áºáááºá áááºážá á ááºáááºáá°ááŸá¯ áá±á¬áºáááºáá»á¬ážááᯠáááºááŒááºážáá²á·ááá¯á·áá±á¬ á á»á±ážááŒá®ážáá±á¬ áá¯ááºáááºážáá±á¬ááºáá¬áá»á¬ážá¡ááœáẠá¡áá°ážááá·áºáá»á±á¬áºáá±á¬ áá±á«áºááá¯ááŸá¯áá»á¬ážá áœá¬á ááááºáá»á¬ážááᯠá á¯áá±á¬ááºážááá¯ááºá á±áá«áááºá
áá¯ááºážáá±á«áºááá¯ááŸá¯áá±áá¬ááœáŸá²ááŒá±á¬ááºáž
Invoke API ááᯠááŒá áºáááºáá¯áẠááŸáá·áº áá±á¬ááºážááá¯áá»ááº-áá¯á¶á·ááŒááºááŸá¯áá¯áẠááŸá áºáá»áá¯ážááŒáá·áº á¡áá¯á¶ážááŒá¯ááá¯ááºáááºá ááœá²áá¯ááºááœááºá áá±á«áºááá¯ááŸá¯ááᯠáá±á¬ááºááá¯ááºážááœáẠáá¯ááºáá±á¬ááºáááºá¡ááœáẠáááºážá á®áá áºáá¯ááá¯á· áá±á«ááºážááá·áºáá¬ážáááºá áá±á¬ááºážááá¯áá»ááº-áá¯á¶á·ááŒááºááŸá¯áá¯ááºááœááºá áá±ážáá¬ážáá±á¬ áá±ážáá±á¬ááºááŸá¯ááŒáá·áº áá¯ááºáá±á¬ááºáá»ááºááᯠáá»ááºáá»ááºážáá±á«áºáááºá ááá¯á·áá±á¬áẠáá¯á¶á·ááŒááºááŸá¯ááᯠááŒááºáá±ážáááºá ááŸá áºáá¯áá¯á¶ážááœááºá áá¯ááºáá±á¬ááºáá»ááºááẠLambda áááºáááºážáá»ááºááœáẠáá¯ááºáá±á¬ááºáá±á¬áºáááºáž ááá°áá®áá±á¬ payload áááºážááŒá±á¬ááºážáá»á¬ážááŒáá·áº áá¯ááºáá±á¬ááºáááºá
áá±á¬ááºážááá¯áá»ááº-áá¯á¶á·ááŒááºááŸá¯áá±á«áºááá¯ááŸá¯áá»á¬ážá¡ááœááºážá áá±ážáá±á¬ááºááŸá¯ááá¬áááẠAWS API Gateway ááá¯á·ááá¯áẠAWS SDK áá²á·ááá¯á·áá±á¬ áá±á¬ááºážááá¯ááŸá¯áá¯ááºáá±á¬ááºááŒááºáž API (API Caller) á០áááºáá»áááºááœááºáá»áŸá¬á áá áºááá¯á·á ááá¯á·áá±á¬áẠLambda áá±á«áºááá¯ááŸá¯áááºáá±á¬ááºááŸá¯ (Invoke Service) ááá¯á· á á®ážáááºážááœá¬ážáá«áááºá áá±á¬ááºááá¯ááºážááœáẠáá¯ááºáá±á¬ááºáá»ááºááᯠáá¯ááºáá±á¬ááºáááºá¡ááœáẠááá·áºáá»á±á¬áºáá±á¬áááºáááºážáá»ááºááᯠáá¯á¶ážááŒááºááŒá®áž áá±á«áºááá¯ááŸá¯ááᯠá¡ááŒá®ážáááºááẠááá¯áá±áá¬ááœáẠpayload ááá¯ááŒááºáááºážáááºá load balancer ááẠá¡ááºáá¬áááºáá±á«áºááŸá TLS-protected traffic ááᯠáááºáá¶áááŸáááẠá Lambda áááºáá±á¬ááºááŸá¯á¡ááœááºáž- áááºáá»áááºááŸáááŸá¯ááŒá®ážáá±á¬ááº-- áá®ážááŒá¬áž AWS áá±áááŸá á¡ááœááºáž VPC ááá¯ááŒááºáááºážááœá¬ážáá«áááºá
AWS Lambda áá±á«áºááá¯ááŸá¯áá¯ááºáá±á¬ááºááŒááºážáá¯á¶á á¶- áá±á¬ááºážááá¯áá»ááº-áá¯á¶á·ááŒááºááŸá¯áá¯ááº
á¡á á®á¡á ááºáá±á«áºááá¯ááŸá¯áá»á¬ážááᯠáá»ááºáá»ááºážááŒá¯áá¯ááºááá¯ááºááẠááá¯á·ááá¯áẠáááºážá á®áá áºáá¯ááœáẠááá·áºááá¯ááºáááºá á¡áá»áá¯á·ááá á¹á áá»á¬ážááœááºá áááºážá á®ááŒááºážááᯠá¡ááœááºážááá¯ááºážá á áºáááºážáá±á¬ááºáá°ááŸá¯áá¯ááºáááºážá ááºááŸáááá·áº Lambda áá±á«áºááá¯ááŸá¯ááŒáá·áºá á¯á¶ááŒááºážáááºáá±á¬ááºááŸá¯ááá¯á· áá±á«áºááá¯ááŸá¯áá»á¬ážáá±ážááá¯á·ááá·áº Amazon SQS (Amazon Simple Queue Service) ááᯠá¡áá¯á¶ážááŒá¯áá¬ážáááºá áá°ážáááºážááœá¬ážáá¬ááŸá¯á¡á¬áž TLS á០áá¬ááœááºáá¬ážááŒá®áž Amazon SQS ááœáẠááááºážáááºážáá¬ážááá·áº á¡áá»ááºá¡áááºáá»á¬ážá áááºáá±á¬ááºážáá¯ááºááŸááºááŒááºážáááºáž áááŸááá«á
ááœá²áá¯ááºážáá±á«áºááá¯ááŸá¯áá»á¬ážááẠáá¯á¶á·ááŒááºááŸá¯áá»á¬ážááᯠáááŒááºáá«â Lambda Worker ááẠáááºááá·áºáá¯á¶á·ááŒááºááŸá¯á¡áá»ááºá¡áááºááá¯áááᯠáá»á áºáá»á°ááŸá¯áá¬ážáááºá Amazon S3á Amazon SNSá CloudWatch ááŸáá·áº á¡ááŒá¬ážáááºážááŒá áºáá»á¬ážá០ááŒá áºáááºá¡ááŒá±ááŒá¯ áá±á«áºááá¯ááŸá¯áá»á¬ážááᯠLambda á០ááœá²áá¯ááºááœáẠáá¯ááºáá±á¬ááºáá«áááºá Amazon Kinesis ááŸáá·áº DynamoDB ááá¯ááºážáá»á¬ážá០áá±á«áºááá¯ááŸá¯áá»á¬ážá SQS áááºážá á®ááŸá¯áá»á¬ážá Application Load Balancer ááŸáá·áº API Gateway áá±á«áºááá¯ááŸá¯áá»á¬ážááᯠáá±á¬ááºážááá¯áá»ááº-áá¯á¶á·ááŒááºááŸá¯áá¯á¶á á¶ááŒáá·áº áá¯ááºáá±á¬ááºáá«áááºá
á á±á¬áá·áºááŒáá·áºáá±á·áá¬ááŒááºáž
á¡á±á¬ááºáá«ááá¯á·á¡áá«á¡ááẠAWS ááá¹ááá¬ážáá»á¬ážááŸáá·áº áááºáá±á¬ááºááŸá¯á¡áá»áá¯ážáá»áá¯ážááᯠá¡áá¯á¶ážááŒá¯á Lambda áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá á±á¬áá·áºááŒáá·áºá á áºáá±ážááá¯ááºáá«áááºá
amazoncloudwatch
áá±á¬ááºážááá¯áá»ááºá¡áá±á¡ááœááºá áá±á¬ááºážááá¯ááŸá¯ááŒá¬áá»áááºááŸáá·áº áá¡á±á¬ááºááŒááºáá±á¬ áá±á¬ááºážááá¯áá»ááºá¡áá±á¡ááœááºá
ááá·áº á¡áá»áá¯ážáá»áá¯ážáá±á¬ á
á¬áááºážááá¬ážáá»á¬ážááᯠá
á¯áá±á¬ááºážáá«á
Amazon CloudTrail
áááºá AWS á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááŸáá·áº áááºá
ááºáá±áá±á¬ á¡áá±á¬áá·áºáá¯ááºáá±á¬ááºáá»áẠá¡áá»ááºá¡áááºáá»á¬ážááᯠááŸááºáááºážáááºááŒááºážá á
ááºáááºáááŒáẠá
á±á¬áá·áºááŒáá·áºááŒááºážááŸáá·áº ááááºážááááºážááŒááºážááá¯á·ááᯠááœáá·áºááŒá¯áááºá AWS Management Consoleá AWS SDKá ááœááºáááºážááá¯ááºážáá°ážááºáá»á¬ážááŸáá·áº á¡ááŒá¬áž AWS áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áá¯ááºáá±á¬ááºáá²á·áá±á¬ áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá ááŒá®ážááŒáá·áºá
á¯á¶áá±á¬ ááŸááºáááºážááᯠááá·áºááœáẠáááŸááááºááŒá
áºáá«áááºá
AWS X-Ray
ááá·áºá¡ááá®áá±ážááŸááºážááœáẠáááºážáá¡ááœááºážááá¯ááºážá¡á
áááºá¡ááá¯ááºážáá»á¬ážááŒá±áá¯á¶ááá¯á¡ááŒá±áá¶á áá±á¬ááºážááá¯ááŸá¯áá¯ááºáá±á¬ááºááŒááºážáá¡ááá·áºá¡á¬ážáá¯á¶ážááœáẠááŒá®ážááŒáá·áºá
á¯á¶áá±á¬ááŒááºááá¯ááºá
áœááºážááᯠáá±ážáá«áááºá ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááŸáá·áº áá¯ááºáá¯ááºááŸá¯áááºáááºážáá»ááºááœáẠá¡ááá®áá±ážááŸááºážáá»á¬ážááᯠááœá²ááŒááºážá
áááºááŒá¬ááẠááá·áºááá¯ááœáá·áºááŒá¯áááºá
AWS Config
Lambda áá¯ááºáá±á¬ááºáá»ááºááœá²á·á
ááºážáá¯á¶ (áá»ááºááŒááºážá¡áá«á¡áááº) ááŸáá·áº runtime áá»á¬ážá áááºáá»á¬ážá ááá¯ááºááœááºáá°á¡áááºáá»á¬ážá áá¯ááºá¡ááœááºá¡á
á¬ážá áááºááá¯áá®ááœá²áá±ááŸá¯á á¡áá»áááºáá¯ááºáá»áááºáááºáááºáá»á¬ážááŸáá·áº áááºá
ááºááŸá¯áááºáááºáá»á¬ážá¡ááŒáẠLambda IAM áá¯ááºáá±á¬ááºáá»ááºá¡áááºážááá¹áá subnetting ááŸáá·áº áá¯á¶ááŒá¯á¶áá±ážá¡ááœá²á·áá»áááºáááºááŸá¯áá»á¬ážááá¯á·ááᯠáááºááŒá±áá¬áá¶ááá¯ááºáááºááŒá
áºáááºá .
áá±á¬ááºáá»ááº
AWS Lambda ááẠáá¯á¶ááŒá¯á¶ááŒá®áž á¡ááœááºáááºááá¯ááºáá±á¬ á¡ááá®áá±ážááŸááºážáá»á¬áž áááºáá±á¬ááºáááºá¡ááœáẠá¡á áœááºážáááºáá±á¬ áááááá¬á¡á á¯á¶ááᯠáá±ážáá«áááºá AWS Lambda ááŸá áá¯á¶ááŒá¯á¶áá±ážááŸáá·áº ááá¯ááºáá¬ááŸá¯ á¡áá±á·á¡áá»áá·áº á¡áá»á¬ážá¡ááŒá¬ážááẠááŒáœááºážáá»ááºáá»á¬ážááŸááá±á¬áºáááºáž á¡ááŒá¬ážáá±á¬ AWS áááºáá±á¬ááºááŸá¯áá»á¬ážááœáẠáá°áá®áá«áááºá áááºá 2019 áá¯ááŸá áºá¡ááá Lambda ááẠSOC 1á SOC 2á SOC 3á PCI DSSá Health Insurance Portability and Accountability Act (HIPAA) ááŸáá·áº á¡ááŒá¬ážá ááºážáá»ááºážáá»á¬ážááŸáá·áº ááá¯ááºáá®áá«áááºá ááá¯á·ááŒá±á¬áá·áºá áááºááá±á¬ááºáááºá¡ááá®áá±ážááŸááºážááá¯á¡áá±á¬ááºá¡áááºáá±á¬áºáááºá ááºážá á¬ážáá±áá±á¬á¡áá«ááœááºá AWS Lambda áááºáá±á¬ááºááŸá¯ááá¯ááá·áºááœááºážá ááºážá á¬ážáá« - áááºážáááºáááºáá¡áá¯ááºá¡ááœááºá¡áá±á¬ááºážáá¯á¶ážááŒá áºááá¯ááºáááºá
source: www.habr.com