Can't install ingress-merge with Helm - kubernetes

Following the install instructions I can not install "ingress-merge".
I first tried :
helm install --namespace kube-system --name ingress-merge ./helm
That gave me the error - "Error: unknown flag: --name"
I searched that issue up and found out that the --name flag is no longer needed.
I next tried the following:
helm install ingress-merge --namespace kube-system ./helm
That gave me the error - Error: path "./helm" not found
I then took out the ./helm:
helm install ingress-merge --namespace kube-system
That gave me the error - Error: must either provide a name or specify --generate-name
What is the correct command structure?
Here is the link with the install instructions:
https://github.com/jakubkulhan/ingress-merge

First clone the git repo
git clone https://github.com/jakubkulhan/ingress-merge.git
Then use below command with helm 3. Notice --name is not needed with helm 3
helm install --namespace kube-system ingress-merge ingress-merge/helm
or below command with helm 2
helm install --namespace kube-system --name ingress-merge ingress-merge/helm

Related

AKS nginx-ingress controller ACR

I'm unable to install the nginx ingress controller on AKS.Since I'm using userDefinedRouting as outboundType for egress when running
helm install nginx-ingress nginx-stable/nginx-ingress -n ingress --set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-internal"='"true"' --set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-internal-subnet"=x-x-x-aks-ingress-sub01 --set controller.service.loadBalancerIP="10.240.137.40" i can see that it failed to download the image because the root CA is not on the worker node and hence is unable to verify the SSL certificate. This is actually good and I've uploaded the nginx image to my ACR:
docker pull nginx docker tag nginx/nginx-ingress:2.2.2 nameofacr.azurecr.io/hub/nginx/nginx-ingress:2.2.2 and docker push nameofacr.azurecr.io/hub/nginx/nginx-ingress:2.2.2. If it look in the values.yaml file I see this:
values.yaml I've followed how to - helm install using private registry and think that I've added the tag as required but I can't figure out how to run the command now so that it will pull the image from my ACR.
What I've tried:
helm install nginx-ingress nameofacr.azurecr.io/hub/nginx/nginx-ingress -n ingress --set controller.service.annotations."service\.beta\ .kubernetes\.io/azure-load-balancer-internal"='"true"' --set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-internal-subnet"=x-x-x-x-aks-ingress-sub01 --set contro ller.service.loadBalancerIP="10.240.137.40"
failed with Error: INSTALLATION FAILED: failed to download "nameofacr.azurecr.io/hub/nginx/nginx-ingress"
or
helm install nginx-ingress --set Image=nameofacr.azurecr.io nginx/nginx-ingress -n ingress --set controller.service.annotations."servi ce\.beta\.kubernetes\.io/azure-load-balancer-internal"='"true"' --set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-internal-subnet"=x-x-x-x-aks-ingress-sub01 --s et controller.service.loadBalancerIP="10.240.137.40" resulted in Error: INSTALLATION FAILED: failed to download "nginx/nginx-ingress"
I can't get this to work. Any help please?
Use this chart : ingress-nginx/ingress-nginx. You have an official documentation that explain how to import images to private ACR.
You can use this commands to import images :
az acr import --name nameofacr --source k8s.gcr.io/ingress-nginx/controller:v1.2.1 --force
az acr import --name nameofacr --source k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.1.1 --force
Also try to fix the helm chart version helm install nginx-ingress ingress-nginx/ingress-nginx --version 4.1.3, to be sure you use the images related to a specific values.yaml.

Trying to install Kong using the Helm chart

Trying to install Kong using the Helm chart using the following command using this post
>helm install --version 0.26.1 --name kong stable/kong --namespace kong --set ingressController.enabled=true --set image.tag=1.4 --set admin.useTLS=false
But getting the following error
Error: unknown flag: --name
Solution I tried
Removed -- name then I am getting the following error
Error: failed to download "stable/kong" (hint: running helm repo update may help)
Can anyone please help me with this?
In helm version 3 --name flag is removed. You can give a name without --name flag as shown below
helm repo add kong https://charts.konghq.com
helm repo update
helm install --version 1.7.0 kong kong/kong --namespace kong --set ingressController.enabled=true --set image.tag=1.4 --set admin.useTLS=false
Find more details here

Helm upgrade command fails for no apparent reason

