inflearn logo
강의

Khóa học

Chia sẻ kiến thức

EKS trên CI/CD viết ngay

[Trình diễn] Cung cấp EKS

S3버킷

Đã giải quyết

153

kyun9151

1 câu hỏi đã được viết

0

궁금한게 S3버킷 이름도 변경해야하나요..? 테라폼적용하는 과정에서 버킷 이름 충돌난다는 에러가 발생해서요

aws docker jenkins kubernetes

Câu trả lời 3

0

Dewey Hong

좋은 질문 감사합니다! 🙌
제 강의에서 제공드린 모든 자원은 클러스터 이름을 기반으로 자동 생성되도록 되어 있습니다.

  • 같은 이름의 클러스터를 여러 분이 만들어도 대부분 문제는 없지만, AWS S3 버킷 이름은 전 세계적으로 고유해야 하기 때문에 그대로 사용하실 수 없습니다.

  • 해결 방법은 두 가지가 있습니다:

    1. project 기본값 변경

      project=topzone-eks
      =>
      project=doohee-eks
      
    2. S3 버킷 이름 직접 변경

      resource "aws_s3_bucket" "tfstate" {
        bucket = "terraform-state-${local.cluster_name}-001"
      }
      =>
      resource "aws_s3_bucket" "tfstate" {
        bucket = "terraform-state-${local.cluster_name}-999"
      }
      

추가로, 강의에서 설명드렸듯이 이미 생성된 자원은 삭제 후 다시 생성해야 합니다.
가능하다면 eks_remove_all.sh 스크립트를 활용해 전체 자원을 먼저 정리하시는 것을 권장드립니다.

감사합니다.

0

kyun9151

전체적으로 안되는 거 같은데 문제가 다음과 같은거 같아요 .... AI가 분석한 것 남깁니다....

Terraform 바이너리 버전 불일치

  • 코드에는 terraform { required_version = ">= 1.0" }라고 되어 있는데, 별도 스크립트/환경에서 Terraform 0.13.x를 설치·사용하고 있습니다. 0.13은 모듈/의존성 해석이 달라 최신 모듈/프로바이더와 충돌합니다.

  • 모듈 메이저 변경점 충돌

    • terraform-aws-modules/iam v6 계열에서 예전 서브모듈 경로(iam-assumable-role-with-oidc)가 사라졌습니다. 그런데 코드/참조는 그 경로를 여전히 가리켜 “Unreadable module subdirectory”가 발생합니다.

  • AWS Provider/모듈 조합

    • aws provider >=4.0와 최신 EKS/IAM 모듈은 Terraform >=1.x를 기대합니다. 0.13과는 호환이 거의 안 맞습니다.

  • Docker/플랫폼 이슈

    • Mac(ARM64)에서 amd64 이미지를 돌려 생기는 문제는 플랫폼 지정으로 이미 해결 방향을 잡으셨습니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. kyun9151님.

Terraform을 사용할 때 S3 버킷 이름에서 충돌이 발생하는 경우, 버킷 이름을 변경해야 할 수 있습니다. AWS S3 버킷 이름은 전 세계적으로 고유해야 하기 때문에, 이미 존재하는 이름을 사용할 수 없습니다. 충돌 문제를 해결하려면 고유한 식별자를 추가하여 이름을 변경하거나, 버킷 이름을 생성하는 부분에 변수를 추가하여 유니크한 이름이 될 수 있도록 설정하는 것이 좋습니다.

예를 들어, 버킷 이름에 사용자 고유의 식별자를 추가하거나, 타임스탬프를 이용하여 유니크한 이름을 생성할 수 있습니다. Terraform을 통해 S3 버킷을 생성할 때, 다음과 같이 설정할 수 있습니다:

resource "aws_s3_bucket" "example" {
  bucket = "unique-bucket-name-${var.user_id}-${var.timestamp}"
  ...
}

위 설정처럼 변수 user_id나 타임스탬프 timestamp를 활용하면 충돌을 피할 수 있습니다.

관련된 정보와 유사한 문제 해결에 대한 자세한 답변은 다음의 링크를 참고하시면 도움이 될 것입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

계좌잔고 조회하기

0

8

0

제미나이 대신 클로드

0

20

1

ubuntu 18.04 다운로드 링크 삭제

0

18

2

강의자료가 없나요?

0

16

1

intellij나 파이참 기준 어떻게 하는지 궁금합니다

0

22

2

Jib 빌드가 83%에서 멈추는 문제 해결(windows 사용자)

1

22

1

운영환경에서의 secret 관리

0

22

2

7강 설치 질문

0

21

2

jenkins 노드 구성 실습 오류 수정

1

33

1

상세 설정까지 이해하시는 비결이 궁금합니다

1

46

2

Jenkins 설치 오류 내용 공유 드립니다.

1

18

1

기존 미국주식 자동매매 프로그램과 같은 AWS 서버에서 돌리려고 할때

1

38

1

ClusterIP 실습 시 Connection refused

0

37

2

Apple Silicon에서 CI 빌드 이미지가 재시작을 반복할 때 (jib platforms 수정)

1

47

1

제공된 스크립트를 어디서 받을 수 있나요?

0

35

1

미션 제출 방식 건의

0

36

0

트랜잭션 내 Redis I/O 에 대한 궁금한점

1

34

1

Deployment 업데이트-2 해결 방식 문의

1

40

1

미션 진행 방식에 대한 질문입니다.

0

52

1

수강기간 연장부탁드립니다

0

47

2

Alpha vantage 유료화?

0

75

2

실습진행

0

92

1

초기 one click 설치 자체가 실패하는데 확인부탁드립니다.

0

224

3

windows 환경에서 초기 설정 sh 실행

0

1834

2