Configuring PostGres HA for the Cloudera Manager database

After running the scm_prepare_database.sh script, there is additional configuration required.

You must run the scm_prepare_database.sh before continuing with the following steps.
  1. Log in to the Cloudera Manager server host using ssh.
  2. Edit the /etc/cloudera-scm-server/db.properties file and add the following properties:
    com.cloudera.cmf.db.type=postgresql
    com.cloudera.cmf.db.host=[***postgres host***]
    com.cloudera.cmf.db.name=[***postgres name***]
    com.cloudera.cmf.db.user=[***postgres user name***]
    com.cloudera.cmf.db.setupType=EXTERNAL
    com.cloudera.cmf.db.password=[***postgres password***]
    com.cloudera.cmf.orm.hibernate.connection.url=jdbc
    //<DB-HOST[***postgres HA host ***]>:<DB-PORT[***postgres HA port ***]>/<DB-NAME>?sslMode=VERIFY_CA&trustCertificateKeyStoreUrl=file://<PATH_TO_TRUSTSTORE_FILE>&trustCertificateKeyStoreType=jks&trustCertificateKeyStorePassword=<TRUSTSTORE_PASSWORD>
    
  3. If you have configured Cloudera Manager for high availability with active and passive instances of the Cloudera Manager server, repeat the above steps for the other Cloudera Manager server instance.
  4. (Optional) If you do not want to expose the password in the db.properties file, you can create a script that outputs the password of the database upon its execution. You can then add this script to the /etc/cloudera-scm-server/db.properties file.
    A sample script:
    cat > /[***path***]/retrieve_db_password.sh 
    echo "[***my_database_password***]"
    Add the script to the db.properties file:
    com.cloudera.cmf.db.password_script=/[***path***]/retrieve_db_password.sh
Continue with the CDP Private Cloud Base Production Installation steps.