Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • Kea Kea
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 504
    • Issues 504
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 52
    • Merge requests 52
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • ISC Open Source Projects
  • KeaKea
  • Issues
  • #1790

Closed
Open
Created Mar 31, 2021 by Bertrand Buclin@bbuclin

[ISC-support #18162] Configuration Backend and map parameters

name: Feature request
about: Configuration backend and map parameters

Some initial questions

  • Are you sure your feature is not already implemented in the latest Kea version? yes
  • Are you sure what you would like to do is not possible using some other mechanisms? yes
  • Have you discussed your idea on kea-users or kea-dev mailing lists? yes

Is your feature request related to a problem? Please describe. The configuration backend hook allows to put server parameters to the configuration database, but does not allow to put complex parameters/maps. For example, it would be great to be able to put the expired-leases-processing map in the database, particularly as its “semantics” apply to all the servers that share the same configuration items like subnets and shared networks. Enhancing the “global-parameter[46]-set” API parameters to allow maps would be a great addition.

Describe the solution you'd like Enhance the remote-parameter[46]-set API parameter set to allow including maps so that, for example, the following API call would be a legitimate one:

{"command": "remote-global-parameter6-set"
 "arguments": {
        "parameters": {
            "t1-percent": 0.85,
            "renew-timer": 43200,
            "expired-leases-processing": {
		"reclaim-timer-wait-time": 600,
		"flush-reclaimed-timer-wait-time": 4320,
		"hold-reclaimed-time": 17280,
		"max-reclaim-leases": 100,
		"max-reclaim-time": 9999,
		"unwarned-reclaim-cycles": 5
	    }
        },
        "remote": {"type": "mysql"}, "server-tags": [ "all" ] 
    }
}

Describe alternatives you've considered Leave the parameters in the individual server config files, but that makes it painful to update the parameters across all servers.

Additional context Other parameter maps could be considered, such as the dhcp-ddns one.

Funding its development Kea is run by ISC, which is a small non-profit organization without any government funding or any permanent sponsorship organizations. Are you able and willing to participate financially in the development costs? This is a fairly minor development, I'd imagine... we are indirectly contributing by being paying subscriber :)

Participating in development Are you willing to participate in the feature development? ISC team always tries to make a feature as generic as possible, so it can be used in wide variety of situations. That means the proposed solution may be a bit different that you initially thought. Are you willing to take part in the design discussions? Are you willing to test an unreleased engineering code? Sure.

Contacting you How can ISC reach you to discuss this matter further? If you do not specify any means such as e-mail, jabber id or a telephone, we may send you a message on github with questions when we have them.

You can reach me too on bbuclin@att.com

Edited May 25, 2022 by Razvan Becheriu
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking