게임업계 it 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트::...

85
게임업계 IT 관리자를 위한 7가지 유용한 Seon Yong Park. Solutions Architect

Upload: amazon-web-services-korea

Post on 12-Apr-2017

589 views

Category:

Technology


8 download

TRANSCRIPT

Page 1: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

게임업계 IT 관리자를 위한 7가지 유용한 팁 Seon Yong Park. Solutions Architect

Page 2: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

7가지 Tips

1.  AWS  CLI  2.  EBS  GP2  vs  PIOPS  3.  VPC  flowlogs  4.  Run  커맨드  5.  IAM  cross  account  access  6.  Latency  Measurement  Health  Checks  7.  DetecLng  changes  

Page 3: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  1  –  AWS  CLI  

Page 4: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

AWS  Command  Line  Interface  

AWS  서비스를 관리하기 위한 통합 툴  

Page 5: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

MSI  (Windows)  

Bundled  (cross  plaRorm)  

pip  (cross  plaRorm)  

Page 6: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

$  aws  ec2  describe-­‐instances  

Service  (command)   Opera1on  (subcommand)  

Page 7: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

$  aws  iam  list-­‐access-­‐keys  

Service  (command)   Opera1on  (subcommand)  

Page 8: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

json text

PLACES    Seattle        WA  PLACES    Las  Vegas    NV  

table

-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐    |          SomeOperationName    |    +-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+    ||                  Places              ||    |+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+|    ||  City              |  State      ||    |+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+|    ||  Seattle        |  WA            ||    ||  Las  Vegas    |  NV            ||    |+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+|    

{        "Places":  [                  {                          "City":  "Seattle",            

       "State":  "WA"                            },                          {    

       "City":  "Las  Vegas",        "State":  "NV"    

                     }          ]    }      

Page 9: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure      

Page 10: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure      

AWS  access  key  ID  [**ABCD]:    AWS  secret  access  key  [****************EFGH]:    Default  region  name  [us-­‐west-­‐2]:    Default  output  format  [json]:      

Page 11: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  <subcommand>      

Page 12: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  <subcommand>      

list  -­‐  list  common  configuration  sources  get    -­‐  get  the  value  of  a  single  config  var  set    -­‐  set  the  value  of  a  single  config  var  

Page 13: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  get  region      

Page 14: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.region  us-­‐west-­‐2  

Page 15: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

profile  은 설정 값 들의 그룹이다  

Page 16: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  -­‐-­‐profile  prod  

Page 17: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CLI  설정 파일들  

~/.aws/credentials   ~/.aws/config  

•  모든 AWS  SDKs 가 지원함  •  인증에 대한 정보만 담고 있음  

•  오직 CLI에서만 사용됨  •  인증 정보를 담을 수도 있음  

Page 18: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

~/.aws/credentials     ~/.aws/config  

Page 19: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.aws_access_key_id  foo  

~/.aws/credentials     ~/.aws/config  

Page 20: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.aws_access_key_id  foo  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    

Page 21: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.aws_secret_access_key  bar  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    

Page 22: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.aws_secret_access_key  bar  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    aws_secret_access_key  =  bar  

Page 23: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.region  us-­‐west-­‐2  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    aws_secret_access_key  =  bar  

Page 24: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.region  us-­‐west-­‐2  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    aws_secret_access_key  =  bar  

[profile  prod]    region  =  us-­‐west-­‐2  

Page 25: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.output  text  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    aws_secret_access_key  =  bar  

[profile  prod]    region  =  us-­‐west-­‐2  

Page 26: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

aws  configure  set  profile.prod.output  text  

~/.aws/credentials     ~/.aws/config  [prod]    aws_access_key_id  =  foo    aws_secret_access_key  =  bar  

[profile  prod]    region  =  us-­‐west-­‐2    output  =  text  

Page 27: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

waiters    

Page 28: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

ec2-instance-running.sh

#!/bin/bash  instance_id=$(aws  ec2  run-­‐instances  -­‐-­‐image-­‐id  ami-­‐12345  \                  -­‐-­‐query  Instances[].InstanceId  \                  -­‐-­‐output  text)  instance_state=$(aws  ec2  describe-­‐instances  -­‐-­‐instance-­‐ids  $instance_id  \                  -­‐-­‐query  'Reservations[].Instances[].State.Name')  while  [  "$instance_state"  !=  "running"  ]  do          sleep  1          instance_state=$(aws  ec2  describe-­‐instances  -­‐-­‐instance-­‐ids  $instance_id  \                  -­‐-­‐query  'Reservations[].Instances[].State.Name')  done  

