[ https://issues.apache.org/jira/browse/STORM-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14990433#comment-14990433 ]
ASF GitHub Bot commented on STORM-885: -------------------------------------- Github user revans2 commented on a diff in the pull request: https://github.com/apache/storm/pull/838#discussion_r43940262 --- Diff: storm-core/src/jvm/backtype/storm/Config.java --- @@ -752,6 +759,54 @@ public static final String UI_HTTPS_NEED_CLIENT_AUTH = "ui.https.need.client.auth"; /** + * The host that Pacemaker is running on. + */ + @isString + public static final String PACEMAKER_HOST = "pacemaker.host"; + + /** + * The port Pacemaker should run on. Clients should + * connect to this port to submit or read heartbeats. + */ + @isNumber + @isPositiveNumber + public static final String PACEMAKER_PORT = "pacemaker.port"; + + /** + * The maximum number of threads that should be used by the Pacemaker. + * When Pacemaker gets loaded it will spawn new threads, up to + * this many total, to handle the load. + */ + @isNumber + @isPositiveNumber + public static final String PACEMAKER_MAX_THREADS = "pacemaker.max.threads"; + + /** + * This parameter is used by the storm-deploy project to configure the + * jvm options for the nimbus daemon. + */ + @isString + public static final String PACEMAKER_CHILDOPTS = "pacemaker.childopts"; + + /** + * This should be one of "DIGEST", "KERBEROS", or "NONE" + * Determines the mode of authentication the pacemaker server and client use. + * The client must either match the server, or be NONE. In the case of NONE, + * no authentication is performed for the client, and if the server is running with + * DIGEST or KERBEROS, the client can only write to the server (no reads). + * This is intended to provide a primitive form of access-control. + */ + @isString + public static final String PACEMAKER_AUTH_METHOD = "pacemaker.auth.method"; + + /** + * These are the kerberos users who are authorized to read hearbeats from + * Pacemaker. + */ + @isStringList + public static final String PACEMAKER_KERBEROS_USERS = "pacemaker.kerberos.users"; --- End diff -- Could we please rename this? We already have configs that indicate who the supervisors are running as, and who admins are, I really would prefer to see a config that indicates who nimbus is running as so it can be shared with other things in the future, if we ever need them. I would also like to see the authentication code refactored to look more like what the regular thrift auth does with the request context and a pluggable authorization mechanism. I don't see a reason to do it here, if the code already works, but I would like to see it in a follow on JIRA. > Heartbeat Server (Pacemaker) > ---------------------------- > > Key: STORM-885 > URL: https://issues.apache.org/jira/browse/STORM-885 > Project: Apache Storm > Issue Type: Improvement > Components: storm-core > Reporter: Robert Joseph Evans > Assignee: Kyle Nusbaum > > Large highly connected topologies and large clusters write a lot of data into > ZooKeeper. The heartbeats, that make up the majority of this data, do not > need to be persisted to disk. Pacemaker is intended to be a secure > replacement for storing the heartbeats without changing anything within the > heartbeats. In the future as more metrics are added in, we may want to look > into switching it over to look more like Heron, where a metrics server is > running for each node/topology. And can be used to aggregate/per-aggregate > them in a more scalable manor. -- This message was sent by Atlassian JIRA (v6.3.4#6332)