묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[2024] [DevOps] 빠르고 안전한 어플리케이션 배포 파이프라인(CI/CD) 만들기
artifacts 에 대한 질문이 있습니다!
안녕하세요 지식공유자님 수준 높은 강의를 제공해주셔서 감사합니다! gitlab-sast 같은 내용을 artifacts 로 업로드에서 사용하시던데,artifacts 에 업로드 되는 내용으로 라이브러리 같은 것도 괜찮은가요? artifacts 를 cache 처럼 사용해도 되는건가요? 예를들어 python3.8 를 CI/CD 가 실행될 때마다 직접 빌드를 하게되는데, 10분 정도가 소요된다고 했을때,오래 걸리니, 한번 빌드 후 artifacts 에 업로드한 것을 다운 받아 사용하는 겁니다. (라이브러리 캐싱 처럼)
-
해결됨[2024] 실무에서 사용중인 AWS 클라우드 IAM 이해와 보안
IAM 사용자별 EKS 접근 권한 추가 방법
안녕하세요. 강의를 듣다보니 궁금하여 문의드립니다.현업에서 IAM role에 따라서 EKS 접근 권한을 제한하여 동작을 시키고 싶을때 어떻게 하면 될까요? PL 에게는 EKS 모든 권리를 주고developer에게는 EKS 특정 pod 만 생성할수 있고 수정할수 있는 권한을 주고operator에게는 pod를 읽을수 있는 권한만 주려고할때 어떻게해야할지 모르겠네요. 찾아본 바로는 IRSA와 RBAC을 절적히 사용하면 된다고하는데 잘모르겠네요. 만약에 권한을 주는 것도 level 0, level 1, level 2 같이 권한으로 디자인하고 PL은 level 2 권한을 주고sub PL, develope는 level 1 권한을 주고 operator와 tester는 level 0를 주어 권한을 제한할수도 있을까요? IAM role을 가져올때 이 사람이 PL인지 아니면 sub PL인지 developer인지 구분할수 있는 방법이 있을까요? 강의 들어도 잘 모르겠네요. ㅜㅜ
-
미해결실리콘밸리 엔지니어와 함께하는 테라폼(Terraform)
tfstate 관리 시 dynamodb 사용 관련 질문
tfstate 관리 시 S3 버저닝을 했을 때, dynamo db를 사용하지 않아도 버지닝이 되니 굳이 사용하지 않아도 되지 않을까요 ?
-
미해결실리콘밸리 엔지니어와 함께하는 테라폼(Terraform)
subnet 생성을 terraform으로 하는게 괜찮을지 고민입니다.
resource "aws_instance" "web" { ami = data.aws_ami.ubuntu.id instance_type = "t2.micro" tags = { name = "MyEc2" } depends_on = [aws_default_subnet.default_az1] } resource "aws_default_subnet" "default_az1" { availability_zone = "us-west-2a" tags = { Name = "Default subnet for us-west-2a" } }aws default subnet을 지정해주는 terraform resource가 있는 것 같은데 정상동작했어요 ! 이런 방법은 어떤가요 ? aws cli를 따로 사용해야하니 왠지 terraform에 종속성이 생긴 느낌이들어서요
-
미해결실리콘밸리 엔지니어와 함께하는 테라폼(Terraform)
terraform_user IAM 권한 설정 질문
Plan: 1 to add, 0 to change, 0 to destroy. ╷ │ Error: reading IAM Group (developer): AccessDenied: User: arn:aws:iam::216917526503:user/terraform_user is not authorized to perform: iam:GetGroup on resource: group developer with an explicit deny in an identity-based policy │ status code: 403, request id: 5ebfada0-00cc-4b7b-b068-fa8904a32f99 │ │ with aws_iam_group.devloper_group, │ on main.tf line 10, in resource "aws_iam_group" "devloper_group": │ 10: resource "aws_iam_group" "devloper_group" { │ ╵ ╷ │ Error: reading IAM Policy (arn:aws:iam::216917526503:policy/system/developer_policy): AccessDenied: User: arn:aws:iam::216917526503:user/terraform_user is not authorized to perform: iam:GetPolicy on resource: policy arn:aws:iam::216917526503:policy/system/developer_policy with an explicit deny in an identity-based policy │ status code: 403, request id: 676eb160-1f6c-4167-9396-bfa54b9ef85b │ │ with aws_iam_policy.developer_policy, │ on main.tf line 22, in resource "aws_iam_policy" "developer_policy": │ 22: resource "aws_iam_policy" "developer_policy" { │ ╵terraform user를 만들고 진행중인데, aws configure 이후 terraform apply 하면서 권한을 에러가 발생해서 해당 유저에게 어떤 권한을 줘야할지 모르겠습니다 ㅎㅎ 우선, FullAccess를 부여해서 성공했습니다
-
미해결지금 당장 데브옵스 - 테라폼 X AWS
6. S3 생성 오류 문의 드립니다.
apply 할 경우 아래와 같이 오류가 발생 합니다. module.s3.aws_s3_bucket.s3: Creating... ╷ │ Error: Error creating S3 bucket: InvalidBucketAclWithObjectOwnership: Bucket cannot have ACLs set with ObjectOwnership's BucketOwnerEnforced setting │ status code: 400, request id: 9BRVTAFZ6KWFHVNM, host id: MtmJm+UIrukzqlhMCfVf0dihe40YgVbEg9w6WE2HAkpXbLI5+hWtTaNr/l4d4KaeuGRiUnqCkAw= │ │ with module.s3.aws_s3_bucket.s3, │ on s3/main.tf line 8, in resource "aws_s3_bucket" "s3": │ 8: resource "aws_s3_bucket" "s3" {
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
boto3 사용자 생성 질문입니다.
AWS에서 계정을 생성하려고 하면 아래와 같은 오류가 발생하는데 어떤 문제일까요? 액세스키와 비밀키까지 모두 적용 되어 있는 상태인데... 강의 안에는 내용이 없는거 같아 문의드립니다. 4. 작성한 코드를 공유해주세요.
-
해결됨[2024] [DevOps] 빠르고 안전한 어플리케이션 배포 파이프라인(CI/CD) 만들기
App Runner 서비스 생성 시 실패
1. 무엇을 하고 싶으신가요? App Runner 서비스 생성2. 언제, 어떤 오류가 발생하시나요? 생성 중 애플리케이션 배포 실패3. 어떤 시도를 해보셨나요? 도커 이미지 재생성 및 App Runner 서비스 재생성, App Runner 스펙업(cpu,mem), iam, root 계정에서 생성 시도(권한 문제는 아닌듯)4. 작성한 코드를 공유해주세요.이슈:hands-on-fast-and-secure-cicd-pipeline 깃헙 클론 - 도커파일 경로에서 도커 이미지 생성 - ecr에 푸시 - ecr 이미지 url 이용하여 App Runner 서비스 생성 시 생성 실패하는 상황입니다.의심 되었던 부분:1. 컨테이너 이미지나 포트 설정에 문제가 있었다면 localhost:8080으로 접속해도 문제가 생겼을텐데 문제 없이 접속 가능하고요.2. App Runner의 리소스 제한이 있었을까봐 cpu, mem을 스펙업하고 재생성 했는데도 상황은 동일합니다.3. 계정 간 권한의 문제일까봐 iam, root 계정에서 생성해보았습니다. 상황은 동일합니다. 스샷:에러 로그:02-16-2024 06:37:27 PM [AppRunner] Deployment with ID : 7b4ba5a1c8f0433187d873df5bd1aa8c started. Triggering event : SERVICE_CREATE02-16-2024 06:37:27 PM [AppRunner] Deployment Artifact: [Repo Type: ECR], [Image URL: 938923105461.dkr.ecr.us-east-1.amazonaws.com/chadtest], [Image Tag: latest]02-16-2024 06:37:51 PM [AppRunner] Pulling image 938923105461.dkr.ecr.us-east-1.amazonaws.com/chadtest from ECR repository.02-16-2024 06:37:54 PM [AppRunner] Successfully pulled your application image from ECR.02-16-2024 06:38:05 PM [AppRunner] Provisioning instances and deploying image for publicly accessible service.02-16-2024 06:38:15 PM [AppRunner] Performing health check on protocol TCP [Port: '8080'].02-16-2024 06:39:06 PM [AppRunner] Your application stopped or failed to start. See logs for more information. Container exit code: 102-16-2024 06:39:28 PM [AppRunner] Deployment with ID : 7b4ba5a1c8f0433187d873df5bd1aa8c failed.제가 겪은 이슈와 같은 상황을 겪고 있는 유저:https://repost.aws/ko/questions/QU0lse8IEMSi-H4mlp5AAFWw/apprunner-failed-to-deployhttps://komodor.com/learn/exit-codes-in-containers-and-kubernetes-the-complete-guide/이게 유력한 원인으로 보이는데요...이게 아니라면 App Runner가 업데이트 되어 강의의 생성 내용과 달라져서 그런 것 인지...흠...혹시 App Runner 부분이 정상적으로 진행되지 않는다면 이후 강의에 차질이 생길까요??
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
pip로 패키지를 설치했음에도 import 오류가 납니다. 어떻게 해야 할까요?
기존 질문이 삭제되어 헷갈리실 다른 분들을 위해 자문자답 형태로 남겨둡니다.Python의 경우 어느 곳에서 다운로드 받느냐에 따라 다양한 경로에 다양한 버전이 생길 수 있습니다. 첨부해주신 사진을 봤을 때,/usr/bin/python3를 통해 boto3를 import 하시려면, /usr/bin/pip3를 통해 boto3를 다운로드 해주셔야 될 것 같습니다.( /usr/bin/python3 를 입력해서 실행했을 때와 python3를 입력했을 때 버전을 비교해보시면 좋습니다.)간단한 해결 방법으로는 /usr/bin/python3가 아닌 그냥 python3로 실행해주시면 될 것 같습니다. 만약 해결되지 않는다면, 현재 boto3가 설치된 경로에 있는 Python 실행 파일을 통해 파일을 실행해주시면 됩니다. 이런 번거로운 절차가 귀찮으시면, 1.3. Python 실행 단축키 설정을 참고하셔서 실행 설정을 해주시고,vscode에서 cmd + shift + p 입력 후, Python: Select Interpreter를 입력해주신 후에실행하고 싶은 Python3 경로를 선택해주시면 됩니다.또는, 우측 하단에 아래 그림과 같이 나오는 부분에서 버전을 클릭하시면 위 그림이 나오게 됩니다. 이후에는 cmd + enter를 통해 쉽게 실행 가능합니다!해보시고 안되시면 다시 말씀 부탁드리겠습니다.
-
해결됨[2024] 실무에서 사용중인 AWS 클라우드 IAM 이해와 보안
강의 자료 문의
'실무에서 사용중인 AWS 클라우드 IAM 이해와 보안' 강의 자료를 다운로드하였는데 압축폴더에 아무 내용이 없습니다 확인해주시면 감사합니다
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
3.2. 왜 리소스 기반 정책은 Deny로 해야되나요? 부분이 잘 이해되지 않습니다.
3.2. 왜 리소스 기반 정책은 Deny로 해야되나요?에서 동일계정에서 권한을 부여한다는 말씀이 정확히 어떤 말씀이신건가요? 계정이 다른 경우에는 b라는 리소스를 사용하기 위해서는 사용자 a와 b리소스 모두 서로 권한을 allow해야 한다는 것까지는 이해했습니다.(c계정은 b리소스를 사용할 수 없음, 그림은 다 a계정으로 되어있어서 이 부분도 약간 혼란스러웠네요. 제가 이해한게 맞을까요?) 그런데 동일 계정'에서' 권한을 부여하는 경우 문제가 생긴다는 게 정확하게 어떤 뜻인지 이해가 가지 않습니다.예를 들어 a 계정이 b 리소스에 s3:GetObject라는 권한을 허용하면 a가 b에게 권한 설정을 했으므로, a 자체가 해당 리소스에 대한 권한이 없더라도 b리소스에 대한 접근이 가능하다는 건가요? (만일 b계정이 권한을 부여한다면 a는 접근이 불가능한거구요) '여기에 밑에 설명에 a라는 사용자에게 권한이 있으면 무용지물이 됨'이라고 되어있어서 어떤 말씀을 하시는지 잘 이해가 되지 않습니다! 초보자인 저에게 좀 더 친절한 설명을 주시면 감사하겠습니다! (혼자서 이해해보고자 chatGPT에게도 문의해보았습니다 ㅎㅎ)
-
미해결지금 당장 데브옵스 - 테라폼 X AWS
mysql 연결 에러 관련 문의
안녕하세요 문의드립니다 bastion host를 통해 내부 api 인스턴스에 진입하여 saju-backend-nodejs 폴더에서 .env 파일 내에 아래와 같이 작성해주었습니다이후 pm2 start 해주고 sudo pm2 logs 해보면 아래와 같은 에러가 발생합니다mysql 연결 에러를 어떻게 잡아주어야할지 모르겠습니다. 위 .env 파일 어디가 잘못된건지... (위 PROD_DB 정보는 제가 테라폼을 통해 생성한 RDS 정보입니다) 그럼 답변 부탁드리겠습니다
-
미해결처음 시작하는 Infrastructure as Code: AWS & 테라폼
VPC 마법사가 사라졌는데 어떻게 설정해야할까요?
안녕하세요 강사님 좋은 강의 잘 듣고 있습니다.현재 7강 VPC 소개를 듣는 중인데 화면이 바뀌어서 VPC 대시보드에 VPC 마법사가 없습니다.그리고 VPC 생성에 들어가면 Public subnet 과 Private subnet의 AZ를 나누어서 설정하지 못하는데 상관 없을 까요? 또 Elastic IP Allocation ID를 설정하는 것도 없습니다.검색해봐도 VPC 마법사는 안나오는데, 제가 못찾는건지 다른 방법이 있는건지 처음써봐서 어렵네요.답변 부탁드리겠습니다. 감사합니다.
-
미해결지금 당장 데브옵스 - 테라폼 X AWS
git 테라폼 업로드 관련
업로드해주신 내용 잘 보고 있습니다.8개월전 내용이라서 테라폼이 업데이트 되서 변경된 부분이 없지 않아 있었지만 공식문서를 봐가면서 문제를 해결했습니다.다름이 아니라 제가 공부한 내용들을 git에 업로드해보고 싶은데 예를들어 remote: error: File .terraform/providers/registry.terraform.io/hashicorp/aws/3.71.0/darwin_arm64/terraform-provider-aws_v3.71.0_x5 is 275.08 MB 용량 오류가 발생하면서 업로드가 잘되지 않았습니다. 이에대한 문제 해결책으로git ignore의 방법과 git filter-branch를 사용했음에도 불구하고 용량초과문제가 발생했습니다. 혹시 교육자료로 사용하신 테라폼 파일을 어떻게 업로드 하셨는지 궁금합니다
-
미해결처음 시작하는 Infrastructure as Code: AWS & 테라폼
repository 는 어떤 기준으로 나누는지 궁금합니다.
회사 전체의 인프라코드가 단 하나의 repository 로 관리될리는 없을 것 같은데현업에서는 어떤 기준으로 repository 를 나누어서 terraform 소스를 관리하는지가 궁금합니다.그리고 실제로 현업에서 terraform destroy 를 사용하게 되는 경우가 있나요..?
-
해결됨처음 시작하는 Infrastructure as Code: AWS & 테라폼
aws 계정을 처음 생성했을때 세팅되어서 제공되는 default 리소스들은 어떻게 하나요?
aws 계정을 처음생성했을때 빈 깡통으로 제공되는게 아니라vpc, subnet, route table, igw, DHCP, sg, network acl 등등 기본적으로 세팅이 되어 있는 리소스들이 많이 있는데요이것들 다 삭제하고 terraform 으로 다시 생성하나요?아니면 기존에 생성되어 있는것들을 일일이 하나씩 import 해줘야하나요?다 삭제하고 terraform 으로 생성하건, 기존에 생성되어 있는것들을 모두 import 해줘야한다면 어떤 리소스들이 기본적으로 생성되어 있는지는 어떻게 알 수 있나요?import 할때 전체 인프라를 한번에 import 할 수 없고 필요한 리소스들별로 하나씩 import 해줘야하는 것으로 알고 있습니다.그렇다면 디폴트로 세팅되어있는 리소스들이 어떤것들이 있는지 알아야 하나씩 import 를 해줄 수 있을텐데 어떤게 기본적으로 세팅되어 제공되는 리소스들인지 잘 모르겠어서 드리는 질문입니다.디폴트로 세팅되어 있는 환경 위에서 작업을 해도 문제가 없는 상황이라면 굳이 import 하지 않고 새롭게 생성하는 리소스들만 terraform 으로 관리해도 되나요?
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
제상황을 좀 더 자세히 적겠습니다.
윈도우 환경입니다. C:\terraform\terraform.exe테라폼 파일은 위 폴더에있습니다. 위 사진처럼 해당 폴더에 Terraform 폴더를 만들고해당 폴더에 main.tf 파일을 생성했습니다. main.tf파일내용은provider "aws" { region = "ap-northeast-2"} 입니다. terraform init 명령어를 치면 아래와같은메시지가 나옵니다. C:\terraform>terraform initTerraform initialized in an empty directory!The directory has no Terraform configuration files. You may begin workingwith Terraform immediately by creating Terraform configuration files. 위 내용을 구글링해보면테라폼 프로젝트가 아닌곳에서 커멘드를 치면 위와같은에러가난다고 하는데 테라폼 프로젝트가 해당 디렉토리가 맞습니다..(스크린샷 참조) 어디가 잘못된것일까요편집기에도 인식을 못했는지 색상이 변화가 없습니다(글씨)
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
영상을 아무리 찾아봐도
테라폼 폴더 구성하는것은 보이지가않네요강사님의 VS내에 보이는 Terraform 폴더는 어디서 나타난걸까요..
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
질문입니다
1. 무엇을 하고 싶으신가요? 영상 01:57분에 나오는 Terraform 디렉토리는직접 만드신건가요?제가 직접 만드니 아이콘이 생기지 않습니다. 영상을 계속 하나씩 따라하다가 01:57분에 모르는폴더가 갑자기 생기고 main.tf에 코드를 넣으니 영상처럼 나오지않네요 2. 언제, 어떤 오류가 발생하시나요? 저는 윈도우 환경에서 하고있습니다.terraform.rc 파일내에 plugin_cache_dir = "/Users/incle/AppData/Roaming/terraform.d/plugin_cache"를 셋팅하였습니다. 이후 terraform init 을 명령어에 치면셋팅은 완료되었으나 영상에서럼 폴더가 생성되지 않습니다. 답답하네요 3. 어떤 시도를 해보셨나요? 4. 작성한 코드를 공유해주세요.
-
해결됨[2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
질문입니다
1. 무엇을 하고 싶으신가요? 디렉토리가 없다고 나옵니다 2. 언제, 어떤 오류가 발생하시나요? incle@incleuicBookPro ~ % mkdir -p /Users/incle/.terraform.d/plugin-cache위명령어를 통해 디렉토리를 생성했습니다. incle@incleuicBookPro terra % terraform initTerraform initialized in an empty directory!The directory has no Terraform configuration files. You may begin workingwith Terraform immediately by creating Terraform configuration files.incle@incleuicBookPro terra % terraform initTerraform initialized in an empty directory! 3. 어떤 시도를 해보셨나요?강의 내용에 있는 걸 그대로 붙여넣었고테라폼인잇 명령어를 친결과입니다. 4. 작성한 코드를 공유해주세요.provider "aws" { region = "ap-northeast-2" } data "aws_caller_identity" "current" {} output "account_id" { value = data.aws_caller_identity.current.account_id } output "caller_arn" { value = data.aws_caller_identity.current.arn } output "caller_user" { value = data.aws_caller_identity.current.user_id }