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

Kubernetes Quickstart does not work as written #14696

Open
Tracked by #14162
wsmoak opened this issue Dec 21, 2024 · 2 comments
Open
Tracked by #14162

Kubernetes Quickstart does not work as written #14696

wsmoak opened this issue Dec 21, 2024 · 2 comments
Assignees

Comments

@wsmoak
Copy link

wsmoak commented Dec 21, 2024

Following the instructions on https://docs.pinot.apache.org/basics/getting-started/kubernetes-quickstart

Lead to the error:

Error: INSTALLATION FAILED: rendered manifests contain a resource that already exists. Unable to continue with install: Namespace "pinot-quickstart" in namespace "" exists and cannot be imported into the current release: invalid ownership metadata; label validation error: missing key "[app.kubernetes.io/managed-by](http://app.kubernetes.io/managed-by)": must be set to "Helm"; annotation validation error: missing key "meta.helm.sh/release-name": must be set to "pinot"; annotation validation error: missing key "meta.helm.sh/release-namespace": must be set to "pinot-quickstart"

As discussed in https://apache-pinot.slack.com/archives/C01H1S9J5BJ/p1734789818814929

Fasih Khatib provided the fix:

You'll need to execute the following commands in your terminal after you create the pinot-quickstart namespace to import the namespace into Helm.

export KIND=namespace
export NAME=pinot-quickstart
export RELEASE_NAME=pinot
export NAMESPACE=pinot-quickstart
kubectl annotate $KIND $NAME meta.helm.sh/release-name=$RELEASE_NAME
kubectl annotate $KIND $NAME meta.helm.sh/release-namespace=$NAMESPACE
kubectl label $KIND $NAME [app.kubernetes.io/managed-by=Helm](http://app.kubernetes.io/managed-by=Helm)

Can these things be built into the Helm chart somehow? If not they need to be in the instructions as additional commands to type.

@ledniy
Copy link

ledniy commented Jan 12, 2025

It appears that the file located at https://github.com/apache/pinot/blob/master/helm/pinot/templates/namespace.yaml may be unnecessary. This is because, firstly, it does not function properly with Helm (as there's --create-namespace flag), and secondly, it does not support the use of an existing namespace.

@abhioncbr abhioncbr self-assigned this Jan 13, 2025
@abhioncbr
Copy link
Contributor

Assigning to myself for a fix.

subhashini-26 added a commit to mercedes-benz/pinot that referenced this issue Jan 30, 2025
This bugfix fixes the issue with apache#14696

According to the documentation for installation of Pinot in k8s using helm charts (https://docs.pinot.apache.org/basics/getting-started/kubernetes-quickstart#start-pinot-with-helm), the namespace is created manually. This creates a conflict with the namespace.yaml present in the templates, leading to failure of deployment.

Signed-off-by: Subhashini Narayanaswamy  <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants