4.3. 설정 로드 순서
플랫폼 게이트웨이는 애플리케이션 설정을 관리하기 위해 Dynaconf 라이브러리를 활용합니다. Dynaconf는 여러 소스의 설정이 정의된 순서로 로드되고 나중에 소스가 이전 소스를 재정의하는 계층화된 구성 접근 방식을 따릅니다. Ansible Automation Platform은 다음 순서로 설정을 로드합니다.
- 애플리케이션 설정.py: 이 파일은 애플리케이션 자체에 있으며 추가 설정 파일의 로드 순서와 위치를 정의합니다.
- 애플리케이션 기본 설정: 플랫폼은 애플리케이션 자체의 일부인 defaults.py 파일에서 기본 설정을 로드합니다. 이 파일에는 API 서버와 gRPC 서버 모두에 대한 일반 구성이 포함되어 있습니다.
-
고객 덮어쓰기 파일:
/etc/ansible-automation-platform/gateway/settings.py파일이 자동으로 설치되고defaults.py의 설정을 재정의하는 데 사용할 수 있습니다. 이 파일의 변경 사항은 API 및 gRPC 서버 모두에 영향을 미칩니다. -
Application gRPC 기본 설정: 고객이 파일을 재정의한 후 애플리케이션은
grpc_default.py파일에서만 gRPC 서버에 대한 추가 기본 설정을 로드합니다. 특히 이 파일에는 keepalive 매개변수와 같은 gRPC 서버의 데이터베이스 OPTIONS가 포함됩니다. -
Customer gRPC 덮어쓰기 파일:
/etc/ansible-automation-platform/gateway/grpc_settings.py파일이 다음에 로드되고 이 파일에 포함된 모든 설정은 gRPC 서버에만 적용됩니다. -
플랫폼 덮어쓰기 설정 파일:
/etc/ansible-automation-platform/settings.py파일의 모든 설정은 gRPC 서버와 API 서버 모두에 적용됩니다. 단일 노드에 Ansible Automation Platform 서비스가 여러 개 있는 경우 이 파일의 항목이 모든 서비스에 적용됩니다. - ENV vars: 구성 파일 외부에서 특정 Ansible Automation Platform 설정을 구성할 수 있는 환경 변수가 마지막으로 로드됩니다. 이전에 로드된 모든 설정을 재정의합니다.