Use Cryostat Operator for JFR of application deployed on Kubernetes cluster of Azure cloud

148 views
Skip to first unread message

Nitin Ghuge

unread,
Oct 11, 2021, 2:43:52 AM10/11/21
to Cryostat Development List
Hi,

              I am planning to generate JFR of application deployed on Kubernetes cluster in Azure cloud using Cryostat Operator. In tutorial I found its use on openshift. Can I generate JFR of application hosted on kubernetes cluster of Azure cloud using Cryostat operator? What changes do I need to make for this?

              Thanks for your time and help.

Regards,
Nitin

Elliott Baron

unread,
Oct 14, 2021, 12:28:14 PM10/14/21
to Nitin Ghuge, Cryostat Development List
Hi Nitin,

On 2021-10-11 2:43 a.m., Nitin Ghuge wrote:
> Hi,
>
>               I am planning to generate JFR of application deployed on
> Kubernetes cluster in Azure cloud using Cryostat Operator. In tutorial I
> found its use on openshift. Can I generate JFR of application hosted on
> kubernetes cluster of Azure cloud using Cryostat operator? What changes
> do I need to make for this?

While I haven't tried using Azure specifically, we have tested the
operator on Kubernetes 1.19+ using Minikube. The main difference from an
installation perspective is that you will need to manually specify the
Ingress configuration for Cryostat's services when running in Kubernetes.

To install:

1. Install cert-manager, if it's not already installed in your cluster:
> $ kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.5.4/cert-manager.yaml

2. Install the Cryostat Operator:
> $ kubectl create namespace cryostat-operator-system
> $ kubectl apply -k github.com/cryostatio/cryostat-operator//config/default?ref=v1.0.0

3. Create the Cryostat custom resource (replace host values
'testing.cryostat', 'testing.cryostat-command' and
'testing.cryostat-grafana' with hostnames that route to your own cluster):
> $ cat << 'EOF' | kubectl create -f -
> apiVersion: operator.cryostat.io/v1beta1
> kind: Cryostat
> metadata:
> name: cryostat-sample
> spec:
> minimal: false
> networkOptions:
> coreConfig:
> annotations:
> nginx.ingress.kubernetes.io/backend-protocol : HTTPS
> ingressSpec:
> tls:
> - {}
> rules:
> - host: testing.cryostat
> http:
> paths:
> - path: /
> pathType: Prefix
> backend:
> service:
> name: cryostat-sample
> port:
> number: 8181
> commandConfig:
> annotations:
> nginx.ingress.kubernetes.io/backend-protocol : HTTPS
> ingressSpec:
> tls:
> - {}
> rules:
> - host: testing.cryostat-command
> http:
> paths:
> - path: /
> pathType: Prefix
> backend:
> service:
> name: cryostat-sample-command
> port:
> number: 9090
> grafanaConfig:
> annotations:
> nginx.ingress.kubernetes.io/backend-protocol : HTTPS
> ingressSpec:
> tls:
> - {}
> rules:
> - host: testing.cryostat-grafana
> http:
> paths:
> - path: /
> pathType: Prefix
> backend:
> service:
> name: cryostat-sample-grafana
> port:
> number: 3000
> EOF

Hope this helps.

Thanks,
Elliott

Nitin Ghuge

unread,
Nov 12, 2021, 1:27:14 PM11/12/21
to Cryostat Development List
Hi,

    I am working on JFR generation of application deployed on Azure Kubernetes cluster environment.
    I am trying to setup Cryostat operator using below command. I am trying to setup it on my own namespace "abcd" because my existing application is well established within this namespace.

kubectl --kubeconfig=/c/Users/.kube/kubeconfig -n abcd apply --namespace=abcd -k 'github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0'

    But above command is failing due to customized namespace. Below is the response of command.

***********************************************************************************************************   
    
customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io configured
customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io configured
customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io configured
clusterrole.rbac.authorization.k8s.io/cryostat-operator-cryostat configured
clusterrole.rbac.authorization.k8s.io/cryostat-operator-role configured
clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding unchanged
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.
the namespace from the provided object "cryostat-operator-system" does not match the namespace "abcd". You must pass '--namespace=cryostat-operator-system' to perform this operation.

***********************************************************************************************************

     Can I setup cryostat operator in my own namespace instead of "cryostat-operator-system"?
    
Regards,
Nitin    

Elliott Baron

unread,
Nov 15, 2021, 11:31:50 AM11/15/21
to Nitin Ghuge, Cryostat Development List
Hi Nitin,

This is something you can do with Kustomize. Create a kustomization.yaml
file in the directory of your choice like this one:

> $ cat kustomization.yaml
> bases:
> - github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0
>
> namespace: abcd

This will override the namespace of any operator resources with "abcd".
To deploy, from the same directory run:

