Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Epic] Kubernetes Operator Core Functionality Enhancements (PKOv2) #586

Closed
2 of 5 tasks
rquitales opened this issue May 24, 2024 · 80 comments
Closed
2 of 5 tasks

[Epic] Kubernetes Operator Core Functionality Enhancements (PKOv2) #586

rquitales opened this issue May 24, 2024 · 80 comments
Assignees
Labels
kind/engineering Work that is not visible to an external user kind/epic Large new features or investments resolution/fixed This issue was fixed

Comments

@rquitales
Copy link
Member

rquitales commented May 24, 2024

Overview

Usage of the Pulumi Kubernetes Operator (PKO) has high friction due to a number of challenges for users. There are numerous performance enhancements that could be adopted by PKO, metrics and logging can sometimes be lacking as well as multi-tenancy concerns. We believe that targeted investments in this project can improve the user experience for users materially. By strengthening our core functionality, we can confidently embark on more ambitious innovations within PKO in the future.

Effort: 5 eng weeks

Key KPIs

  1. Numerous top-voted enhancement requests can be closed, which pertain to scalability and isolation concerns.
  2. Significantly improved stack reconciliation performance, esp. in use cases involving numerous stacks, long-running or complex stacks, slow-changing dependencies and/or source code, and period reconciliations.
  3. multi-tenancy support within a Kubernetes cluster; stacks are significantly more isolated across namespaces, using a dedicated execution environment, no cross-namespace secret exposure, and non-root execution.

Key Stakeholders

Engineers: @EronWright

Approvers: @mjeffryes

Key Deliverables

  1. An RPC server providing an "automation" API for stack operations.
  2. A Kubernetes operator providing low-level automation primitives - a Workspace to provision an execution environment for a given program, an Update to drive one deployment operation against a given workspace, etc.
  3. A revised Stack operator that use the lower-level primitives to reconcile its stacks. The Stack API may see some changes to accommodate the architecture change.
  4. A new "v2 beta" release of the operator, with supporting materials (blog post, migration guide).

References 📔

@rquitales rquitales added kind/engineering Work that is not visible to an external user kind/epic Large new features or investments labels May 24, 2024
@mjeffryes mjeffryes moved this to 👍 Planned in Pulumi Roadmap 🛣 Jul 3, 2024
@mjeffryes mjeffryes changed the title [Epic] Core Functionality Enhancements [Epic] Kubernetes Operator Core Functionality Enhancements Jul 15, 2024
@EronWright EronWright self-assigned this Jul 17, 2024
@EronWright EronWright changed the title [Epic] Kubernetes Operator Core Functionality Enhancements [Epic] Kubernetes Operator Core Functionality Enhancements (PKOv2) Jul 24, 2024
@cleverguy25
Copy link

Adding item #606

@cleverguy25
Copy link

Adding item #607

@cleverguy25
Copy link

Adding item #606

@cleverguy25
Copy link

Adding item #612

@cleverguy25
Copy link

Adding item #613

@cleverguy25
Copy link

Adding item #573

@cleverguy25
Copy link

Adding item #576

@cleverguy25
Copy link

Adding item #607

@cleverguy25
Copy link

Adding item #608

@cleverguy25
Copy link

Adding item #609

@cleverguy25
Copy link

Adding item #610

@cleverguy25
Copy link

Adding item #611

@cleverguy25
Copy link

Adding item #732

@cleverguy25
Copy link

Adding item #733

@cleverguy25
Copy link

Adding item #582

@cleverguy25
Copy link

Adding item #425

@cleverguy25
Copy link

Adding item #396

@cleverguy25
Copy link

Adding item #393

@cleverguy25
Copy link

Adding item #735

@cleverguy25
Copy link

Adding item #736

@cleverguy25
Copy link

Adding item #737

@cleverguy25
Copy link

Adding item #738

@cleverguy25
Copy link

Adding item #739

@cleverguy25
Copy link

Adding item #740

@EronWright
Copy link
Contributor

This is done and shipped as PKOv2 (v2.0.0-beta.1) and accompanying blog post. We closed approximately a dozen outstanding issues. We reached out to known users of PKO, and were contacted by others, to gather some feedback in preparation for a "GA" release to come soon.

Here's a tracking issue for potential follow-ups:
#734

@cleverguy25 cleverguy25 moved this from ⚙️ In development to 🚀 Shipped in Pulumi Roadmap 🛣 Nov 1, 2024
@EronWright EronWright mentioned this issue Nov 9, 2024
Merged
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/engineering Work that is not visible to an external user kind/epic Large new features or investments resolution/fixed This issue was fixed
Projects
Status: 🚀 Shipped
Development

No branches or pull requests

3 participants