본문 바로가기

공개

(34)
ELB의 로그 S3 버킷에 저장 먼저 ELB의 로그가 저장될 버킷을 생성한다 바로 생성 s3 -> 권한 -> 버킷 정책 -> 정책 생성기 arn:aws:s3:::bucket/prefix/AWSLogs/aws-account-id/* 붉은색 부분에 위에서 만든 bucket 이름, 원하는 키, 계정 id 정책을 적고 add statement -> Generate Policy 받는 정책을 권한에 추가해서 저장한다 이제 생성한 elb로 간다 속성을 연다 속성 편집을 누르고 액세스 로그를 활성화 하고 S3Bucket(자신의 버킷이름!)/prefix(선택사항) 이걸 추가한다 그러면 참고로 prefix를 추가하면 root에 저장 되지 않고 본인이 저장한 파일로 간다 확인해 보면 이런 식으로 로그 파일이 생길 것이다 출처: https://lky1001..
cloudwatch event amazon cloudwatch evnet는 AWS의 주요 리소스에 대한 변경 사항에 대한 실시간 스트림을 활용하여 여러 처리 및 대응을 자동화할 수 있다. cloudwatch 이벤트에 대한 주요 기능 구분 내용 Event -AWS 내부의 리소스에 대한 상태가 변경될 경우 발생 -AWS 리소스의 상태 변경 시 이벤트를 발생시켜 원하는 다른 작업 수행 Rule Cloudwatch 로 들어오는 이벤트 중 처리가 필요한 이벤트 분류 작업 수행 Target Rule로부터 전달 받은 이벤트에 대한 처리 작업 수행 실습) SNS에 들어간다 이름을 정해주면 기본적으로 액세스 정책등등을 준다 주제를 생성하고 구독생성으로 들어간다 이런식으로 어떤 이벤트가 발생했을 때 이메일에 전송할 수 있게 자신이 받을 수 있는 이메일..
cloudwatch agent aws cloudwatch에서 custom metric 을 만들어 보자 일단 pubilc ec2를 실행 시키고 여기에 cloudwatchagentServerPolicy 라는 IAM 부착 시킨다 이 policy 안에는 이러한 권한들이 있다 이제 ec2에 들어가서 amazon-cloudwatch-agent 를 설치를 해보자 이제 cloudwatch-agent 가 어떠한 config를 가지고 구동이 되는지 알아야한다 먼저 sudo ls /opt/aws/amazon-cloudwatch-agent/bin/ 아래로 가보면 이 몇가지 커맨드들 중에 amazon-cloudwatch-agent-config-wizard 이 과정을 마친다면 /opt/aws/amazon-cloudwatch-agent/bin/config.js..
route 53 실습(ALB연결과 장애 조치 라우팅) 일단 route53에 대한 기본 지식은 생략하고 실습을 하겠다!~ 실습 조건) 1.퍼블릭에 2개의 웹 서버를 alb에 연결 시켜놔서 부하분산을 위한 아키텍처를 만든다 2.퍼블릭 도메인을 route53에 연결해서 그 도메인이 ping 을 받는 상태 예) 실습 준비가 되었다면 route53을 ALB 의 연결하는 실습을 진행하겠다 실습1) 자신의 호스팅 영역에 들어가서 레코드 생성 후 > 단순 라우팅 선택 > 단순 레코드 정의 그후 이런식으로 자신의 원하는 ALB 를 선택하고 ALB의 DNS에 A 레코드로 연결을 선택한다(물론 그림에서는 ALB를 선택하기만 하면된다) 실습2) Route53에서 2대의 EC2 인스턴스를 연결하여 주 대상/ 보조 대상 형태의 장애 조치 라우팅을 구성합니다 일단 장애 조치 라우팅을..
python 에서 raise 사용 raise 예외("에러 메세지") 예) raise Exception //exception 에러를 만들어주는 코드다 raise Exception("에러 메세지") 예외 계층 구조 이런식으로 예외가 있다 만약 exception 에러를 받으면 거의 모든 errror를 받을 수 있다는 것을 알 수 있다 그럼 raise 를 통해 일부러 error 을 만들어 보겠다 먼저 간단한 print 문을 통한 에러 메시지 출력이다 num = int(input("0보다 작은 수를 입력해 주세요>>>")) if num >= 0: print("error") 입력을 1로 한다고 가정했을 때 error 라는 문자가 나온다 하지만 에러를 주고 싶다면? num = int(input("0보다 작은 수를 입력해 주세요>>>")) if num..
chrome 에서 개발자 도구 살펴보기 Elemets: 웹에 접속하면 우리가 보고 있는 페이지의 코드를 보여준다, 즉 HTML의 구조를 알 수 있다 구조를 빠르게 파악할 수 있다 그리고 화면에서 지정을 해서 그 코드를 확인하고 싶다면 이런식으로 자신이 원하는 코드를 알 수 있다 이번에는 console:동작을 담당하는 javascript 를 실행하는 부분이라고 생각해주면 된다(test를 해주는데 좋다) 예) alert("Hello naver") 이런식으로 치면 화면에 뜨게 될 것이다 Sources 화면에 띄어져 있는 이미지를 가지고 있는 창이라고 생각해 주면 된다 Network 웹에서 주고 받는 모든 통신을 볼 수 있는 곳이다 Performance 웹 사이트가 로딩이 되는데 얼마나 걸리는지 알 수 있는 곳이다(로딩 성능을 알 수 있다) Appl..
HTTP request 구조 HTTP의 구성 Request Line request-Line = Method SP Request-URI SP HTTP-Version CRLF Method: get,post Request-URI: 어떤 경로로 열어줄 것인지 Version: HTTP 의 버전을 뜻함 SF:공백 CRLF: enter기능 0개 이상의 헤더 헤더란: 이걸로 구분한 키와 value 라고 생각하면 된다. 빈 공백이 있기 전까지를 0개 이상의 헤더라인이다 accept: 클라이언트가 허용할 수 있는 파일 형식을 말한다 user-agent: 요청을 보내는 클라이언트의 대한 정보 accept-Language:클라이언트가 지원가능한 언어 나열 accept-Encoding:클라이언트가 해석가능한 압축 방식 지정 connection: 현재 트랜..
buildspec report version: 0.2 phases: build: commands: - echo Build Starting on `date` - chmod +x ./gradlew - ./gradlew build post_build: commands: - echo $(basename ./build/libs/*.jar) - pwd reports: (자신이 만든 보고서 그룹의 arn): files: - '**/*' base-directory: 'build/test-results/test' artifacts: files: - build/libs/*.jar - appspec.yml - scripts/** discard-paths: yes 내가 작성한 build 파일이다 물론 reports 부분만 보면 된다 reports: (자신..