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

feat: kubernetes integration #1868

Open
oben01 opened this issue Jan 5, 2025 · 0 comments · May be fixed by #1929
Open

feat: kubernetes integration #1868

oben01 opened this issue Jan 5, 2025 · 0 comments · May be fixed by #1929
Assignees

Comments

@oben01
Copy link
Member

oben01 commented Jan 5, 2025

Describe the feature you'd like to request

I’d like to propose a new feature for Homarr: Kubernetes Integration. This feature would enable Homarr to interact with Kubernetes clusters and display cluster information in a read-only mode in the first iteration. Below are the details of how this could be implemented and the tools required.

Objective:

  • Enable Homarr to interact with Kubernetes clusters in a secure and minimal way.
  • Provide a dashboard-like view to display cluster information (e.g., Pods, Services, Deployments) in a read-only mode during the first iteration.

Helm Chart :

To access the Kubernetes API, we need to configure specific Kubernetes resources.

apiVersion: v1
kind: ServiceAccount
metadata:
  name: homarr-sa
  namespace: homarr
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: homarr
  name: homarr-role
rules:
  - apiGroups: [""]
    resources: ["pods", "services", "deployments"] # Adjustable based on needs
    verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: homarr-rolebinding
  namespace: default
subjects:
  - kind: ServiceAccount
    name: homarr-sa
    namespace: homarr
roleRef:
  kind: Role
  name:homarr-role
  apiGroup: rbac.authorization.k8s.io

Homarr :

  • Add kubernetes-client as a dependency for communication with Kubernetes APIs.
  • Use tools like kind/minikube for local testing and cluster emulation.
  • Leverage development tools like skaffold or telepresence to proxy traffic between the local development environment and the Kubernetes cluster.

Questions for Discussion:

  1. Do you see any limitations or risks in this approach, especially regarding permissions or dependencies?

  2. Should we consider additional features or integrations for future iterations, such as write operations or monitoring metrics?

  3. Would this feature align with Homarr’s long-term roadmap, and are there any alternative approaches you’d suggest?

Looking forward to your thoughts and feedback!

(Edit by maintainer)
Reference to old issue ajnart/homarr#1421

@oben01 oben01 self-assigned this Jan 5, 2025
@oben01 oben01 linked a pull request Jan 12, 2025 that will close this issue
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant