alexellis / arkade

Open Source Marketplace For Developer Tools

Home Page:https://blog.alexellis.io/kubernetes-marketplace-two-year-update/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Minio chart deprecated

elyesbenamor opened this issue · comments

Expected Behaviour

Based on the arkade documentation, installing minio application will invoke
ark install minio
and the behaviour would be installing minio in the default namespace.

Current Behaviour

Invoking ark install minio led to this issue

Node architecture: "amd64"
Access Key not provided, one will be generated for you
Secret Key not provided, one will be generated for you
Using Kubeconfig: /root/.kube/config
[Warning] unable to create namespace default, may already exist: Error from server (AlreadyExists): namespaces "default" already exists
Client: x86_64, Linux
2024/01/07 14:41:16 User dir established as: /root/.arkade/
Error: looks like "https://helm.min.io/" is not a valid chart repository or cannot be reached: Get "https://helm.min.io/index.yaml": dial tcp: lookup helm.min.io on xxxxx: no such host
Error: looks like "https://helm.min.io/" is not a valid chart repository or cannot be reached: Get "https://helm.min.io/index.yaml": dial tcp: lookup helm.min.io on xxxxx:53: no such host

Error: exit code 1

I tried to install it manually using simple helm command didn't work either
helm repo add minio https://helm.min.io/

helm repo add minio https://helm.min.io/
Error: looks like "https://helm.min.io/" is not a valid chart repository or cannot be reached: Get "https://helm.min.io/index.yaml": dial tcp: lookup helm.min.io on 172.30.80.1:53: no such host

Possible Solution

Updated the minio chart repository to point to https://charts.bitnami.com/bitnami
Builded the arkade binary again and installed the minio app.
go build
./arkade install minio

./arkade install minio
Node architecture: "amd64"
Access Key not provided, one will be generated for you
Secret Key not provided, one will be generated for you
Using Kubeconfig: /root/.kube/config
[Warning] unable to create namespace default, may already exist: Error from server (AlreadyExists): namespaces "default" already exists
Client: x86_64, Linux
2024/01/07 14:44:11 User dir established as: /root/.arkade/
"minio" has been added to your repositories

Hang tight while we grab the latest from your chart repositories...
...Unable to get an update from the "truecharts" chart repository (https://charts.truecharts.org/):
        Get "https://charts.truecharts.org/index.yaml": tls: failed to verify certificate: x509: certificate is valid for *.github.io, github.io, *.github.com, github.com, www.github.com, *.githubusercontent.com, githubusercontent.com, not charts.truecharts.org
...Successfully got an update from the "metallb" chart repository
...Successfully got an update from the "portainer" chart repository
...Successfully got an update from the "trivy-operator" chart repository
...Successfully got an update from the "openebs" chart repository
...Successfully got an update from the "ingress-nginx" chart repository
...Successfully got an update from the "aqua" chart repository
...Successfully got an update from the "litmuschaos" chart repository
...Successfully got an update from the "vault-raft-snapshot-agent" chart repository
...Successfully got an update from the "klustair" chart repository
...Successfully got an update from the "harbor" chart repository
...Successfully got an update from the "netdata" chart repository
...Successfully got an update from the "cert-manager" chart repository
...Successfully got an update from the "signoz" chart repository
...Successfully got an update from the "openfaas" chart repository
...Successfully got an update from the "stakater" chart repository
...Successfully got an update from the "nicholaswilde" chart repository
...Successfully got an update from the "gabe565" chart repository
...Successfully got an update from the "grafana" chart repository
...Successfully got an update from the "prometheus-community" chart repository
...Successfully got an update from the "minio" chart repository
...Successfully got an update from the "bitnami" chart repository
Update Complete. ⎈Happy Helming!⎈

VALUES values.yaml
Command: /root/.arkade/bin/helm [upgrade --install minio minio/minio --namespace default --values /tmp/charts/minio/values.yaml --set secretKey=Dmn16/OygKW2yc6+d3QKm6jNUt9aewE7N++r+9V2 --set persistence.enabled=false --set accessKey=03yIAJ2484jPw4NaZ202]
Release "minio" has been upgraded. Happy Helming!
NAME: minio
LAST DEPLOYED: Sun Jan  7 14:44:18 2024
NAMESPACE: default
STATUS: deployed
REVISION: 2
TEST SUITE: None
NOTES:
CHART NAME: minio
CHART VERSION: 12.12.2
APP VERSION: 2023.12.23

** Please be patient while the chart is being deployed **

MinIO® can be accessed via port  on the following DNS name from within your cluster:

   minio.default.svc.cluster.local

To get your credentials run:

   export ROOT_USER=$(kubectl get secret --namespace default minio -o jsonpath="{.data.root-user}" | base64 -d)
   export ROOT_PASSWORD=$(kubectl get secret --namespace default minio -o jsonpath="{.data.root-password}" | base64 -d)

To connect to your MinIO® server using a client:

- Run a MinIO® Client pod and append the desired command (e.g. 'admin info'):

   kubectl run --namespace default minio-client \
     --rm --tty -i --restart='Never' \
     --env MINIO_SERVER_ROOT_USER=$ROOT_USER \
     --env MINIO_SERVER_ROOT_PASSWORD=$ROOT_PASSWORD \
     --env MINIO_SERVER_HOST=minio \
     --image docker.io/bitnami/minio-client:2023.12.23-debian-11-r1 -- admin info minio

To access the MinIO® web UI:

- Get the MinIO® URL:

   echo "MinIO® web URL: http://127.0.0.1:9001/minio"
   kubectl port-forward --namespace default svc/minio 9001:9001
=======================================================================
= Minio has been installed.                                           =
=======================================================================

# Forward the minio port to your machine
kubectl port-forward -n default svc/minio 9000:9000 &

# Get the access and secret key to gain access to minio
ACCESSKEY=$(kubectl get secret -n default minio -o jsonpath="{.data.accesskey}" | base64 --decode; echo)
SECRETKEY=$(kubectl get secret -n default minio -o jsonpath="{.data.secretkey}" | base64 --decode; echo)

# Get the Minio Client
arkade get mc

# Add a host
mc config host add minio http://127.0.0.1:9000 $ACCESSKEY $SECRETKEY

# List buckets
mc ls minio

# Find out more at: https://min.io

🚀 Speed up GitHub Actions/GitLab CI + reduce costs: https://actuated.dev

Steps to Reproduce (for bugs)

  1. ark install minio

Context

Your Environment

  • What Kubernetes distribution are you using?
kubectl v1.28.4
  • Operating System and version (e.g. Linux, Windows, MacOS):
Linux xxxxx 5.15.133.1-microsoft-standard-WSL2 #1 SMP Thu Oct 5 21:02:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

PRETTY_NAME="Ubuntu 22.04.3 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
  • What arkade version is this?
arkade Version: 0.10.20

@alexellis can we speed up this fix?

Is there no upstream chart?

https://min.io/docs/minio/kubernetes/upstream/operations/install-deploy-manage/deploy-operator-helm.html

This is for the operator, but do they have an alternative for a more stand-alone installation, or is bitnami the only option for that now?

First and I quote

The minio-operator/minio-operator is a legacy chart and should not be installed under normal circumstances.

Second only Bitnami now support the full minio installation features.

As described above I used the normal arkade installation for minio, and it failed, after investigation the chart used is no longer available.

Given the changes Minio has made (we don't maintain and are not affiliated with Minio Inc) - if someone wants to contribute an update to arkade to switch to Bitnami's distribution of Minio I am fine with that.

Otherwise, feel free to install Bitnami's chart manually without arkade: https://github.com/bitnami/charts/tree/main/bitnami/minio

@nitishkumar71 do you have time to try and convert this over to the Bitnami chart? There may be different parameters to consider vs the older chart which apparently has been deleted now so have a think about how to map things and whether they exist in the new chart.

I am updating a course on arkade for the Linux Foundation and ran into this very issue. I am looking for clarification on when or whether this issue might be resolved.

@nitishkumar71 do you have time to try and convert this over to the Bitnami chart? There may be different parameters to consider vs the older chart which apparently has been deleted now so have a think about how to map things and whether they exist in the new chart.

Sure, I will start looking into this.

I am updating a course on arkade for the Linux Foundation and ran into this very issue. I am looking for clarification on when or whether this issue might be resolved.

I would start looking into this and will try to finish asap.

Hi @eeganlf could you try out the change from @nitishkumar71 ?

https://github.com/alexellis/arkade/releases/tag/0.11.9

arkade update should get the newest version for you, or if you're not on Linux, you can download a newer version from the releases page.

@alexellis works great, thanks!

Glad to hear it @eeganlf

/lock: resolved