From d15c9a23a61732b8f2efd4b01261c86c0f302a85 Mon Sep 17 00:00:00 2001 From: kev Date: Sun, 29 Sep 2019 08:59:17 +0800 Subject: [PATCH] add ambari --- README.md | 1 + ambari/Dockerfile | 31 +++++++ ambari/README.md | 10 +++ ambari/data/ambari/ambari.properties | 118 ++++++++++++++++++++++++++ ambari/data/ambari/krb5JAASLogin.conf | 10 +++ ambari/data/ambari/log4j.properties | 116 +++++++++++++++++++++++++ ambari/data/ambari/metrics.properties | 65 ++++++++++++++ ambari/data/ambari/password.dat | 1 + ambari/data/ssh/.gitkeep | 0 ambari/docker-compose.yml | 25 ++++++ 10 files changed, 377 insertions(+) create mode 100644 ambari/Dockerfile create mode 100644 ambari/README.md create mode 100755 ambari/data/ambari/ambari.properties create mode 100755 ambari/data/ambari/krb5JAASLogin.conf create mode 100755 ambari/data/ambari/log4j.properties create mode 100755 ambari/data/ambari/metrics.properties create mode 100644 ambari/data/ambari/password.dat create mode 100644 ambari/data/ssh/.gitkeep create mode 100644 ambari/docker-compose.yml diff --git a/README.md b/README.md index dfe9161..236413d 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,7 @@ A collection of delicious docker recipes. ## Big Data - [x] airflow +- [x] ambari - [x] kafka-arm - [x] kafka-manager - [x] presto diff --git a/ambari/Dockerfile b/ambari/Dockerfile new file mode 100644 index 0000000..e41f6e2 --- /dev/null +++ b/ambari/Dockerfile @@ -0,0 +1,31 @@ +# +# Dockerfile for ambari +# + +FROM ubuntu:18.04 +MAINTAINER EasyPi Software Foundation + +ENV AMBARI_VERSION=2.7.4.0 +ENV AMBARI_SOURCE=http://public-repo-1.hortonworks.com/ambari/ubuntu18/2.x/updates/${AMBARI_VERSION}/ambari.list +ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + +RUN set -xe \ + && apt-get update \ + && apt-get install -y curl gnupg libpostgresql-jdbc-java openjdk-8-jdk openssh-client supervisor \ + && mkdir -m 700 /root/.ssh \ + && curl -sSL ${AMBARI_SOURCE} > /etc/apt/sources.list.d/ambari.list \ + && apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD \ + && apt-get update \ + && apt-get install -y ambari-server \ + && ambari-server setup --jdbc-db=postgres --jdbc-driver=/usr/share/java/postgresql.jar \ + && rm -rf /var/lib/apt/lists/* + +VOLUME /etc/ambari-server/conf/ /root/.ssh/ + +EXPOSE 8080 + +CMD ["sleep", "inf"] + +# +# ambari-server setup --jdbc-db=postgres --jdbc-driver=/usr/share/java/postgresql.jar +# diff --git a/ambari/README.md b/ambari/README.md new file mode 100644 index 0000000..ad3eb99 --- /dev/null +++ b/ambari/README.md @@ -0,0 +1,10 @@ +ambari +====== + +The [Apache Ambari][1] project is aimed at making Hadoop management simpler by +developing software for provisioning, managing, and monitoring Apache Hadoop +clusters. Ambari provides an intuitive, easy-to-use Hadoop management web UI +backed by its RESTful APIs. + + +[1]: https://ambari.apache.org/ diff --git a/ambari/data/ambari/ambari.properties b/ambari/data/ambari/ambari.properties new file mode 100755 index 0000000..d41bdcb --- /dev/null +++ b/ambari/data/ambari/ambari.properties @@ -0,0 +1,118 @@ +# +# Copyright 2011 The Apache Software Foundation +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +agent.package.install.task.timeout=1800 +agent.stack.retry.on_repo_unavailability=false +agent.stack.retry.tries=5 +agent.task.timeout=900 +agent.threadpool.size.max=25 +ambari-server.user=root +ambari.python.wrap=ambari-python-wrap +bootstrap.dir=/var/run/ambari-server/bootstrap +bootstrap.script=/usr/lib/ambari-server/lib/ambari_server/bootstrap.py +bootstrap.setup_agent.script=/usr/lib/ambari-server/lib/ambari_server/setupAgent.py +client.threadpool.size.max=25 +common.services.path=/var/lib/ambari-server/resources/common-services +custom.action.definitions=/var/lib/ambari-server/resources/custom_action_definitions +custom.postgres.jdbc.name=postgresql.jar +extensions.path=/var/lib/ambari-server/resources/extensions +gpl.license.accepted=true +http.cache-control=no-store +http.charset=utf-8 +http.pragma=no-cache +http.strict-transport-security=max-age=31536000 +http.x-content-type-options=nosniff +http.x-frame-options=DENY +http.x-xss-protection=1; mode=block +java.home=/usr/lib/jvm/java-8-openjdk-amd64 +java.releases=jdk1.8 +java.releases.ppc64le= +jce.download.supported=true +jdk.download.supported=true +jdk1.8.desc=Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8 +jdk1.8.dest-file=jdk-8u112-linux-x64.tar.gz +jdk1.8.home=/usr/jdk64/ +jdk1.8.jcpol-file=jce_policy-8.zip +jdk1.8.jcpol-url=http://public-repo-1.hortonworks.com/ARTIFACTS/jce_policy-8.zip +jdk1.8.re=(jdk.*)/jre +jdk1.8.url=http://public-repo-1.hortonworks.com/ARTIFACTS/jdk-8u112-linux-x64.tar.gz +kerberos.keytab.cache.dir=/var/lib/ambari-server/data/cache +kerberos.operation.verify.kdc.trust=true +local.database.user=postgres +metadata.path=/var/lib/ambari-server/resources/stacks +mpacks.staging.path=/var/lib/ambari-server/resources/mpacks +pid.dir=/var/run/ambari-server +recommendations.artifacts.lifetime=1w +recommendations.dir=/var/run/ambari-server/stack-recommendations +resources.dir=/var/lib/ambari-server/resources +rolling.upgrade.skip.packages.prefixes= +security.server.disabled.ciphers=TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384|TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384|TLS_RSA_WITH_AES_256_CBC_SHA256|TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384|TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384|TLS_DHE_RSA_WITH_AES_256_CBC_SHA256|TLS_DHE_DSS_WITH_AES_256_CBC_SHA256|TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA|TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA|TLS_RSA_WITH_AES_256_CBC_SHA|TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA|TLS_ECDH_RSA_WITH_AES_256_CBC_SHA|TLS_DHE_RSA_WITH_AES_256_CBC_SHA|TLS_DHE_DSS_WITH_AES_256_CBC_SHA|TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256|TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256|TLS_RSA_WITH_AES_128_CBC_SHA256|TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256|TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256|TLS_DHE_RSA_WITH_AES_128_CBC_SHA256|TLS_DHE_DSS_WITH_AES_128_CBC_SHA256|TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA|TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA|TLS_RSA_WITH_AES_128_CBC_SHA|TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA|TLS_ECDH_RSA_WITH_AES_128_CBC_SHA|TLS_DHE_RSA_WITH_AES_128_CBC_SHA|TLS_DHE_DSS_WITH_AES_128_CBC_SHA|TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA|TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA|TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA|TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA|SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA|SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA|TLS_EMPTY_RENEGOTIATION_INFO_SCSV|TLS_DH_anon_WITH_AES_256_CBC_SHA256|TLS_ECDH_anon_WITH_AES_256_CBC_SHA|TLS_DH_anon_WITH_AES_256_CBC_SHA|TLS_DH_anon_WITH_AES_128_CBC_SHA256|TLS_ECDH_anon_WITH_AES_128_CBC_SHA|TLS_DH_anon_WITH_AES_128_CBC_SHA|TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA|SSL_DH_anon_WITH_3DES_EDE_CBC_SHA|SSL_RSA_WITH_DES_CBC_SHA|SSL_DHE_RSA_WITH_DES_CBC_SHA|SSL_DHE_DSS_WITH_DES_CBC_SHA|SSL_DH_anon_WITH_DES_CBC_SHA|SSL_RSA_EXPORT_WITH_DES40_CBC_SHA|SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA|SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA|SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA|TLS_RSA_WITH_NULL_SHA256|TLS_ECDHE_ECDSA_WITH_NULL_SHA|TLS_ECDHE_RSA_WITH_NULL_SHA|SSL_RSA_WITH_NULL_SHA|TLS_ECDH_ECDSA_WITH_NULL_SHA|TLS_ECDH_RSA_WITH_NULL_SHA|TLS_ECDH_anon_WITH_NULL_SHA|SSL_RSA_WITH_NULL_MD5|TLS_KRB5_WITH_3DES_EDE_CBC_SHA|TLS_KRB5_WITH_3DES_EDE_CBC_MD5|TLS_KRB5_WITH_DES_CBC_SHA|TLS_KRB5_WITH_DES_CBC_MD5|TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA|TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5 +security.server.keys_dir=/var/lib/ambari-server/keys +server.connection.max.idle.millis=900000 +server.execution.scheduler.isClustered=false +server.execution.scheduler.maxDbConnections=5 +server.execution.scheduler.maxThreads=5 +server.execution.scheduler.misfire.toleration.minutes=480 +server.fqdn.service.url=http://169.254.169.254/latest/meta-data/public-hostname +server.http.session.inactive_timeout=1800 +server.jdbc.connection-pool=internal +server.jdbc.database=postgres +server.jdbc.database_name=ambari +server.jdbc.driver=org.postgresql.Driver +server.jdbc.hostname=postgres +server.jdbc.port=5432 +server.jdbc.postgres.schema=public +server.jdbc.rca.driver=org.postgresql.Driver +server.jdbc.rca.url=jdbc:postgresql://postgres:5432/ambari +server.jdbc.rca.user.name=ambari +server.jdbc.rca.user.passwd=/etc/ambari-server/conf/password.dat +server.jdbc.url=jdbc:postgresql://postgres:5432/ambari +server.jdbc.user.name=ambari +server.jdbc.user.passwd=/etc/ambari-server/conf/password.dat +server.os_family=ubuntu18 +server.os_type=ubuntu18 +server.persistence.type=remote +server.python.log.level=INFO +server.python.log.name=ambari-server-command.log +server.stages.parallel=true +server.task.timeout=1200 +server.tmp.dir=/var/lib/ambari-server/data/tmp +server.version.file=/var/lib/ambari-server/resources/version +shared.resources.dir=/usr/lib/ambari-server/lib/ambari_commons/resources +skip.service.checks=false +stack.java.home=/usr/lib/jvm/java-8-openjdk-amd64 +stackadvisor.script=/var/lib/ambari-server/resources/scripts/stack_advisor.py +ulimit.open.files=65536 +upgrade.parameter.convert.hive.tables.timeout=86400 +upgrade.parameter.move.hive.tables.timeout=86400 +user.inactivity.timeout.default=0 +user.inactivity.timeout.role.readonly.default=0 +views.ambari.request.connect.timeout.millis=30000 +views.ambari.request.read.timeout.millis=45000 +views.http.cache-control=no-store +views.http.charset=utf-8 +views.http.pragma=no-cache +views.http.strict-transport-security=max-age=31536000 +views.http.x-content-type-options=nosniff +views.http.x-frame-options=SAMEORIGIN +views.http.x-xss-protection=1; mode=block +views.request.connect.timeout.millis=5000 +views.request.read.timeout.millis=10000 +views.skip.home-directory-check.file-system.list=wasb,adls,adl +webapp.dir=/usr/lib/ambari-server/web diff --git a/ambari/data/ambari/krb5JAASLogin.conf b/ambari/data/ambari/krb5JAASLogin.conf new file mode 100755 index 0000000..d266e19 --- /dev/null +++ b/ambari/data/ambari/krb5JAASLogin.conf @@ -0,0 +1,10 @@ +com.sun.security.jgss.krb5.initiate { + com.sun.security.auth.module.Krb5LoginModule required + renewTGT=false + doNotPrompt=true + useKeyTab=true + keyTab="/etc/security/keytabs/ambari.keytab" + principal="ambari@EXAMPLE.COM" + storeKey=true + useTicketCache=false; +}; diff --git a/ambari/data/ambari/log4j.properties b/ambari/data/ambari/log4j.properties new file mode 100755 index 0000000..9c4397f --- /dev/null +++ b/ambari/data/ambari/log4j.properties @@ -0,0 +1,116 @@ +# Copyright 2011 The Apache Software Foundation +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Define some default values that can be overridden by system properties +# Root logger option +ambari.root.dir= +ambari.log.dir=${ambari.root.dir}/var/log/ambari-server +ambari.log.file=ambari-server.log +ambari.config-changes.file=ambari-config-changes.log +ambari.alerts.file=ambari-alerts.log +ambari.eclipselink.file=ambari-eclipselink.log +ambari.audit.file=ambari-audit.log +ambari.dbcheck.file=ambari-server-check-database.log +ambari.stackmerger.file=ambari-stack-merger.log + +log4j.rootLogger=INFO,file + +# Direct log messages to a log file +log4j.appender.file=org.apache.log4j.RollingFileAppender +log4j.appender.file.File=${ambari.log.dir}/${ambari.log.file} +log4j.appender.file.MaxFileSize=80MB +log4j.appender.file.MaxBackupIndex=60 +log4j.appender.file.layout=org.apache.log4j.PatternLayout +log4j.appender.file.layout.ConversionPattern=%d{ISO8601} %5p [%t] %c{1}:%L - %m%n + +# Log config changes +log4j.logger.configchange=INFO,configchange +log4j.additivity.configchange=false +log4j.appender.configchange=org.apache.log4j.FileAppender +log4j.appender.configchange.File=${ambari.log.dir}/${ambari.config-changes.file} +log4j.appender.configchange.layout=org.apache.log4j.PatternLayout +log4j.appender.configchange.layout.ConversionPattern=%d{ISO8601} %5p - %m%n + +# Log alert state changes +log4j.logger.alerts=INFO,alerts +log4j.additivity.alerts=false +log4j.appender.alerts=org.apache.log4j.FileAppender +log4j.appender.alerts.File=${ambari.log.dir}/${ambari.alerts.file} +log4j.appender.alerts.layout=org.apache.log4j.PatternLayout +log4j.appender.alerts.layout.ConversionPattern=%d{ISO8601} %m%n + +# Log database check process +log4j.logger.org.apache.ambari.server.checks.DatabaseConsistencyChecker=INFO, dbcheck +log4j.additivity.org.apache.ambari.server.checks.DatabaseConsistencyChecker=false +log4j.appender.dbcheck=org.apache.log4j.FileAppender +log4j.appender.dbcheck.File=${ambari.log.dir}/${ambari.dbcheck.file} +log4j.appender.dbcheck.layout=org.apache.log4j.PatternLayout +log4j.appender.dbcheck.layout.ConversionPattern=%d{ISO8601} %5p - %m%n + +log4j.logger.org.apache.ambari.server.checks.DatabaseConsistencyCheckHelper=INFO, dbcheckhelper +log4j.additivity.org.apache.ambari.server.checks.DatabaseConsistencyCheckHelper=false +log4j.appender.dbcheckhelper=org.apache.log4j.FileAppender +log4j.appender.dbcheckhelper.File=${ambari.log.dir}/${ambari.dbcheck.file} +log4j.appender.dbcheckhelper.layout=org.apache.log4j.PatternLayout +log4j.appender.dbcheckhelper.layout.ConversionPattern=%d{ISO8601} %5p - %m%n + +# Log stack merger +log4j.logger.org.apache.ambari.server.stack.StackMerger=INFO,stackmerger,console-stackmerger +log4j.additivity.org.apache.ambari.server.stack.StackMerger=false +log4j.appender.console-stackmerger=org.apache.log4j.ConsoleAppender +log4j.appender.console-stackmerger.layout=org.apache.log4j.PatternLayout +log4j.appender.stackmerger=org.apache.log4j.FileAppender +log4j.appender.stackmerger.File=${ambari.log.dir}/${ambari.stackmerger.file} +log4j.appender.stackmerger.layout=org.apache.log4j.PatternLayout +log4j.appender.stackmerger.layout.ConversionPattern=%d{ISO8601} %5p - %m%n + +# EclipsLink -> slf4j bridge +log4j.logger.eclipselink=TRACE,eclipselink +log4j.additivity.eclipselink=false +log4j.appender.eclipselink=org.apache.log4j.RollingFileAppender +log4j.appender.eclipselink.File=${ambari.log.dir}/${ambari.eclipselink.file} +log4j.appender.eclipselink.MaxFileSize=50MB +log4j.appender.eclipselink.MaxBackupIndex=10 +log4j.appender.eclipselink.layout=org.apache.log4j.PatternLayout +log4j.appender.eclipselink.layout.ConversionPattern=%m%n + +# Jersey +log4j.logger.com.sun.jersey=WARN,file +log4j.logger.org.glassfish.jersey=WARN,file + +# Jetty +log4j.logger.org.eclipse.jetty=WARN,file + +# Audit logging +log4j.logger.audit=INFO,audit +log4j.additivity.audit=false +log4j.appender.audit=org.apache.log4j.rolling.RollingFileAppender +log4j.appender.audit.rollingPolicy=org.apache.log4j.rolling.FixedWindowRollingPolicy +log4j.appender.audit.rollingPolicy.ActiveFileName=${ambari.log.dir}/${ambari.audit.file} +log4j.appender.audit.rollingPolicy.FileNamePattern=${ambari.log.dir}/${ambari.audit.file}-%i.log.gz +log4j.appender.audit.rollingPolicy.maxIndex=13 +log4j.appender.audit.triggeringPolicy=org.apache.log4j.rolling.SizeBasedTriggeringPolicy +log4j.appender.audit.triggeringPolicy.maxFileSize=50000000 +log4j.appender.audit.layout=org.apache.log4j.PatternLayout +log4j.appender.audit.layout.ConversionPattern=%m%n + +log4j.logger.org.apache.hadoop.yarn.client=WARN +log4j.logger.org.apache.ambari.server.security.authorization=WARN + +log4j.logger.org.apache.ambari.server.security.authorization.AuthorizationHelper=INFO +log4j.logger.org.apache.ambari.server.security.authorization.AmbariLdapBindAuthenticator=INFO diff --git a/ambari/data/ambari/metrics.properties b/ambari/data/ambari/metrics.properties new file mode 100755 index 0000000..96748d2 --- /dev/null +++ b/ambari/data/ambari/metrics.properties @@ -0,0 +1,65 @@ +# Copyright 2011 The Apache Software Foundation +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +#################### Metrics Source Configs ##################### + +#Metric sources : jvm,database +metric.sources=jvm,event + +#### JVM Source Configs ### +source.jvm.class=org.apache.ambari.server.metrics.system.impl.JvmMetricsSource +source.event.class=org.apache.ambari.server.metrics.system.impl.StompEventsMetricsSource +source.jvm.interval=10 + +#### Database Source Configs ### + +# Note : To enable Database metrics source completely, add the following property to ambari.properties as well +# server.persistence.properties.eclipselink.profiler=org.apache.ambari.server.metrics.system.impl.AmbariPerformanceMonitor + +source.database.class=org.apache.ambari.server.metrics.system.impl.DatabaseMetricsSource + +# Ambari performance monitor granularity : NONE / NORMAL / HEAVY / ALL +source.database.performance.monitor.query.weight=HEAVY + +# Collection interval in milliseconds +source.database.monitor.dumptime=60000 + +# Include entities to be tracked. +source.database.monitor.entities=Cluster(.*)Entity,Host(.*)Entity,ExecutionCommandEntity,ServiceComponentDesiredStateEntity,Alert(.*)Entity,StackEntity,StageEntity + +# Include some metrics which have the keyword even if they are not part of requested Entities. +# Examples +# Query Types +# ReadAllQuery,ReadObjectQuery,UpdateObjectQuery,ReportQuery,InsertObjectQuery,ValueReadQuery,DataModifyQuery,DoesExistQuery + +# Query stages +# ObjectBuilding,QueryPreparation,SqlPrepare,SqlGeneration,StatementExecute,RowFetch,ConnectCalls,UnitOfWorkCommit,ClientSessionReleases,ConnectionManagement,CacheHits + +# Sequences +# host_role_command_id_seq,alert_history_id_seq +source.database.monitor.query.keywords.include=CacheMisses + +################################################################ + +############## General Metrics Service Configs ################# + +#ambariserver.hostname.override= + +################################################################ + diff --git a/ambari/data/ambari/password.dat b/ambari/data/ambari/password.dat new file mode 100644 index 0000000..a6bb20c --- /dev/null +++ b/ambari/data/ambari/password.dat @@ -0,0 +1 @@ +ambari \ No newline at end of file diff --git a/ambari/data/ssh/.gitkeep b/ambari/data/ssh/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/ambari/docker-compose.yml b/ambari/docker-compose.yml new file mode 100644 index 0000000..ecc68c6 --- /dev/null +++ b/ambari/docker-compose.yml @@ -0,0 +1,25 @@ +ambari: + image: vimagick/ambari + hostname: ambari-server + ports: + - "8080:8080" + volumes: + - ./data/ssh:/root/.ssh + - ./data/ambari:/etc/ambari-server/conf + extra_hosts: + - ambari-agent1:172.16.1.101 + - ambari-agent2:172.16.1.102 + - ambari-agent3:172.16.1.103 + restart: unless-stopped + +postgres: + image: postgres:alpine + ports: + - "5432:5432" + volumes: + - /data/postgres:/var/lib/postgresql/data + environment: + - POSTGRES_USER=ambari + - POSTGRES_PASSWORD=ambari + - POSTGRES_DB=ambari + restart: unless-stopped