`agent generate-config` — 에이전트 설정 파일 생성하기
agent generate-config — 에이전트 설정 파일 생성하기
시크릿 플러그인 데이터를 사용해 프로세스 슈퍼바이저(process supervisor) 모드로 Vault Agent를 실행하기 위한 기본 설정 파일을 생성해요.
$ vault agent generate-config -type <config_file_type> [options] [<file_path>]
출처: 문서
본문
설명 (Description)
agent generate-config는 설정 타입에 따라 Vault Agent의 설정 세부 사항을 구성하고, 프로세스 슈퍼바이저 모드로 Vault Agent를 실행하기 위한 로컬 설정 파일을 작성해요.
관련 API 엔드포인트:
- 없음.
제한 사항과 주의사항 (Limitations and warnings)
제한 사항:
- 플러그인 지원은 KV 플러그인으로 제한돼요.
- 설정 타입은 환경 변수 템플릿으로 제한돼요.
프로덕션에는 부적절
agent generate-config가 만든 파일에는 token_file 인증 방식을 사용하도록 구성된 auto_auth 섹션이 포함돼요.
토큰 파일은 로컬 테스트에 편리하지만 프로덕션 사용에는 부적절해요. 프로덕션에 적합한 인증 방식 목록은 Vault Agent autoAuth 방식 전체 목록을 참고하세요.
인자 (Arguments)
file_path (string: "./agent.hcl")
Vault가 생성된 설정 파일을 저장할 경로.
예: "./agent/custom-config.hcl"
옵션 (Options)
- 없음.
커맨드 플래그 (Command flags)
-exec(string: "") — 선택적 인자가 있는 자식 프로세스용 명령 경로. 상대 경로는 실행 시 현재 작업 디렉터리에서 시작해요. Vault Agent 설정 파일의exec.command에 대응해요. 예:-exec "./my-app arg1 arg2"-path(string: "") — 하나 이상의 KV 시크릿 저장소 경로. 와일드카드(*)로 끝나는 경로는 해당 경로 아래의 모든 시크릿을 포함해요. 대상 시크릿 전체 집합을 지정하려면-path플래그를 필요에 따라 반복해요. 예:-path secret/kv/agent-keys/*-type(enum: <필수>) — 생성할 설정 파일 항목. 예:-type env-template
전역 플래그 (Global flags)
모든 명령어에 공통으로 포함된 표준 플래그 목록이에요.
-address/VAULT_ADDR(string: 'https://127.0.0.1:8200') — Vault 서버 주소.-agent-address/VAULT_AGENT_ADDR(string: "") — 사용한다면 Vault Agent 주소.-ca-cert/VAULT_CACERT(string: "") — 서버 SSL 인증서 검증에 쓰는 PEM 인코딩 CA 인증서 파일 경로.-ca-path보다 우선해요.-ca-path/VAULT_CAPATH(string: "") — 서버 SSL 인증서 검증에 쓰는 PEM 인코딩 CA 인증서 파일들이 있는 디렉터리 경로.-client-cert/VAULT_CLIENT_CERT(string: "") — 서버와의 TLS 통신에 쓰는 PEM 인코딩 CA 인증서 파일 경로.-client-key/VAULT_CLIENT_KEY(string: "") —-client-cert와 일치하는 PEM 인코딩 개인 키 경로.-disable-redirects/VAULT_DISABLE_REDIRECTS(bool: false) — 기본 CLI 리다이렉트 동작을 비활성화. 주의: 일부 명령어가 오작동할 수 있음.-header(string: "") — CLI 요청의 선택적 HTTP 헤더"<key>=<value>". 사용자 정의 헤더는X-Vault-로 시작할 수 없음.-mfa/VAULT_MFA(string: "") —mfa_method_id:passcode형식의 MFA 자격증명.-namespace/-ns/VAULT_NAMESPACE(string:) — CLI 명령의 루트 네임스페이스. -non-interactive(bool: false) — 터미널 입력을 요청하지 않게 한다.-output-curl-string(bool: false) — 실행에 필요한 API 호출을 cURL 문자열로 출력하고 종료한다.-output-policy(bool: false) — 실행에 필요한 Vault 정책을 HCL로 출력하고 종료한다.-policy-override(bool: false) —enforcement_level이"soft-mandatory"인 Sentinel 정책을 무시한다.-tls-server-name/VAULT_TLS_SERVER_NAME(string: "") — TLS 연결의 SNI 호스트 이름.-tls-skip-verify/VAULT_SKIP_VERIFY(bool: false) — 모든 TLS 인증서 검증을 비활성화. 신중히 사용.-unlock-key(string:) — 주어진 네임스페이스의 기본 API 엔드포인트를 잠금 해제하는 평문 키. -wrap-ttl/VAULT_WRAP_TTL(string: "") — CLI 응답을 래핑하는 Cubbyhole 토큰의 기본 TTL.
예시 (Examples)
foo 시크릿 플러그인에 대한 환경 변수 템플릿 설정을 생성해요:
$ vault agent generate-config \
-type="env-template" \
-exec="./my-app arg1 arg2" \
-path="secret/foo"
Command output
둘 이상의 시크릿 플러그인에 대한 환경 변수 템플릿 설정을 생성해요:
$ vault agent generate-config -type="env-template" \
-exec="./my-app arg1 arg2" \
-path="secret/foo" \
-path="secret/bar" \
-path="secret/my-app/*"
더 알아보기 (Learn more)
vault agent— Vault Agent 실행- Vault Agent 문서
- auto-auth 문서