mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-11-04 04:29:13 +00:00 
			
		
		
		
	
		
			
	
	
		
			169 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			169 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								title: Server Configuration Reference
							 | 
						||
| 
								 | 
							
								slug: /deployment/configuration
							 | 
						||
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Server Configuration Reference
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								This document describes OpenMetadata Server Configuration
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								swagger:
							 | 
						||
| 
								 | 
							
								  resourcePackage: org.openmetadata.service.resources
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								server:
							 | 
						||
| 
								 | 
							
								  rootPath: '/api/*'
							 | 
						||
| 
								 | 
							
								  applicationConnectors:
							 | 
						||
| 
								 | 
							
								    - type: http
							 | 
						||
| 
								 | 
							
								      port: 8585
							 | 
						||
| 
								 | 
							
								  adminConnectors:
							 | 
						||
| 
								 | 
							
								    - type: http
							 | 
						||
| 
								 | 
							
								      port: 8586
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Logging settings.
							 | 
						||
| 
								 | 
							
								# https://logback.qos.ch/manual/layouts.html#conversionWord
							 | 
						||
| 
								 | 
							
								logging:
							 | 
						||
| 
								 | 
							
								  level: INFO
							 | 
						||
| 
								 | 
							
								  loggers:
							 | 
						||
| 
								 | 
							
								    org.openmetadata.service.common: DEBUG
							 | 
						||
| 
								 | 
							
								    io.swagger: ERROR
							 | 
						||
| 
								 | 
							
								  appenders:
							 | 
						||
| 
								 | 
							
								    - type: file
							 | 
						||
| 
								 | 
							
								      threshold: TRACE
							 | 
						||
| 
								 | 
							
								      logFormat: "%level [%d{HH:mm:ss.SSS}] [%t] %logger{5} - %msg %n"
							 | 
						||
| 
								 | 
							
								      currentLogFilename: ./logs/openmetadata.log
							 | 
						||
| 
								 | 
							
								      archivedLogFilenamePattern: ./logs/openmetadata-%d{yyyy-MM-dd}-%i.log.gz
							 | 
						||
| 
								 | 
							
								      archivedFileCount: 7
							 | 
						||
| 
								 | 
							
								      timeZone: UTC
							 | 
						||
| 
								 | 
							
								      maxFileSize: 50MB
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								database:
							 | 
						||
| 
								 | 
							
								  # the name of the JDBC driver, mysql in our case
							 | 
						||
| 
								 | 
							
								  driverClass: com.mysql.cj.jdbc.Driver
							 | 
						||
| 
								 | 
							
								  # the username and password
							 | 
						||
| 
								 | 
							
								  user: openmetadata_user
							 | 
						||
| 
								 | 
							
								  password: openmetadata_password
							 | 
						||
| 
								 | 
							
								  # the JDBC URL; the database is called openmetadata_db
							 | 
						||
| 
								 | 
							
								  url: jdbc:mysql://localhost/openmetadata_db?useSSL=false&serverTimezone=UTC
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								elasticsearch:
							 | 
						||
| 
								 | 
							
								  host: localhost
							 | 
						||
| 
								 | 
							
								  port: 9200
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								eventHandlerConfiguration:
							 | 
						||
| 
								 | 
							
								  eventHandlerClassNames:
							 | 
						||
| 
								 | 
							
								    - "org.openmetadata.service.events.AuditEventHandler"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								health:
							 | 
						||
| 
								 | 
							
								  delayedShutdownHandlerEnabled: true
							 | 
						||
| 
								 | 
							
								  shutdownWaitPeriod: 1s
							 | 
						||
| 
								 | 
							
								  healthCheckUrlPaths: ["/api/v1/health-check"]
							 | 
						||
| 
								 | 
							
								  healthChecks:
							 | 
						||
| 
								 | 
							
								    - name: UserDatabaseCheck
							 | 
						||
| 
								 | 
							
								      critical: true
							 | 
						||
| 
								 | 
							
								      schedule:
							 | 
						||
| 
								 | 
							
								        checkInterval: 2500ms
							 | 
						||
| 
								 | 
							
								        downtimeInterval: 10s
							 | 
						||
| 
								 | 
							
								        failureAttempts: 2
							 | 
						||
| 
								 | 
							
								        successAttempts: 1
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Server Port
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								server:
							 | 
						||
| 
								 | 
							
								  rootPath: '/api/*'
							 | 
						||
| 
								 | 
							
								  applicationConnectors:
							 | 
						||
| 
								 | 
							
								    - type: http
							 | 
						||
| 
								 | 
							
								      port: 8585
							 | 
						||
| 
								 | 
							
								  adminConnectors:
							 | 
						||