Page 29: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

ec2-instance-running.sh

#!/bin/bash  instance_id=$(aws  ec2  run-­‐instances  -­‐-­‐image-­‐id  ami-­‐12345  \                  -­‐-­‐query  Instances[].InstanceId  \                  -­‐-­‐output  text)  instance_state=$(aws  ec2  describe-­‐instances  -­‐-­‐instance-­‐ids  $instance_id  \                  -­‐-­‐query  'Reservations[].Instances[].State.Name')  while  [  "$instance_state"  !=  "running"  ]  do          sleep  1          instance_state=$(aws  ec2  describe-­‐instances  -­‐-­‐instance-­‐ids  $instance_id  \                  -­‐-­‐query  'Reservations[].Instances[].State.Name')  done  

No Timeouts

Failure States

Hand-Written Code

Page 30: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

ec2-instance-running.sh

instance_id=$(aws  ec2  run-­‐instances  -­‐-­‐image-­‐id  ami-­‐12345  \                  -­‐-­‐query  Instances[].InstanceId  \                  -­‐-­‐output  text)  aws  ec2  wait  instance-­‐running  -­‐-­‐instance-­‐ids  $instance_id    

Page 31: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

ec2-instance-running.sh

instance_id=$(aws  ec2  run-­‐instances  -­‐-­‐image-­‐id  ami-­‐12345  \                  -­‐-­‐query  Instances[].InstanceId  \                  -­‐-­‐output  text)  aws  ec2  wait  instance-­‐running  -­‐-­‐instance-­‐ids  $instance_id    

subcommand  

describe-­‐instances  op1ons  

waiter  name  

Page 32: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

$  aws  ec2  wait  help    $  aws  rds  wait  help    $  aws  dynamodb  wait  help    $  aws  redshift  wait  help    

Page 33: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  2  –  EBS  GP2  vs  PIOPS  

Page 34: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

EBS  GP2  vs  PIOPS  

GP2   PIOPS  16GB  ~  1TB  

 160  MB/s  

 1000GB 이하의 볼륨에 대해 3000  IOPS까지 버스트 가능한 3IOPS/GB  의 기준 성능.    최대 10000  IOPS  

볼륨크기  

최대처리량    

IOPS성능  

4GB  ~  16TB    

320  MB/s    

최대 20000  IOPS까지 지속적인 성능 발휘  

Page 35: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

GP2  버스팅 기능 존재 –  기준 성능과 버스팅 성능.    데이터 베이스 같은 경우 일정한 IOPS가 필요.    따라서 원하는 일정한 IOPS를 얻기 위해서는 PIOPS를 사용하시길….    

Really?  

PIOPS는 성능이 보장된다. 최대 20000  PIOPS까지, 단 더 비싸다.  

GP2  vs  PIOPS  

Page 36: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

GP2 버스트 기능의 이해 §  GP2는 기준 성능과 버스팅 성능 존재  §  볼륨이 커질 수록 기준 성능 상승  §  기준 성능은 최대 10000  IOPS  §  1000  GB이상에서는 버스트 기능 없음  §  3334  GB에서는 10000  IOPS도달.  §  단 RDS의 경우는 3000  IOPS  가 최대  

Page 37: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

QuesLon  :    EC2에서 8000  IOPS로 2T  디스크 운용을 하기 위해서는?                                                  GP2와 PIOPS 중 어떤 것을?  

Monthly  Calculator  

GP2  :  2667  GB,  8000  IOPS       $1286  /  month  

PIOPS  :    267GB,  8000  PIOPS     $1631  /  month  

PIOPS  :    2667GB,  8000  PIOPS     $2006  /  month  

도쿄 리전 기준  

Page 38: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  3  –  VPC  flowlogs  

Page 39: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudWatch  Logs  +  ElasLcsearch  +  Kibana  Dashboards  CloudWatch  Logs  SubscripLon  Consumer  

Page 40: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudWatch  Logs  +  ElasLcsearch  +  Kibana  Dashboards  CloudWatch  Logs  SubscripLon  Consumer  

Page 41: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudWatch  Logs  +  ElasLcsearch  +  Kibana  Dashboards  Kibana  3  for  VPC  Flowlogs  

Page 42: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudWatch  Logs  +  ElasLcsearch  +  Kibana  Dashboards  Kibana  3  for  VPC  Flowlogs   Kibana  3  for  Lambda  

Page 43: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudWatch  Logs  +  ElasLcsearch  +  Kibana  Dashboards  Kibana  3  for  CloudTrail  

Page 44: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  4  –  Run  command  

Page 45: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

QuesLon  :    동일 Windows/Linux  EC2 인스턴스에 대해 일괄적으로 원격 명령을 수행하려면?    

Run  Command  in  EC2  

Page 46: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Run  Commands  

•  그룹화 된 인스턴스 전체에 대해 설정 변경이 필요한 경우  

•  많은 인스턴스에 대해 안전하고 일관된 작업이 필요한 경우  

•  어떤 일이 수행되었는지와 누가 수행했는지에 대한 관리  

•  명확한 audit 관리  

•  RDP 억세스를 이용하지 않고 손쉽게 처리 (윈도우)  

Page 47: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

커맨드  

Page 48: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

커맨드 –    메인 화면  

Page 49: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

커맨드 실행 –    커맨드 문서 선택  

Page 50: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

커맨드 실행 –    대상 인스턴스의 선택  

Page 51: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

커맨드 실행 –    실행결과의 확인  

Page 52: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

커맨드 실행 –    실행결과의 확인  

Page 53: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  5  –  IAM  cross  account  access  

Page 54: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

QuesLon  :    여러개의 AWS  account 들 간에 로그인 없이 자유롭게 스위칭하면서 사용하려면?  

Cross  Account  Access  

Page 55: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

A  계정에서  B계정이 접근할 수 있는 역할 생성  

A  계정  

B  계정  

Page 56: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

역할에 정책을 할당  

정책 수정  

Page 57: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

계정 B  IAM 유저로 로그인   변경된 역할로 A계정 사용  역할 변경  

Page 58: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  6  –  Latency  Measurement                              Health  Checks  

Page 59: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

QuesLon  :    특정 리전 사이에서 서버의 latency를 주기적으로 측정하려면?  

T2.nano  인스턴스로 상호 ping  체크?  

Heath  Checker  

Page 60: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

AWS  Heath  checker  

•  모든 Region  IDC  에 Health  Check  수행 ApplicaLon  존재  

•  Route  53  health  Check  활성화하면 모니터링하려는 서버에 대한 체크  (HTTP  Request,  TCP  ConnecLon,  Ping  …)  

•  사용가능한 Health  Checker  의 18%이상이 엔드포인트가 정상이라고 하면,  Route  53  DNS에 Healthy로 등록  

Page 61: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Latency  Measurement  Health  Checks  

•  Heath  Checker가 수행하면서 받았던 결과 값들을 고객이 직접 확인할 수 있도록 제공  

•  네트워크 관점에서 Region간의 Latency에 대해 파악할 수 있는 지표 가능  

•  Cloudwatch와 연동해서 적정수준(Acceptance  Range)보다 나빠질 경우 알람 발생 가능  

•  3개의 주요 메트릭  

Page 62: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Latency  Measurement  Health  Checks  

•  TCP  connecOon  Ome  (HTTP  and  TCP  health  checks  only)    :  TCP  3  Way  핸드 쉐이크 (패킷 3개가 왔다갔다함)가 진행되고 통신할 준비가 되는데 걸리는시간  

•  Time  to  complete  SSL  handshake  (HTTPS  health  checks  only)  :  HTTPS  적용시  SSL을  통해  Secure  한  채널을 설정하는데    걸리는  시간  

•  Time  to  first  byte  (HTTP  and  HTTPS  health  checks  only)  : 유저 브라우저가 HTTP(S)  요청을 해서 받는 데 걸리는 시간  

Page 63: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

•  ap-­‐northeast-­‐1(동경)에 있는 나의 인스턴스에 대해  같은 리전(health  check  applicaLon)에서 측정  

TCP  커넥션을 맺는 시간                                                                                                              HTTP(S) 요청에 대해 응답이 오는 시간  

Page 64: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

•  ap-­‐northeast-­‐1(동경)에 있는 나의 인스턴스에  다른 리전(us-­‐east-­‐1)에서 측정  

TCP  커넥션을 맺는 시간                                                                                                              HTTP(S) 요청에 대해 응답이 오는 시간  

Page 65: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Tip  7  –  DetecOng  changes  

Page 66: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

QuesLon  :    서버 등의 변화를 빨리 감지하기 위해서는?  

AWS  API  AcLvity  Logs    

CloudTrail  

CloudTrail  ConfiguraLon    S3  +  CloudWatch  Logs  

