From 65296518a68ade4f3e4346e37fc0d9e3b5e9dd91 Mon Sep 17 00:00:00 2001 From: Tom Barron Date: Thu, 12 Sep 2019 15:50:10 -0400 Subject: [PATCH] Add Designate investment opportunity for 2019 Rework the 2018 entry for Designate Contributors into the new "Upstream Investment Opportunity" format and add it to the 2019 list. Change-Id: Ibec91e24a60c2151df4d1c51035e885059898d3e --- .../2019/designate.rst | 130 ++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 reference/upstream-investment-opportunities/2019/designate.rst diff --git a/reference/upstream-investment-opportunities/2019/designate.rst b/reference/upstream-investment-opportunities/2019/designate.rst new file mode 100644 index 000000000..368c4c4d1 --- /dev/null +++ b/reference/upstream-investment-opportunities/2019/designate.rst @@ -0,0 +1,130 @@ +====================== +Designate Contributors +====================== + +Summary +------- + +The OpenStack community is seeking contributors and maintainers for +`Designate`_, an OpenStack project that provides self-service +management of DNS Zones and Recordsets by OpenStack end users. + +Contributors will help find and fix bugs, develop new features, and +help maintain the quality of the project, including cross-project +initiatives. Designate is quite stable, with any new features +requiring long term planning, design, and phased implementation. + +Business Case +------------- + +Sponsorship of contributors to Designate presents a great opportunity +for an organization to gain in-house familiarity with large scale, +self-service DNS as a service as an alternative to complex ticket +based workflows for DNS updates. + +Additionally, organizations with in-house DNS expertise can bring it +to bear on the challenges of the upstream project and thereby gain +exposure to, and establish a reputation with, the OpenStack +development community and the OpenStack operator community, as well as +other organizations who distribute or use OpenStack downstream. + +And of course contributors to the project have a seat at the table as +decisions are made about future Designate feature development, +priorities, and the like. + +Designate welcomes everyone, from someone starting in the community to +senior contributors who want new, interesting problems to +tackle. Contributors will get to work on a project that will be a +central part of any OpenStack deployment and work on a project that +needs to scale from a small single node install to a system +controlling DNS servers worldwide. + +Technical Details +----------------- + +DNS is of course fundamental in gracefully directing users and +applications to services. Designate is a service that manages DNS Zones +and Recordsets and the provides end users self-service management of +these. Designate is vital for any network or web-based application in +a self-service infrastructure cloud. + +Flexibility +~~~~~~~~~~~ + +Designate allows the flexibility to replace underlying hardware while +presenting consumers with a consistent endpoint with an abstraction +layer over a wide range of drivers for various `DNS servers`_ and +providers. This allows deployers to integrate Designate into +pre-existing DNS infrastructures. + +Self-Service +~~~~~~~~~~~~ + +Self-serviceability is a core tenet of OpenStack `technical +vision`_. Designate helps OpenStack clouds adhere to that principle by +exposing DNS functionality directly to end-users. Designate allows +cloud operators to delegate the control of DNS zones to end users, to +avoid complex ticket based workflows for DNS updates. + + +User Experience +--------------- + +When end users are building applications in a cloud native way, +relying on external tooling to provision DNS entries adds +complexity. With the advancement of IPv6, services required to have +DNS entries, to avoid application user confusion. + +Designate adds an important part of the value add for cloud +infrastructure, and ensures that OpenStack has feature parity with +other cloud providers. + + +Integrations +------------ + +Designate integrates with many other tools to allow for zero touch +management of DNS Zones and Records. The integration with neutron +allows admins to have PTR records (for reverse DNS lookups) managed +for Floating IP ranges, without giving direct privileged access to the +reverse zone to users. + +Tools like `letsencrypt certbot`_ allow for auto provisioning of SSL +certs using DNS-01 validation, while tools like `Heat`_, `Terraform`_ +and `Ansible`_ allow for the provisioning of DNS Zones and Records to +be integrated into pre-existing workflows for applications. + +Kubernetes `external-dns`_ support adds simple annotation based DNS +management for applications running in kubernetes clusters with load +balancers or ingress support. + +Consistency +~~~~~~~~~~~ + +The OpenStack community continues to evolve, and this evolution +requires large cross-project initiatives. Furthermore, users and +operators expect consistency across the OpenStack platform. Examples +from recent history include OpenStack-wide support for `Python 3`_ and +easing operator pain by moving `policy configuration`_ into +code. Ensuring Designate stays up-to-date with these initiatives is +imperative in reducing operational costs, complexity, and user +frustration. + +Contact +------- + +Please join the Designate IRC channel (``#openstack-dns`` on `Freenode +`_) or follow up on the OpenStack-discuss +`mailing list`_ using the ``[designate]`` tag in the subject line. + +.. _`Designate`: https://governance.openstack.org/tc/reference/projects/designate.html +.. _`DNS servers`: https://docs.openstack.org/designate/latest/admin/support-matrix.html +.. _`technical vision`: https://governance.openstack.org/tc/reference/technical-vision.html +.. _`letsencrypt certbot` : https://pypi.org/project/certbot-dns-openstack/ +.. _`Heat`: https://docs.openstack.org/heat/rocky/template_guide/openstack.html#OS::Designate::RecordSet +.. _`Terraform`: https://www.terraform.io/docs/providers/openstack/r/dns_recordset_v2.html +.. _`Ansible`: https://docs.ansible.com/ansible/latest/modules/os_zone_module.html#os-zone-module +.. _`external-dns`: https://github.com/kubernetes-incubator/external-dns +.. _`Python 3`: https://governance.openstack.org/tc/goals/stein/python3-first.html +.. _`policy configuration`: https://governance.openstack.org/tc/goals/queens/policy-in-code.html +.. _`mailing list`: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-discuss