Terraform Vault에서 비밀과 함께 IAC 배포

23일차 - Terraform Vault에서 비밀과 함께 IAC 배포 - 23일차



100 days of Cloud on GitHub - Read On iCTPro.co.nz -


볼트란 무엇입니까?



비밀에 안전하게 액세스할 수 있다고 HashiCorp는 설명합니다. Vault에는 비밀 엔진이라고 하는 다양한 플러그형 구성 요소와 외부 시스템과 통합할 수 있는 인증 방법이 함께 제공됩니다. Vault는 리소스에 액세스하기 위해 임시 토큰을 발급합니다.

  • 블로그에서 볼트
  • 를 설정하는 방법을 시연할 예정입니다.
  • 인프라를 AWS 환경에 배포하기 위해 Vault에서 암호에 액세스합니다.

  • 전제 조건



    Install AWS CLI 및 IAM 자격 증명으로 구성


    볼트 설치



    Goto 이것link to install Vault
    Windows에서 WSL Linux를 사용하고 있습니다.
  • GPG 키 가져오기

  • curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
    

  • HashiCorp Linux 저장소 추가

  • sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
    

  • 설치

  • sudo apt-get update && sudo apt-get install vault
    

    Vault 프로젝트 폴더 설정


  • Vault라는 이름의 프로젝트 폴더를 만들고 이 폴더에 CD를 넣습니다

  • Vault 서버 설정(개발 환경)



    vault server -dev -dev-root-token-id="environment"
    



    Vault 주소, Unsealkey 및 루트 토큰을 기록해 둡니다.

    볼트 서버에 로그인




    토큰을 "환경"으로 입력
  • 비밀을 선택하고 비밀 생성을 클릭합니다.
  • IAM 프로그래밍 액세스 키를 입력하고 저장합니다.


  • Vault로 배포


  • main.tf 파일을 만들고 이 명령을 복사하여 붙여넣습니다.

  • terraform {
      required_providers {
        aws = {
          source  = "hashicorp/aws"
          version = "3.58.0"
        }
      }
    }
    
    data "vault_generic_secret" "aws_creds" {
        path = "secret/aws"
    }
    
    provider "aws" {
      region  = data.vault_generic_secret.aws_creds.data["region"]
        access_key = data.vault_generic_secret.aws_creds.data["aws_access_key_id"]
        secret_key = data.vault_generic_secret.aws_creds.data["aws_secret_access_key"]
    }
    
    
    resource "aws_instance" "my_server" {
      ami           = "ami-059af0b76ba105e7e"
      instance_type = "t2.nano"
        tags = {
            Name = "Vault-Server"
        }
    }
    

    해당 지역이 ap-southeast-2에 있지 않은 경우 ami를 변경해야 합니다.
  • Terraform 초기화

  • terraform init
    

  • 계획 테라포밍

  • terraform plan
    

    볼트 URL을 입력하라는 메시지가 표시됩니다. 이 경우 http://127.0.0.1:8200/입니다.


  • 인프라 배포

  • terraform apply -auto-approve
    

  • 프롬프트가 표시되면 저장소 URL을 입력하십시오.


  • 인프라 해체

  • 배포에 만족하면 배포된 리소스를 해체할 수 있습니다.

    terraform apply -auto-approve -destroy
    

    😀🎉축하합니다🎉 Terraform Vault와 함께 IAC를 성공적으로 배포했습니다.



    ✅저와 연결하세요
    🤝🏽에서 나와 연결
    🧑🏼‍🤝‍🧑🏻 또는 iCTPro.co.nz에서 더 많은 게시물 보기
    💻 GitHub에서 나와 연결


    .ltag__user__id__637154 .follow-action-button {
    배경색: #141D2B !중요;
    색상: #9FEF00 !중요;
    border-color: #141D2B !중요;
    }



    아누빈드 산카라빌라삼 팔로우



    Experienced Cloud Technology Specialist with a demonstrated skillset of working with Emergency, NZ Police & Education industry

    좋은 웹페이지 즐겨찾기