> kubectl apply -k .

This tells kubectl to apply resources using the kustomization.yaml file
in your current directory.

Thanks,
Elliott
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v1.0.0>
>
>
> 3. Create the Cryostat custom resource (replace host values
> 'testing.cryostat', 'testing.cryostat-command' and
> 'testing.cryostat-grafana' with hostnames that route to your own
> cluster):
> > $ cat << 'EOF' | kubectl create -f -
> > apiVersion: operator.cryostat.io/v1beta1
> <http://operator.cryostat.io/v1beta1>
> > kind: Cryostat
> > metadata:
> > name: cryostat-sample
> > spec:
> > minimal: false
> > networkOptions:
> > coreConfig:
> > annotations:
> > nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol> : HTTPS
> > ingressSpec:
> > tls:
> > - {}
> > rules:
> > - host: testing.cryostat
> > http:
> > paths:
> > - path: /
> > pathType: Prefix
> > backend:
> > service:
> > name: cryostat-sample
> > port:
> > number: 8181
> > commandConfig:
> > annotations:
> > nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol> : HTTPS
> > ingressSpec:
> > tls:
> > - {}
> > rules:
> > - host: testing.cryostat-command
> > http:
> > paths:
> > - path: /
> > pathType: Prefix
> > backend:
> > service:
> > name: cryostat-sample-command
> > port:
> > number: 9090
> > grafanaConfig:
> > annotations:
> > nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol> : HTTPS
> > ingressSpec:
> > tls:
> > - {}
> > rules:
> > - host: testing.cryostat-grafana
> > http:
> > paths:
> > - path: /
> > pathType: Prefix
> > backend:
> > service:
> > name: cryostat-sample-grafana
> > port:
> > number: 3000
> > EOF
>
> Hope this helps.
>
> Thanks,
> Elliott
>
> --
> You received this message because you are subscribed to the Google
> Groups "Cryostat Development List" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cryostat-development/730d83ed-431e-4bd3-8d24-b97576571255n%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/730d83ed-431e-4bd3-8d24-b97576571255n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Nitin Ghuge

unread,
Nov 18, 2021, 2:13:06 PM11/18/21
to Cryostat Development List
Hi All,

    Installed Cryostat Operator and also deployed Cryostat in my customized namespace of Azure Kubernetes environment. But I am not able to access cryostat web dashboard. So can't generate JFR for my application

    1. I tried to get the url using below command but it failed.

        kubectl --kubeconfig=/c/Users/abc/.kube/kubeconfig get cryostat -o jsonpath='{$.items[0].status.applicationUrl}'

        error: error executing jsonpath "{$.items[0].status.applicationUrl}": Error executing template: array index out of bounds: index 0, length 0. Printing more information for debugging the template:
                template was:
                        {$.items[0].status.applicationUrl}
                object given to jsonpath engine was:
                        map[string]interface {}{"apiVersion":"v1", "items":[]interface {}{}, "kind":"List", "metadata":map[string]interface {}{"resourceVersion":"", "selfLink":""}}

    2. I think there is alternative of event template for jfr generation. Can you please provide me any such event template file?

Regards,
Nitin

Elliott Baron

unread,
Nov 18, 2021, 5:19:51 PM11/18/21
to Nitin Ghuge, Cryostat Development List
Hi Nitin,

On 2021-11-18 2:13 p.m., Nitin Ghuge wrote:
> Hi All,
>
>     Installed Cryostat Operator and also deployed Cryostat in my
> customized namespace of Azure Kubernetes environment. But I am not able
> to access cryostat web dashboard. So can't generate JFR for my application
>
>     1. I tried to get the url using below command but it failed.
>
>         kubectl --kubeconfig=/c/Users/abc/.kube/kubeconfig get cryostat
> -o jsonpath='{$.items[0].status.applicationUrl}'
>
>         error: error executing jsonpath
> "{$.items[0].status.applicationUrl}": Error executing template: array
> index out of bounds: index 0, length 0. Printing more information for
> debugging the template:
>                 template was:
>                         {$.items[0].status.applicationUrl}
>                 object given to jsonpath engine was:
>                         map[string]interface {}{"apiVersion":"v1",
> "items":[]interface {}{}, "kind":"List", "metadata":map[string]interface
> {}{"resourceVersion":"", "selfLink":""}}

It seems like something is preventing Cryostat from being deployed
properly. Could you check if there are any Events listed when you run:

> $ kubectl describe cryostat <name of cryostat instance>


>
>     2. I think there is alternative of event template for jfr
> generation. Can you please provide me any such event template file?

Once Cryostat is up and running, you can follow this guide to download,
edit and upload customized event templates:
https://cryostat.io/guides/#download-edit-and-upload-a-customized-event-template.

Alternatively, you can find the built-in JFR event templates that are
shipped with OpenJDK under: $JAVA_HOME/lib/jfr. The file extension is
.jfc, but they are XML files.

Thanks,
Elliott

>
> Regards,
> Nitin
>
>
> On Monday, November 15, 2021 at 10:01:50 PM UTC+5:30 Elliott Baron wrote:
>
> Hi Nitin,
>
> This is something you can do with Kustomize. Create a
> kustomization.yaml
> file in the directory of your choice like this one:
>
> > $ cat kustomization.yaml
> > bases:
> > -
> github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0
> <http://github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0>
>
> >
> > namespace: abcd
>
> This will override the namespace of any operator resources with "abcd".
> To deploy, from the same directory run:
>
> > kubectl apply -k .
>
> This tells kubectl to apply resources using the kustomization.yaml file
> in your current directory.
>
> Thanks,
> Elliott
>
> On 2021-11-12 1:27 p.m., Nitin Ghuge wrote:
> > Hi,
> >
> >     I am working on JFR generation of application deployed on Azure
> > Kubernetes cluster environment.
> >     I am trying to setup Cryostat operator using below command. I am
> > trying to setup it on my own namespace "abcd" because my existing
> > application is well established within this namespace.
> >
> > kubectl --kubeconfig=/c/Users/.kube/kubeconfig -n abcd apply
> > --namespace=abcd -k
> >
> 'github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0>'
>
> >
> >     But above command is failing due to customized namespace.
> Below is
> > the response of command.
> >
> >
> ***********************************************************************************************************
>
> >
> >
> >
> customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>
>
> > configured
> >
> customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>
>
> > configured
> >
> customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>
>
> > configured
> > clusterrole.rbac.authorization.k8s.io/cryostat-operator-cryostat
> <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-cryostat>
> configured
> > clusterrole.rbac.authorization.k8s.io/cryostat-operator-role
> <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-role> configured
>
> >
> clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding
> <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v1.0.0
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v1.0.0>>
>
> >
> >
> > 3. Create the Cryostat custom resource (replace host values
> > 'testing.cryostat', 'testing.cryostat-command' and
> > 'testing.cryostat-grafana' with hostnames that route to your own
> > cluster):
> > > $ cat << 'EOF' | kubectl create -f -
> > > apiVersion: operator.cryostat.io/v1beta1
> <http://operator.cryostat.io/v1beta1>
> > <http://operator.cryostat.io/v1beta1
> <http://operator.cryostat.io/v1beta1>>
> > > kind: Cryostat
> > > metadata:
> > > name: cryostat-sample
> > > spec:
> > > minimal: false
> > > networkOptions:
> > > coreConfig:
> > > annotations:
> > > nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> > <http://nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>> : HTTPS
> > > ingressSpec:
> > > tls:
> > > - {}
> > > rules:
> > > - host: testing.cryostat
> > > http:
> > > paths:
> > > - path: /
> > > pathType: Prefix
> > > backend:
> > > service:
> > > name: cryostat-sample
> > > port:
> > > number: 8181
> > > commandConfig:
> > > annotations:
> > > nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> > <http://nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>> : HTTPS
> > > ingressSpec:
> > > tls:
> > > - {}
> > > rules:
> > > - host: testing.cryostat-command
> > > http:
> > > paths:
> > > - path: /
> > > pathType: Prefix
> > > backend:
> > > service:
> > > name: cryostat-sample-command
> > > port:
> > > number: 9090
> > > grafanaConfig:
> > > annotations:
> > > nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> > <http://nginx.ingress.kubernetes.io/backend-protocol
> <https://groups.google.com/d/msgid/cryostat-development/730d83ed-431e-4bd3-8d24-b97576571255n%40googlegroups.com?utm_medium=email&utm_source=footer
> <https://groups.google.com/d/msgid/cryostat-development/730d83ed-431e-4bd3-8d24-b97576571255n%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Cryostat Development List" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer>.

Nitin Ghuge

unread,
Dec 14, 2021, 11:21:19 AM12/14/21
to Cryostat Development List
Hi,

     Thanks for your help done so far. Now I am able to successfully start Cryostat on Azure. I can see 3 ingresses, 3 services and 3 containers. But I am facing below issues. Please suggest.

1. Not able to login. Basic authentication is enabled. How to get credentials for basic auth?
2. I can see continuous notifications regarding "WebSocket Error" and "Grafana configuration not found."
3. All 3 services have external IP associated with them, So I am able to access services directly from outside with the help of IP over insecure HTTP.
4. I am not able to access cryostat web dashboard with the help of host name, I need service IP address for accessing it.

      I am attaching yaml used for Cryostat creation and screenshot of web dashboard.
    
      Thanks for your help and time.

Regards,
Nitin
Page1.jpg
Cryostate_Sample.txt

Elliott Baron

unread,
Dec 14, 2021, 12:51:38 PM12/14/21
to Nitin Ghuge, Cryostat Development List
Hi Nitin,

On 2021-12-14 11:21 a.m., Nitin Ghuge wrote:
> Hi,
>
>      Thanks for your help done so far. Now I am able to successfully
> start Cryostat on Azure. I can see 3 ingresses, 3 services and 3
> containers. But I am facing below issues. Please suggest.
>
> 1. Not able to login. Basic authentication is enabled. How to get
> credentials for basic auth?
> 2. I can see continuous notifications regarding "WebSocket Error" and
> "Grafana configuration not found."
> 3. All 3 services have external IP associated with them, So I am able to
> access services directly from outside with the help of IP over insecure
> HTTP.
> 4. I am not able to access cryostat web dashboard with the help of host
> name, I need service IP address for accessing it.
>
>       I am attaching yaml used for Cryostat creation and screenshot of
> web dashboard.
>
>       Thanks for your help and time.

These issues may be related. I tried this setup with Minikube and
received a "502 - Bad Gateway" error when attempting to connect to the
Cryostat web application.

The problem was this annotation in your Ingress configs:
> annotations:
> nginx.ingress.kubernetes.io/backend-protocol : HTTPS

This tells the Ingress Controller that it should connect to the backend
service using HTTPS, but cert-manager integration is disabled:
> enableCertManager: false

This means that the Cryostat/Grafana HTTP servers are not configured to
accept HTTPS traffic.

Could you try the following:
1. Delete your Cryostat instance:
> kubectl delete cryostat --all

2. Remove the "nginx.ingress.kubernetes.io/backend-protocol" annotation
from the core, command, and grafana configs under networkOptions in your
Cryostat YAML.

3. Create the Cryostat instance with the revised configuration:
> kubectl create -f /path/to/my-cryostat.yaml

Let me know if this helps.

Thanks,
Elliott
> <https://cryostat.io/guides/#download-edit-and-upload-a-customized-event-template>.
>
>
> Alternatively, you can find the built-in JFR event templates that are
> shipped with OpenJDK under: $JAVA_HOME/lib/jfr. The file extension is
> .jfc, but they are XML files.
>
> Thanks,
> Elliott
>
> >
> > Regards,
> > Nitin
> >
> >
> > On Monday, November 15, 2021 at 10:01:50 PM UTC+5:30 Elliott
> Baron wrote:
> >
> > Hi Nitin,
> >
> > This is something you can do with Kustomize. Create a
> > kustomization.yaml
> > file in the directory of your choice like this one:
> >
> > > $ cat kustomization.yaml
> > > bases:
> > > -
> > github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0
> <http://github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0>
>
> >
> <http://github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0
> <http://github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0>>
>
> >
> > >
> > > namespace: abcd
> >
> > This will override the namespace of any operator resources with
> "abcd".
> > To deploy, from the same directory run:
> >
> > > kubectl apply -k .
> >
> > This tells kubectl to apply resources using the
> kustomization.yaml file
> > in your current directory.
> >
> > Thanks,
> > Elliott
> >
> > On 2021-11-12 1:27 p.m., Nitin Ghuge wrote:
> > > Hi,
> > >
> > >     I am working on JFR generation of application deployed on
> Azure
> > > Kubernetes cluster environment.
> > >     I am trying to setup Cryostat operator using below command.
> I am
> > > trying to setup it on my own namespace "abcd" because my existing
> > > application is well established within this namespace.
> > >
> > > kubectl --kubeconfig=/c/Users/.kube/kubeconfig -n abcd apply
> > > --namespace=abcd -k
> > >
> >
> 'github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0>
>
> >
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0
> <http://github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0>>'
>
> >
> > >
> > >     But above command is failing due to customized namespace.
> > Below is
> > > the response of command.
> > >
> > >
> >
> ***********************************************************************************************************
>
> >
> > >
> > >
> > >
> >
> customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>
>
> >
> <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io
> <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-cryostat
> <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-role
> <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding
> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer
> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Cryostat Development List" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Elliott Baron

unread,
Dec 14, 2021, 1:03:05 PM12/14/21
to Nitin Ghuge, Cryostat Development List
Hi Nitin,

One more thing I forgot to mention in my last email.

We recently discovered that to avoid WebSocket connection timeouts every
minute with the NGINX Ingress Controller, you can use the following
annotations:
> nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
> nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"

Please include those annotations in
networkOptions.coreConfig.annotations, while removing the
"nginx.ingress.kubernetes.io/backend-protocol" from all 3 configurations
as mentioned in my previous email.

I've attached a revised version of your Cryostat YAML to show what it
should look like with these suggestions.

Thanks,
Elliott
Cryostate_Sample-revised.txt

Nitin Ghuge

unread,
Dec 15, 2021, 1:26:11 PM12/15/21
to Cryostat Development List
Hi Elliott,

Thanks for your quick reply. I tried with suggested changes but still all issues exists.

1. Not able to login. Basic authentication is enabled. How to get credentials for basic auth?
2. I can see continuous notifications regarding "WebSocket Error" and  "Grafana configuration not found, dashboard URL unavailable"
3. All 3 services have external IP associated with them (all services are of type "LoadBalancer"), So I am able to access services directly from outside world with the help of IP over insecure HTTP.
4. I am not able to access Cryostat web dashboard with the help of host name, I need service IP address for accessing them.

Regards,
Nitin

Elliott Baron

unread,
Dec 15, 2021, 5:39:53 PM12/15/21
to Nitin Ghuge, Cryostat Development List
Hi Nitin,

On 2021-12-15 1:26 p.m., Nitin Ghuge wrote:
> Hi Elliott,
>
> Thanks for your quick reply. I tried with suggested changes but still
> all issues exists.
>
> 1. Not able to login. Basic authentication is enabled. How to get
> credentials for basic auth?
> 2. I can see continuous notifications regarding "WebSocket Error" and
>  "Grafana configuration not found, dashboard URL unavailable"
> 3. All 3 services have external IP associated with them (all services
> are of type "LoadBalancer"), So I am able to access services directly
> from outside world with the help of IP over insecure HTTP.
> 4. I am not able to access Cryostat web dashboard with the help of host
> name, I need service IP address for accessing them.

While the web client says Basic authentication is enabled, this is
actually a web client bug. Currently, no authentication is enabled when
running on Kubernetes. As such, there are no credentials for you to
retrieve. This bug seems to occur as a symptom of other issues such as
the WebSocket error you're seeing.

Could you share the following with me (redacted as necessary) to help
diagnose the problem:

> $ kubectl get deploy croystat-sample -o yaml
> $ kubectl get ingress cryostat-sample -o yaml
> $ kubectl get ingress cryostat-sample-grafana -o yaml
Thanks,
Elliott

>
> Regards,
> Nitin
>
> On Tuesday, December 14, 2021 at 11:33:05 PM UTC+5:30 Elliott Baron wrote:
>
> Hi Nitin,
>
> One more thing I forgot to mention in my last email.
>
> We recently discovered that to avoid WebSocket connection timeouts
> every
> minute with the NGINX Ingress Controller, you can use the following
> annotations:
> > nginx.ingress.kubernetes.io/proxy-read-timeout
> <http://nginx.ingress.kubernetes.io/proxy-read-timeout>: "3600"
> > nginx.ingress.kubernetes.io/proxy-send-timeout
> <http://nginx.ingress.kubernetes.io/proxy-send-timeout>: "3600"
>
> Please include those annotations in
> networkOptions.coreConfig.annotations, while removing the
> "nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>" from all 3
> <http://nginx.ingress.kubernetes.io/backend-protocol> : HTTPS
> >
> > This tells the Ingress Controller that it should connect to the
> backend
> > service using HTTPS, but cert-manager integration is disabled:
> >>   enableCertManager: false
> >
> > This means that the Cryostat/Grafana HTTP servers are not
> configured to
> > accept HTTPS traffic.
> >
> > Could you try the following:
> > 1. Delete your Cryostat instance:
> >> kubectl delete cryostat --all
> >
> > 2. Remove the "nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>" annotation
> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer
> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>
> >>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Cryostat Development List" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cryostat-development/836bdef4-d15c-4eeb-811c-1bdcfa66c238n%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/836bdef4-d15c-4eeb-811c-1bdcfa66c238n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Nitin Ghuge

unread,
Dec 16, 2021, 5:28:49 AM12/16/21
to Elliott Baron, Cryostat Development List
Hi Elliott,

        Please find attachment for information you requested. One more thing I missed in my previous email, while debugging issues via Firefox debugger, I found the web is able to populated target JVMs via /api/v1/targets (GET API).
       Thanks for your help and time.

Regards,
Nitin

To unsubscribe from this group and stop receiving emails from it, send an email to cryostat-develop...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com.
Deployment_Details.txt

Nitin Ghuge

unread,
Dec 17, 2021, 5:54:09 AM12/17/21
to Cryostat Development List
Please include ankurg...@gmail.com during our further communication. I don't have permission to add new person in group.

Regards,
Nitin

Elliott Baron

unread,
Dec 17, 2021, 1:43:03 PM12/17/21
to Nitin Ghuge, Cryostat Development List, ankurg...@gmail.com, Andrew Azores
Hi,

The YAML files you provided look correct. Neither Andrew or I see
anything out of the ordinary. I suspect something is wrong with the
Ingress. Could you send me the following YAML:

> kubectl get ingressclass -o yaml

This should provide some insight into the Ingress Controllers you're
using and whether one is marked as default. If nothing looks out of the
ordinary with the IngressClass, we could try to schedule a live
debugging session if that works for you.

I'll be on vacation from December 20 - January 4, but will follow up
with you when I return.

Thanks,
Elliott

On 2021-12-17 5:54 a.m., Nitin Ghuge wrote:
> Please include ankurg...@gmail.com <mailto:ankurg...@gmail.com>
> >     <http://nginx.ingress.kubernetes.io/proxy-read-timeout
> >     <http://nginx.ingress.kubernetes.io/proxy-send-timeout
> <http://nginx.ingress.kubernetes.io/proxy-send-timeout>>: "3600"
> >
> >     Please include those annotations in
> >     networkOptions.coreConfig.annotations, while removing the
> >     "nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> >     <http://nginx.ingress.kubernetes.io/backend-protocol
> >      > This tells the Ingress Controller that it should
> connect to the
> >     backend
> >      > service using HTTPS, but cert-manager integration is
> disabled:
> >      >>   enableCertManager: false
> >      >
> >      > This means that the Cryostat/Grafana HTTP servers are not
> >     configured to
> >      > accept HTTPS traffic.
> >      >
> >      > Could you try the following:
> >      > 1. Delete your Cryostat instance:
> >      >> kubectl delete cryostat --all
> >      >
> >      > 2. Remove the
> "nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> >     <http://nginx.ingress.kubernetes.io/backend-protocol
>  <http://github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0 <http://github.com/cryostatio/cryostat-operator/config/default?ref=v2.0.0>>>>
>  <http://github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0 <http://github.com/cryostatio/cryostat-operator//config/default?ref=v2.0.0>>>>'
> >
> >      >>
> >      >>
> >      >>      >
> >      >>      > >
> >      >>      > >     But above command is failing due to
> customized
> >     namespace.
> >      >>      > Below is
> >      >>      > > the response of command.
> >      >>      > >
> >      >>      > >
> >      >>      >
> >      >>
> >      >>
> >
>  ***********************************************************************************************************
> >
> >      >>
> >      >>
> >      >>      >
> >      >>      > >
> >      >>      > >
> >      >>      > >
> >      >>      >
> >      >>
> >      >>
> >
> customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>>>
> >
> >      >>
> >      >>
> >      >>      >
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/cryostats.operator.cryostat.io>>>>
> >
> >      >>
> >      >>
> >      >>      >
> >      >>      > > configured
> >      >>      > >
> >      >>      >
> >      >>
> >      >>
> >
> customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>>>
> >
> >      >>
> >      >>
> >      >>      >
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/flightrecorders.operator.cryostat.io>>>>
> >
> >      >>
> >      >>
> >      >>      >
> >      >>      > > configured
> >      >>      > >
> >      >>      >
> >      >>
> >      >>
> >
> customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io
> <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>>>
> >
> >      >>
> >      >>
> >      >>      >
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>
> >
>  <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io <http://customresourcedefinition.apiextensions.k8s.io/recordings.operator.cryostat.io>>>>
>  <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-cryostat <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-cryostat>>>>
>  <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-role <http://clusterrole.rbac.authorization.k8s.io/cryostat-operator-role>>>>
> >      >>     configured
> >      >>      >
> >      >>      > >
> >      >>      >
> >      >>
> >      >>
> >
> clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding
> <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>>>
> >
> >      >>
> >      >>
> >      >>      >
> >      >>
> >      >>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>>
> >
> >      >>
> >      >>
> >      >>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>
> >
>  <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding <http://clusterrolebinding.rbac.authorization.k8s.io/cryostat-operator-cluster-role-binding>>>>
>  <http://github.com/cryostatio/cryostat-operator//config/default?ref=v1.0.0 <http://github.com/cryostatio/cryostat-operator//config/default?ref=v1.0.0>>>>>
> <https://groups.google.com/d/msgid/cryostat-development/836bdef4-d15c-4eeb-811c-1bdcfa66c238n%40googlegroups.com?utm_medium=email&utm_source=footer
> <https://groups.google.com/d/msgid/cryostat-development/836bdef4-d15c-4eeb-811c-1bdcfa66c238n%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>
> --
> You received this message because you are subscribed to the
> Google Groups "Cryostat Development List" group.
>
> To unsubscribe from this group and stop receiving emails from
> it, send an email to cryostat-develop...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com
> <https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "Cryostat Development List" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cryostat-development/af6c92ee-85c5-4839-94d8-ab918f86f6f3n%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/af6c92ee-85c5-4839-94d8-ab918f86f6f3n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Ankur Garg

unread,
Dec 20, 2021, 10:18:09 AM12/20/21
to Elliott Baron, Nitin Ghuge, Cryostat Development List, Andrew Azores
Hey Elliott,

I was able to get the ingress working but still it's giving me the websocket error continuously as below:

image.png

Also, regarding the ingressclass, I don't see any ingressclass resources in any of the namespace:

$ kubectl get ingressclass -A
No resources found

$ kubectl get ingressclass -o yaml
apiVersion: v1
items: []
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""


Please find attached the cryostat.yaml file that I used to deploy this setup. Let me know your thoughts on this whenever you get time to check it out. 

Meanwhile, Happy holidays :)

cryostat_ingress.yml

Nitin Ghuge

unread,
Jan 5, 2022, 1:36:15 PM1/5/22
to Cryostat Development List
Please let me know if you are back from vacation. Sure we can have live session for debugging. Please suggest dates for this live session.

Regards,
Nitin

Elliott Baron

unread,
Jan 6, 2022, 3:19:33 PM1/6/22
to Nitin Ghuge, Ankur Garg, Cryostat Development List, Andrew Azores
Hi Ankur and Nitin,

On 2021-12-20 5:40 a.m., Ankur Garg wrote:
> Hey Elliott,
>
> I was able to get the ingress working but still it's giving me the
> websocket error continuously as below:
>
> image.png
>
> Also, regarding the ingressclass, I don't see any ingressclass resources
> in any of the namespace:
>
> $ kubectl get ingressclass -A
> No resources found
>
> $ kubectl get ingressclass -o yaml
> apiVersion: v1
> items: []
> kind: List
> metadata:
>   resourceVersion: ""
>   selfLink: ""
>
>
> Please find attached the cryostat.yaml file that I used to deploy this
> setup. Let me know your thoughts on this whenever you get time to check
> it out.
>
> Meanwhile, Happy holidays :)

Thanks!

I'm glad you made some progress with the Ingress setup. The only thing I
can suggest is to also define the Ingress configuration for the Grafana
component under 'cryostat.spec.networkOptions.grafanaConfig'.

In the meantime, I'll start a conversation off-list for us to schedule a
live troubleshooting session.

Thanks,
Elliott

> On Sat, Dec 18, 2021 at 12:13 AM Elliott Baron <eba...@redhat.com
> <mailto:eba...@redhat.com>> wrote:
>
> Hi,
>
> The YAML files you provided look correct. Neither Andrew or I see
> anything out of the ordinary. I suspect something is wrong with the
> Ingress. Could you send me the following YAML:
>
> > kubectl get ingressclass -o yaml
>
> This should provide some insight into the Ingress Controllers you're
> using and whether one is marked as default. If nothing looks out of the
> ordinary with the IngressClass, we could try to schedule a live
> debugging session if that works for you.
>
> I'll be on vacation from December 20 - January 4, but will follow up
> with you when I return.
>
> Thanks,
> Elliott
>
> On 2021-12-17 5:54 a.m., Nitin Ghuge wrote:
> > Please include ankurg...@gmail.com
> <mailto:ankurg...@gmail.com> <mailto:ankurg...@gmail.com
> <mailto:ankurg...@gmail.com>>
> > during our further communication. I don't have permission to add new
> > person in group.
> >
> > Regards,
> > Nitin
> >
> > On Thursday, December 16, 2021 at 3:58:49 PM UTC+5:30 Nitin Ghuge
> wrote:
> >
> >     Hi Elliott,
> >
> >              Please find attachment for information you
> requested. One
> >     more thing I missed in my previous email, while debugging
> issues via
> >     Firefox debugger, I found the web is able to populated target
> JVMs
> >     via /api/v1/targets (GET API).
> >             Thanks for your help and time.
> >
> >     Regards,
> >     Nitin
> >
> >     On Thu, Dec 16, 2021 at 4:09 AM Elliott Baron
> >          >      > This tells the Ingress Controller that it should
> >         connect to the
> >          >     backend
> >          >      > service using HTTPS, but cert-manager
> integration is
> >         disabled:
> >          >      >>   enableCertManager: false
> >          >      >
> >          >      > This means that the Cryostat/Grafana HTTP
> servers are not
> >          >     configured to
> >          >      > accept HTTPS traffic.
> >          >      >
> >          >      > Could you try the following:
> >          >      > 1. Delete your Cryostat instance:
> >          >      >> kubectl delete cryostat --all
> >          >      >
> >          >      > 2. Remove the
> >         "nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> >         <http://nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>>
> >          >
> <mailto:cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>>.
> >          >      >>      > To view this discussion on the web visit
> >          >      >>      >
> >          >      >>
> >          >      >>
> >          >
> >
> https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com>
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com>>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com>>>
> >          >
> >          >      >>
> >          >      >>
> >          >      >>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com>>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com>>>>
> >          >
> >          >      >>
> >          >      >>
> >          >      >>      >
> >          >      >>
> >          >      >>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer>>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer>>>
> >          >
> >          >      >>
> >          >      >>
> >          >      >>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer>>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer> <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/e22b45b2-0004-4820-b1f8-e1ab50449f4fn%40googlegroups.com?utm_medium=email&utm_source=footer>>>>>.
> >          >
> >          >      >>
> >          >      >>
> >          >      >>
> >          >      >> --
> >          >      >> You received this message because you are
> subscribed
> >         to the Google
> >          >      >> Groups "Cryostat Development List" group.
> >          >      >> To unsubscribe from this group and stop receiving
> >         emails from
> >          >     it, send
> >          >      >> an email to
> cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>
> >          >      >> <mailto:cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>>.
> >          >      >> To view this discussion on the web visit
> >          >      >>
> >          >
> >
> https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com
> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com>
> >
>  <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com>>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com>>>
> >          >
> >          >      >>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer>>
> >          >
> >
>  <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer> <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cryostat-development/50482a98-5ad9-4f46-9e09-204b9b648222n%40googlegroups.com?utm_medium=email&utm_source=footer>>>>.
> >          >
> >          >      >>
> >          >
> >          > --
> >          > You received this message because you are subscribed
> to the
> >         Google
> >          > Groups "Cryostat Development List" group.
> >          > To unsubscribe from this group and stop receiving
> emails from
> >         it, send
> >          > an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>
> >          > <mailto:cryostat-develop...@googlegroups.com
> >         it, send an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-develop...@googlegroups.com>.
> >         To view this discussion on the web visit
> >
> https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com
> <https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com>
> >
>  <https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com <https://groups.google.com/d/msgid/cryostat-development/b8a07e22-451c-39ef-f373-d2dcbb7093a5%40redhat.com>>.
> >
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Cryostat Development List" group.
> > To unsubscribe from this group and stop receiving emails from it,
> send
> > an email to cryostat-develop...@googlegroups.com
> <mailto:cryostat-development%2Bunsu...@googlegroups.com>
> > <mailto:cryostat-develop...@googlegroups.com
> <mailto:cryostat-development%2Bunsu...@googlegroups.com>>.
> <https://groups.google.com/d/msgid/cryostat-development/af6c92ee-85c5-4839-94d8-ab918f86f6f3n%40googlegroups.com?utm_medium=email&utm_source=footer
> <https://groups.google.com/d/msgid/cryostat-development/af6c92ee-85c5-4839-94d8-ab918f86f6f3n%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>

Barış Öztürkmen

unread,
Dec 2, 2022, 8:55:37 AM12/2/22
to Cryostat Development List
Hi Nitin, 

I have the same requirement and trying to figure out if its applicable to kubernetes on azure before I ask from our devops team. Would you mind sharing your experience on how you got it worked ?

Thanks.  

Elliott Baron

unread,
Dec 5, 2022, 6:04:18 PM12/5/22
to Barış Öztürkmen, Cryostat Development List
Hi Barış,

We've made some improvements to some of the areas mentioned in this past
discussion, such as WebSocket connectivity and the Grafana health check.

Our team would be happy to help if you encounter any issues installing
Cryostat 2.2.

Thanks,
Elliott
> > >          >      > This tells the Ingress Controller that it should
> > >         connect to the
> > >          >     backend
> > >          >      > service using HTTPS, but cert-manager
> > integration is
> > >         disabled:
> > >          >      >>   enableCertManager: false
> > >          >      >
> > >          >      > This means that the Cryostat/Grafana HTTP
> > servers are not
> > >          >     configured to
> > >          >      > accept HTTPS traffic.
> > >          >      >
> > >          >      > Could you try the following:
> > >          >      > 1. Delete your Cryostat instance:
> > >          >      >> kubectl delete cryostat --all
> > >          >      >
> > >          >      > 2. Remove the
> > >         "nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> > <http://nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>>
> > >         <http://nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>
> > <http://nginx.ingress.kubernetes.io/backend-protocol
> <http://nginx.ingress.kubernetes.io/backend-protocol>>>
> > >          >
> https://groups.google.com/d/msgid/cryostat-development/7aa17332-2e6d-4da8-a807-ce4193f1efeen%40googlegroups.com <https://groups.google.com/d/msgid/cryostat-development/7aa17332-2e6d-4da8-a807-ce4193f1efeen%40googlegroups.com?utm_medium=email&utm_source=footer>.

Nitin Ghuge

unread,
Dec 6, 2022, 8:47:31 AM12/6/22
to Barış Öztürkmen, Cryostat Development List
It didn't worked for me. I was getting some errors while setting up Cryostat on Azure.

Regards,
Nitin Ghuge 
Reply all
Reply to author
Forward
0 new messages