{
    "name": "prod_neo4j_5_debian_cluster",
    "description": "role applied to PROD neo4j 5x Debian hosts",
    "run_list": [
      "role[prod_base_linux]",
      "recipe[irrigate-neo4j::default]",
      "recipe[irrigate-neo4j::user_backup]",
      "recipe[irrigate-datadog::neo4j]",
      "recipe[irrigate-orchard_base::unattended_upgrade]"
    ],
    "default_attributes": {
      "aide_update": {
        "excluded_directories": [
          "/var/lib/neo4j"
        ]
      },
      "firewall": {
        "firewalld": {
          "permanent": true
        }
      },
      "datadog": {
        "journald": {
          "units": {
            "neo4j": true
          }
        },
        "neo4j_credentials_data_bag_name": "prod_neo4j_datadog_credentials",
        "max_message_size_bytes": 500000,
        "neo4j": {
          "cluster_name": "prod-neo4j-5-cluster",
          "version": "5.26.21",
          "wheel": {
            "version": "3.0.4",
            "source": "https://packagecloud.io/orchardit/neo4j/packages/python/datadog_neo4j-3.0.4-py3-none-any.whl/download"
          },
          "logs": [
            {
              "type": "file",
              "path": "/var/log/neo4j/debug.log",
              "source": "neo4j",
              "sourcecategory": "debug",
              "service": "neo4j"
            },
            {
              "type": "file",
              "path": "/var/log/neo4j/watchdog.log",
              "source": "neo4j",
              "sourcecategory": "watchdog",
              "service": "neo4j"
            },
            {
              "type": "file",
              "path": "/var/log/neo4j/query.log",
              "source": "neo4j",
              "sourcecategory": "query",
              "service": "neo4j",
              "log_processing_rules": [
                {
                  "type": "exclude_at_match",
                  "name": "exclude-getRoutingTable",
                  "pattern": "CALL\\sdbms.routing.getRoutingTable"
                },
                {
                  "type": "exclude_at_match",
                  "name": "exclude-connection-polling",
                  "pattern": "return\\s1"
                }
              ]
            }
          ]
        },
        "tags": {
          "environment": "prod",
          "service_name": "neo4j",
          "neo4j_cluster": "prod-neo4j-5-cluster"
        }
      },
      "neo4j": {
        "apoc": {
          "install_url": "https://github.com/neo4j/apoc/releases/download/5.26.21/apoc-5.26.21-core.jar",
          "checksum": "a097e5dd303641b40b9cbce64dc1065c540ee355c1496e413dea852272c34490"
        },
        "version": "5.26.21",
        "data_volume_type": "ebs",
        "config": {
          "dbms.netty.ssl.provider": "OPENSSL",
          "dbms.connectors.default_advertised_address_prefix": "prod-neo4j-5-cluster",
          "server.memory.heap.initial_size": "31G",
          "server.memory.heap.max_size": "31G",
          "server.memory.pagecache.size": "192000000000",
          "dbms.routing.enabled": "true",
          "causal_clustering.causal_clustering.discovery_address": "prod-neo4j-5-cluster.theorchard.io",
          "db.logs.query.enabled": "INFO",
          "ssl_policy": {
            "policies": {
              "backup": {
                "base_directory": "/etc/neo4j/default",
                "allow_key_generation": "false",
                "data_bag_name": "prod_neo4j_certificate",
                "trust_all": "false",
                "client_auth": "NONE",
                "verify_hostname": "false",
                "tls_versions": "TLSv1.2",
                "ciphers": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
              },
              "bolt": {
                "base_directory": "/etc/neo4j/default",
                "allow_key_generation": "false",
                "data_bag_name": "prod_neo4j_certificate",
                "trust_all": "false",
                "client_auth": "NONE",
                "verify_hostname": "false",
                "tls_versions": "TLSv1.2",
                "ciphers": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
              },
              "cluster": {
                "base_directory": "/etc/neo4j/cluster_policy",
                "allow_key_generation": "false",
                "data_bag_name": "prod_neo4j_certificate",
                "trust_all": "false",
                "client_auth": "REQUIRE",
                "verify_hostname": "false",
                "tls_versions": "TLSv1.2",
                "ciphers": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
              }
            }
          },
          "kafka.zookeeper.connect": "z-1.prod-managed-kafka-cdc.40dsdw.c6.kafka.us-east-1.amazonaws.com:2182,z-3.prod-managed-kafka-cdc.40dsdw.c6.kafka.us-east-1.amazonaws.com:2182,z-2.prod-managed-kafka-cdc.40dsdw.c6.kafka.us-east-1.amazonaws.com:2182",
          "kafka.bootstrap.servers": "b-2.prod-managed-kafka-cdc.40dsdw.c6.kafka.us-east-1.amazonaws.com:9094,b-3.prod-managed-kafka-cdc.40dsdw.c6.kafka.us-east-1.amazonaws.com:9094,b-1.prod-managed-kafka-cdc.40dsdw.c6.kafka.us-east-1.amazonaws.com:9094",
          "kafka.security.protocol": "SSL",
          "kafka.ssl.truststore.location": "/etc/ssl/certs/java/cacerts",
          "dbms.security.procedures.allowlist": "apoc.*",
          "dbms.security.procedures.unrestricted": "apoc.*",
          "apoc.export.file.enabled": "true",
          "apoc.trigger.enabled": "true"
        },
        "backup": {
          "user_backup": {
            "ssh_public_key": "AAAAB3NzaC1yc2EAAAADAQABAAACAQDrtsZMjdOJii6UqNVP5fQizcWgU0lyA3wTb9OoVFIwlQezm17r7LiDXTZULCQ/UIaFtyKDUhQJxoE8PGt1Z3B3KngXG2tgFYdJ58qmY/dhf6PNbxUjsXFH4fr6WGfxvb60apM/p8o5Twfm6FDnKCWD32YdBTTh6jGvreLXdJeKlcica0Rekl9f+8jFVC8DX29IVbX5ZcO9aGcUsQMLUKRkAo3TxMp0phVTQHJm9IKnty7/1150P4/nFB7RfjNhhpXtoT0nqkl/LegALnWgsfpz+hV4gJi6pcd+XnJvZTIt2u71iVofSlG3toqQTFFZJE+sSPmVa4tleZb+JzWp/CfxYDZ+ZW7YBbkzPSpNL9U0ndYHMgMgiFxkcYU1BTFY3ExhtsACFWY8QRIlwiI6jfb0tifCkVTwKtdgbmGJvWd+CTvQ7K2YFUUG+O++I781wMSELaLUrNXV4WuHiBsUzeP6GRaykiUo19l928faf4xPswUsxtYPBBSuIJbJ9H9Fd8Hxyv54mq/cNrNgk5B9+Sdyutn3zWKmOnezeMC8qVaKrgeQX8mss+lsmQ+2TMkHgSURwPEv9549AhAXe8BeRPsACKx3H4hNyKyam9FQ9deWXcv/6e4qRrtnbM9N8YzVm6dBU3QjxBpRN0MWhO0BfaBymfZJjK0oxGMXMAkkqarmuw=="
          }
        },
        "users": {
          "s3_bucket_name": "prod-orcdbucket"
        },
        "route53": {
          "domain_name": "theorchard.io",
          "zone_id": "Z2RSKZ9M7TJ9Z",
          "networking_account_enabled": true
        }
      },
      "unattended_upgrades": {
        "unattended_upgrade": 7,
        "package_blacklist": [
          "neo4j-enterprise",
          "cypher-shell"
        ]
      }
    }
  }
  