Page 67: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  

Page 68: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  

Page 69: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  :  CloudWatch  Logs  

Page 70: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  :  API  acOvity  history  

Page 71: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  :  API  acOvity  history  -­‐  Filter  

Page 72: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  +  Alarm    

Page 73: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  +  Alarm    

Page 74: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  +  Alarm    

Page 75: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  +  Alarm    

Page 76: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

CloudTrail  ConfiguraLon  :  S3  +  CloudWatch  Logs  +  Alarm    

Page 77: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

추가 팁!    

AWS  Config  rules  

Page 78: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

§  기록된 내역이 변경되는 것을 탐지하는 rules 설정.

§  AWS가 제공하는 pre-built rules 사용.

§  AWS Lambda를 활용한 커스텀 rule 지원

§  지속적인 진단수행을 자동화

§  컴플라이언스 시각화나 위험한 변경을 식별하기 위해 대쉬보드 제공.

Config  Rules(preview)  

Page 79: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

AWS Config

APIs

Rule R1: EC2 태깅 여부

Rule R3: CloudTrail 설정 여부 Rule R2: 운영환경 볼륨 암호화 여부

Normalize 변경 내역 기록 변경된 리소스 전달 저장

스트림

스냅샷(ex. 2014-11-05)

이력

AWS  Config  &  Config  Rules  

Page 80: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

§  AWS managed rules AWS가 정의 minimal (or no) configuration 필요 AWS에 의해 관리되는 Rules

§  Customer managed rules AWS Lambda를 사용하여 정의

Rules들이 해당 account에서 실행됨 관리책임은 고객 몫

기록된 구성정보의 검증을 체크하는 한개의 rule.  

Config  Rule  

Page 81: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

§  변경작업에 의해 기동: Rules은 연관된 리소스가 변경될 때 기동. Config Rules를 기동시키는 변경 작업들:

§  Tag key/value

§  Resource types

§  Specific resource ID

e.g. ‘Production’으로 태깅된 EBS volume은 반드시 EC2 instance에 붙어 있어야 함.

§  주기적으로 기동: Rule이 지정된 빈도와 주기에 의해 실행됨.

e.g. 매 3시간 마다, 해당 Account가 3 대 이상의 “PCI v3” EC2 instance를 실행하고 있는지 확인.

Config  Rules  -­‐  Triggers  

Page 82: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

1.  모든 EC2 instance들은 반드시 한개의 VPC상에 존재하여야 한다.

2.  모든 attached EBS volume들은 KMS ID를 가지고 반드시 암호화되어야 한다.

3.  CloudTrail은 반드시 활성화되어 있어야 하고, 선택적으로 S3 bucket, SNS topic, CloudWatch Logs와 함께 구성되는 것을 권장한다.

4.  Attach 된 상태의 모든 security group은 반드시 port 22를 포함한 지정된 포트에 대한 무제한 접근을 방지해야 한다.

5.  VPC안에 사용을 위해 할당된 모든 EIP들은 반드시 인스턴스에 할당되어 있어야 한다.

6.  모든 모니터링 되는 리소스들은 적절하게 tag keys:values로 태깅되어 있어야 한다.

AWS  managed  rules  

Page 83: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

§  고객사 프랙티스를 자동화 하기 위해 코드로 구현.

§  AWS Lambda에 관련 샘플로 간단히 시작 가능.

§  보안 베스트 프랙티스와 컴플라이언스를 위한 가이드 라인 구현.

§  AWS파트너가 생성한 Rule도 활용가능.

§  단일 대쉬보드 상에 정리된 형태의 컴플라이언스 뷰를 제공.

Custom  rules  

Page 84: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Resource  Type Resource

Amazon  EC2 EC2  Instance  EC2  ElasLc  IP  (VPC  only)  EC2  Security  Group  EC2  Network  Interface

Amazon  EBS EBS  Volume

Amazon  VPC VPCs  Network  ACLs  Route  Table  Subnet  VPN  ConnecLon  Internet  Gateway  Customer  Gateway  VPN  Gateway

AWS  CloudTrail Trail

Iden&ty  and  Access  Management IAM  Users IAM  Groups IAM  Roles IAM  Customer  Managed  Policies

Amazon  EC2 Dedicated  Hosts

지원되는 리소스 타입

Page 85: 게임업계 IT 관리자를 위한 7가지 유용한 팁 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming

Thank you!

Seon Yong Park, AWS Solutions Architect

[email protected]