ALB에서 EC2로 요청 라우팅 구성

Classic Load Balancer(이하 CLB)에서 Application Load Balancer(이하 ALB)로 마이그레이션하려고 했는데, EC2로의 요청 라우팅 설정으로 조금 막혔으므로 게시합니다.

설정하고 싶은 것은 아래의 2점이었습니다.
  • HTTP(80번) 접속되면, EC2에도 80번으로 접속한다.
  • HTTPS(443번) 접속되면, EC2에는 8080번으로 접속한다.

  • EC2 내의 Apache 설정에서 HTTP (80 번) 연결되면 HTTPS로 리디렉션,
    HTTPS(8080번) 접속되면 사이트를 표시, 라고 하도록 설정하고 있습니다.

    막힌 곳



    막힌 점은 ALB에서 EC2로 요청할 때 리스너를 어디에서 설정할지 몰랐습니다.

    CLB로 설정했을 때는 이런 상태였습니다.


    CLB에서는 로드 밸런서와 EC2에 대한 요청의 프로토콜과 포트 번호를 동일한 화면에서 설정할 수 있습니다.

    하지만 ALB에서는 로드 밸런서에 대한 요청 시 프로토콜 포트 번호에 대해 대상 그룹을 설정하게 되었기 때문에 다른 화면에서 설정하는 정보가 되었습니다.


    다른 화면이었기 ​​때문에, 어디에서 EC2에의 라우팅을 설정하는지 곧 모르게 막혀 버렸습니다.

    다시 생각하면, ALB → ターゲットグループ → EC2 라는 흐름으로 요구되어 가므로, 타겟 그룹상에서 설정하지 않으면 안 된다고 깨달았습니다.

    (타겟 그룹 작성시에 리퀘스트 라우팅의 설정이 나오고 있었습니다만, 드디어 ALB측과 같이 HTTP・80番 , HTTPS・443番 를 설정해 버렸습니다.)

    했던 일



    ALB에서 EC2로 요청할 때 리스너 설정에서 한 것은 다음 두 가지입니다.
  • 대상 그룹을 HTTP · HTTPS 용으로 각각 만든다
  • 대상 그룹의 EC2에 연결할 포트를 설정합니다.



    CLB로 설정한 리스너 1행마다 타겟 그룹이 필요하게 되는 이미지군요.
    이 설정 후 대상 그룹의 상태 확인이 안전하게 통과되었습니다.

    기타



    ALB 및 Auto Scaling Group



    이번에 막힌 건과는 직결하지 않지만, 지금까지 CLB와 Auto Scaling Group(이하 ASG)을 연결하고 있었으므로, 똑같이 ALB에서도 ASG를 연결하려고 생각해 매니지먼트 콘솔을 본 것 하지만 특별히 설정할 수 있는 부분이 없었습니다. (2016/10/31 현재)

    따라서 ALB는 대상 그룹(=EC2 인스턴스 단위)과만 연결할 수 있을 것이라고 생각했습니다.

    하지만, 아래의 기사와 같이 CLI로 등록할 수 있었으므로, 추후 매니지먼트 콘솔상에서도 취급할 수 있게 될까요.
    매니지먼트 콘솔에서도 확인이나 조작을 할 수 있게 되면 더욱 편리하네요.
  • Application Load Balancer(ALB)에서 Auto Scaling Group 등록(CLI만 해당)
    htp : //에서 v.ぁsss d. jp / c ぉ d / 아 ws / 레기 s r 어우트 s ぃ ン g g 로우 p와 lb /

  • (2016/10/31 추가)
    죄송합니다. ASG 측 화면에서 연결할 대상 그룹을 설정하는 부분이 있었습니다.
    대상 그룹 측이 아니라 ASG 측에서라면 관리 콘솔을 사용하여 연결할 수 있습니다.

    마이그레이션 도구


  • elastic-load-balancing-tools를 사용하여 ELB를 ALB로 마이그레이션하려고했습니다.
    htp : //에서 v.ぁsss d. jp / c ぉ d / 아 ws / 미g 라치 온 - f 로-m-lb--a lb /

  • 위의 기사대로 해 보았습니다.

    ELB명·VPC·Subnet·Security Group을 계승한 ALB가 1명령으로 완성됩니다.
    기존 CLB에서 ALB로 이행할 때 정말 편리하네요.

    좋은 웹페이지 즐겨찾기