| 
								 | 
							
								    - type: http
							 | 
						||
| 
								 | 
							
								      port: 8586
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								By default, the OpenMetadata server runs on port 8585. It uses Jetty Server. The above config can be changed to make it
							 | 
						||
| 
								 | 
							
								run on a different port. Once you have updated the port details in config restart the server.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Database
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								OpenMetadata supports MySQL or Postgres as the database. The database configurations and connection strings must be as
							 | 
						||
| 
								 | 
							
								specified below. 
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								The section below refers to the database connection details to MySQL database. We recommend you create
							 | 
						||
| 
								 | 
							
								a MySQL user with a strong password and update this section accordingly.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								database:
							 | 
						||
| 
								 | 
							
								  # the name of the JDBC driver, mysql in our case
							 | 
						||
| 
								 | 
							
								  driverClass: com.mysql.cj.jdbc.Driver
							 | 
						||
| 
								 | 
							
								  # the username and password
							 | 
						||
| 
								 | 
							
								  user: openmetadata_user
							 | 
						||
| 
								 | 
							
								  password: openmetadata_password
							 | 
						||
| 
								 | 
							
								  # the JDBC URL; the database is called openmetadata_db
							 | 
						||
| 
								 | 
							
								  url: jdbc:mysql://localhost/openmetadata_db?useSSL=false&serverTimezone=UTC
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								The section below refers to the database connection details to Postgres database. OpenMetadata uses stored generated
							 | 
						||
| 
								 | 
							
								columns which is supported in Postgres 12. Ensure that you have Postgres 12 or a later version. We recommend you create
							 | 
						||
| 
								 | 
							
								a Postgres user with a strong password and update this section accordingly.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								database:
							 | 
						||
| 
								 | 
							
								  # the name of the JDBC driver, postgres in our case
							 | 
						||
| 
								 | 
							
								  driverClass: org.postgresql.Driver
							 | 
						||
| 
								 | 
							
								  # the username and password
							 | 
						||
| 
								 | 
							
								  user: openmetadata_user
							 | 
						||
| 
								 | 
							
								  password: openmetadata_password
							 | 
						||
| 
								 | 
							
								  # the JDBC URL; the database is called openmetadata_db
							 | 
						||
| 
								 | 
							
								  url: jdbc:postgresql://localhost:5432/openmetadata_db?useSSL=false&serverTimezone=UTC
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## ElasticSearch
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								elasticsearch:
							 | 
						||
| 
								 | 
							
								  host: localhost
							 | 
						||
| 
								 | 
							
								  port: 9200
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ElasticSearch is one of the pre-requisites to run OpenMetadata. Default configuration expects a single instance of
							 | 
						||
| 
								 | 
							
								ElasticSearch running on the local machine. Please make sure you update it with your production elastic search.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Event Handlers
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								eventHandlerConfiguration:
							 | 
						||
| 
								 | 
							
								  eventHandlerClassNames:
							 | 
						||
| 
								 | 
							
								    - "org.openmetadata.service.events.AuditEventHandler"
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								EventHandler configuration is optional. It will update the AuditLog in MySQL DB and also ElasticSearch indexes whenever
							 | 
						||
| 
								 | 
							
								any entity is updated either through UI or API interactions. We recommend you leave it there as it enhances the user
							 | 
						||
| 
								 | 
							
								experience.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Healthcheck
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```yaml
							 | 
						||
| 
								 | 
							
								health:
							 | 
						||
| 
								 | 
							
								  delayedShutdownHandlerEnabled: true
							 | 
						||
| 
								 | 
							
								  shutdownWaitPeriod: 1s
							 | 
						||
| 
								 | 
							
								  healthCheckUrlPaths: ["/api/v1/health-check"]
							 | 
						||
| 
								 | 
							
								  healthChecks:
							 | 
						||
| 
								 | 
							
								    - name: UserDatabaseCheck
							 | 
						||
| 
								 | 
							
								      critical: true
							 | 
						||
| 
								 | 
							
								      schedule:
							 | 
						||
| 
								 | 
							
								        checkInterval: 2500ms
							 | 
						||
| 
								 | 
							
								        downtimeInterval: 10s
							 | 
						||
| 
								 | 
							
								        failureAttempts: 2
							 | 
						||
| 
								 | 
							
								        successAttempts: 1
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Healthcheck API provides an API endpoint to check the OpenMetadata server health. We recommend in production settings to
							 | 
						||
| 
								 | 
							
								use this API to monitor the health of your OpenMetadata instance. Please tune the above configuration according to your
							 | 
						||
| 
								 | 
							
								production needs.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Security
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Please follow our [Enable Security Guide](/deployment/security) to configure security for your OpenMetadata installation.
							 |