I want to perform a helm upgrade on a GKE k8s cluster.
I am executing the following command
helm upgrade --force --tls --install --set master.installPlugins=[u'kubernetes:1.21.2', u'workflow-job:2.36', u'workflow-aggregator:2.6', u'credentials-binding:1.20', u'git:4.0.0'] --set master.tag=lts --set agent.tag=3.27-1 -f /org_files/tmp/kerkyra-jenkins/jenkins-values.yaml --namespace jenkins my-jenkins stable/jenkins
However it fails with the following name:
Error: This command needs 2 arguments: release name, chart path
I do pass at the end of the command however both
release name: my-jenkins
chart path: stable/jenkins
Why is it failing?
Assuming you're using helm3 it requires the 2 arguments before the flags.
Error: "helm upgrade" requires 2 arguments
Usage: helm upgrade [RELEASE] [CHART] [flags]
So this should then work:
helm upgrade my-jenkins stable/jenkins --force --tls --install --set master.installPlugins=[u'kubernetes:1.21.2', u'workflow-job:2.36', u'workflow-aggregator:2.6', u'credentials-binding:1.20', u'git:4.0.0'] --set master.tag=lts --set agent.tag=3.27-1 -f /org_files/tmp/kerkyra-jenkins/jenkins-values.yaml --namespace jenkins
Update: Should be the same for helm 2

Simple Getting Started Istio Helm Install

I'm trying to follow either of the following instructions:
https://istio.io/docs/setup/kubernetes/helm-install/
https://github.com/istio/istio/tree/master/install/kubernetes/helm/istio
~ helm repo add istio.io https://storage.googleapis.com/istio-prerelease/daily-build/master-latest-daily/charts
~ helm repo list
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
local http://127.0.0.1:8879/charts
istio.io https://storage.googleapis.com/istio-prerelease/daily-build/master-latest-daily/charts
~ helm repo update
~ helm install install/kubernetes/helm/istio --name istio --namespace istio-system
Error: failed to download "install/kubernetes/helm/istio" (hint: running `helm repo update` may help)
~ helm dependency update install/kubernetes/helm/istio
Error: could not find <current directory>/install/kubernetes/helm/istio: stat
<current directory>/install/kubernetes/helm/istio: no such file or directory
To answer my own question for anyone else with the same issue:
Don't use the public helm repo.
Download a release archive from:
https://github.com/istio/istio/releases
Unpack it, navigate into the istio root directory, then you can successfully do:
Helm 2.x syntax:
helm install install/kubernetes/helm/istio --name istio --namespace istio-system
Helm 3.x syntax:
helm install istio install/kubernetes/helm/istio --namespace istio-system

Tiller is installed but not found by Helm

Background
I have kubernetes installed in clustered mode.
All nodes are up and running
I want to use jenkins-x to get ease of deployment.
Now jenkins-x uses Helm to do this job; Helm comes up with client and server architecture.
Helm setup can be achieved by following two ways:-
Using jenkins-x
jx install --username <username>
Standalone Helm
helm init
This helps to setup itsserver (Tiller), by putting it in pod of Kubernetes.
Whats issue
The issue is when I use first approach it does Tiller installation and later get failed by saying 'Tiller is available but not up and running'.
Created ClusterRoleBinding tiller
retrying after error:existing tiller deployment found but not running, please check the kube-system namespace and resolve any issues
Second approach also gets fail in similar path
It also does the Tiller installation but it does not find Tiller when I'm trying to list it.
helm ls
Error: could not find tiller
So essence of issue is :
It does Tiller installation but fails it in finding later.
helm init
Warning: Tiller is already installed in the cluster.
helm ls
Error: could not find tiller
I just went ahead and installed both helm and Jx with no problem. So, I don't know how to resolve your issue, but you can install it as below, and should work.
Installing Helm:
$ wget https://kubernetes-helm.storage.googleapis.com/helm-v2.9.1-linux-amd64.tar.gz
$ tar xzvf helm-v2.9.1-linux-amd64.tar.gz
$ cd linux-amd64/
$ sudo cp helm /usr/local/bin/helm
$ helm init
Installing Jx
$ curl -L https://github.com/jenkins-x/jx/releases/download/v1.2.98/jx-linux-amd64.tar.gz | tar xzv
$ sudo mv jx /usr/local/bin
Making Tiller cluster-admin role:
$ kubectl create clusterrolebinding tiller-cluster-admin \
--clusterrole=cluster-admin \
--serviceaccount=kube-system:default
Checking it works:
$ helm install --name prometheus stable/prometheus
$ helm ls
prometheus 1 Sun Jun 3 09:47:12 2018 DEPLOYED prometheus-6.7.0 default
there may be a problem with the tiller pod starting either due to resources or RBAC. Try these commands:
kubectl get deploy -n kube-system
kubectl get node -n kube-system
that might give more of a clue. If you can find a tiller pod thats failing mabe
kubectl describe pod tiller-1234 -n kube-system