Helm Chart not deploying correctly

10/18/2018

I'm starting with kubernetes and helm using minikube.

I would like to install Jira but it seems that I'm doing something wrong because I can't get any IP from the deployed service.


This is what I did :

1) Downloaded the Chart for Jira from this repository

2) Next I pakaged the Chart using

helm package .

Which created a .tar.gz file.

3) Then I installed the Chart in the following way :

helm install xxxx.tar.gz --name my-jira

I got the following output :

STATUS: DEPLOYED

RESOURCES:
==> v1/PersistentVolumeClaim
NAME                                  AGE
my-jira-atlassian-jira-software  1s

==> v1/Service
my-jira-atlassian-jira-software  1s

==> v1beta2/Deployment
my-jira-atlassian-jira-software  1s

==> v1/Pod(related)

NAME                                                   READY  STATUS    
RESTARTS  AGE
jira-atlassian-jira-software-7d55dc5859-cvwnj  0/1    Init:0/1  0         
1s


NOTES:
Atlassian JIRA Software is starting now.
It takes a few minutes to bootstrap a container.
1. Get the JIRA URL by running:
 export POD_NAME=$(kubectl get pods -n default -l "app=atlassian-jira-software,release=my-jira" -o jsonpath="{.items[0].metadata.name}")
 echo https://127.0.0.1:80/
 kubectl -n default port-forward $POD_NAME 8443:8443

2. Proceed the Setup Wizard.
   See also: https://confluence.atlassian.com/adminjiraserver/running-the-setup-wizard-938846872.html

4) Finally I expected that doing :

 minikube service my-jira-atlassian-jira-software --url

...would give me the ip of the service created by minikube.

Unfortunatly the command returns nothing and the perfomance tab seems to indicate that nothing is happening :-/


Any idears of what I'm doing wrong ?

-- Doctor
jira
kubernetes
kubernetes-helm
minikube

1 Answer

10/19/2018

I've tested this on in my lab environment. So the steps to fix it are:

0) kubectl get services --all-namespaces -o wide you can see that the Jira service is a ClusterIP which is the reason why you can't reach the configuration web page.

ClusterIP: Exposes the service on a cluster-internal IP. Choosing this value makes the service only reachable from within the cluster. This is the default ServiceType.

1) Apply the yaml file below for running cluster.

apiVersion: v1 kind: Service metadata: creationTimestamp: null labels: app: atlassian-jira-software chart: atlassian-jira-software-0.1.0 heritage: Tiller release: my-jira name: my-jira-atlassian-jira-software spec: ports: - name: http port: 8080 protocol: TCP targetPort: http selector: app: atlassian-jira-software release: my-jira sessionAffinity: None type: NodePort

You can also change ClusterIP to NodePort in the values.yaml in the devops-kompose config files.

2) Run: minikube service my-jira-atlassian-jira-software --url and you will see the address where you can reach your application.

Reason for that is because minikube has been created for testing purposes. The minikube VM is exposed to the host system via a host-only IP address. Another way of solving this issue would be to configure Ingress.

-- aurelius
Source: StackOverflow