본문 바로가기

퍼블릭 클라우드

AWS CloudFront에서 캐시된 파일을 무효화(Invalidation)하는 방법

728x90

AWS CloudFront에서 캐시된 파일을 무효화(Invalidation)하는 방법

AWS CloudFront에서 캐시된 파일을 무효화(Invalidation)하는 과정은 원격 클라이언트의 요청이 캐시에서 아닌 원본 서버에서 데이터를 가져오게 만드는 작업입니다. 이것은 웹사이트 업데이트, 새로운 콘텐츠 게시, 또는 중요한 변경사항을 반영하기 위해 필요한 작업입니다.

1. 원격 무효화 요청 생성

  • create-invalidation : 무효화 만들기
aws cloudfront create-invalidation --distribution-id EDFDVBD6EXAMPLE --paths "/example-path/example-file2.png"
  • --distribution-id EDFDVBD6EXAMPLE: 무효화 요청을 생성할 CloudFront 배포의 ID입니다. 실제 배포 ID로 교체해야 합니다.
  • --paths "/example-path/example-file2.png": 무효화할 파일 또는 디렉토리의 경로를 지정합니다. 이 경로에는 와일드카드(*)를 사용하여 여러 파일을 무효화할 수 있습니다.

예를 들어, /example-path/*는 "example-path" 디렉토리의 모든 파일을 무효화합니다.

$ aws cloudfront create-invalidation --distribution-id EDFDVBD6EXAMPLE --paths "/asiaartistawards/css/aaa_style.css"
{
    "Invalidation": {
        "Status": "InProgress", 
        "InvalidationBatch": {
            "Paths": {
                "Items": [
                    "/example-path/example-file2.png"
                ], 
                "Quantity": 1
            }, 
            "CallerReference": "cli-1670293604-332057"
        }, 
        "Id": "IGWWPL25D6W1D", 
        "CreateTime": "2022-12-06T02:26:45.074Z"
    }, 
    "Location": "https://cloudfront.amazonaws.com/2020-05-31/distribution/EDFDVBD6EXAMPLE/invalidation/IGWWPL25D6W1D"
}

2. 원격 무효화 요청의 상태 및 세부 정보를 검색

  • get-invalidation : 무효화에 대한 정보를 가져오기
aws cloudfront get-invalidation --id IGWWPL25D6W1D --distribution-id EDFDVBD6EXAMPLE
  • --id IGWWPL25D6W1D: 무효화 요청 ID. 이 ID는 무효화 요청을 식별하는 데 사용됩니다.
  • --distribution-id EDFDVBD6EXAMPLE: CloudFront 배포 ID. 이 ID는 해당 CloudFront 배포를 식별하는 데 사용됩니다.
$ aws cloudfront get-invalidation --id IGWWPL25D6W1D --distribution-id EDFDVBD6EXAMPLE
{
    "Invalidation": {
        "Status": "Completed", 
        "InvalidationBatch": {
            "Paths": {
                "Items": [
                    "/example-path/example-file2.png"
                ], 
                "Quantity": 1
            }, 
            "CallerReference": "cli-1670293604-332057"
        }, 
        "Id": "IGWWPL25D6W1D", 
        "CreateTime": "2022-12-06T02:26:45.074Z"
    }
}
728x90

AWS Management Console을 통해 CloudFront 무효화(Invalidation)의 상태를 확인

1. AWS Management Console에서 CloudFront 서비스에 로그인합니다.

2. 무효화 진행 상황 모니터링

  • CloudFront 대시보드에서 원하는 배포(분산)를 선택합니다.
  • "Invalidations" 탭을 선택합니다.

무효화 요청이 처리되는 동안 대시보드에서 진행 상황을 모니터링할 수 있습니다.

무효화가 완료되면 해당 파일은 캐시에서 무효화되며, 새로운 요청이 올바른 데이터를 가져올 것입니다.

f1

 

CloudFront API 권한: 작업, 리소스 및 조건 참조

https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/cf-api-permissions-ref.html

f2

 

파일 무효화

https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html

f3

 

CloudFront에서 캐시된 파일을 제거하려면 어떻게 해야 하나요?

https://aws.amazon.com/ko/premiumsupport/knowledge-center/cloudfront-clear-cache/

f4

CloudFront API 참조(aws cloudfront)

https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudfront/index.html

f5

 

참고URL

- Amazon CloudFront 파일 무효화 : https://scbyun.com/1057

- create-invalidation : https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudfront/create-invalidation.html

- get-invalidation : https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudfront/get-invalidation.html

 

728x90