Open mustafaaykon opened 1 year ago
This can be your cluster version is not compatible with this chart. Could you give me your cluster version?
Hi duyet, Thanks for your effort. Your chart is awesome! My cluster version is 1.22 and my api version is k8s.networking.io/v1 I overwrote your "ingress.yaml". It worked successfully for now. But, it is not covering other versions for now :/
Additionally, i want to put my k8s secret inside of the chart and use it as a environment variable. How can i do that? Thanks! Best regards.
Hi @mustafaaykon, I updated all the charts to make them compatible with all Kubernetes networking versions. You can give it another try without overwriting the ingress.yaml.
Regarding using environment variables, most of the charts have the extraEnvs
, extraEnvVarsCM
or env
option. Could you tell me which chart you are using? If it is missing, I will update it to support that.
Thanks for your help @duyet . Actually, i am trying to use "Zeppelin Chart".
Hi @mustafaaykon, I updated the chart to support that. Please follow as this PR https://github.com/duyet/charts/pull/125#issue-1528344098
Let me know if you have any problem.
Hi @duyet. I got some problem with k8s Secret part. I am writing my secret name and the secret already exist in namespace. But whenever i tried to read it with python or spark. It is returning 'None'.
Hi @mustafaaykon, could you please give me your values.yaml file or your helm installing command?
replicaCount: 1
image:
repository: apache/zeppelin
tag: 0.10.1
pullPolicy: IfNotPresent
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
env:
SERVICE_DOMAIN: <"my_host_name">
ZEPPELIN_K8S_SPARK_CONTAINER_IMAGE: <my private pyspark operator image version is v3.1.1>
ZEPPELIN_K8S_CONTAINER_IMAGE: apache/zeppelin:0.10.1
ZEPPELIN_K8S_NAMESPACE: zeppelin
ZEPPELIN_HOME: /opt/zeppelin
ZEPPELIN_PORT: 8080
ZEPPELIN_SERVER_RPC_PORTRANGE: 12320:12320
FLINK_HOME: /opt/flink
SPARK_MASTER: k8s://https://kubernetes.default.svc
SPARK_HOME: /spark
# extraEnvVarsCM -- Extra env configmap name
extraEnvVarsCM: ""
# extraEnvVarsSecret -- Extra env secret name
extraEnvVarsSecret: <"my secret name">
serviceAccount:
# Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
type: ClusterIP
port: 80
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: <my_host_name>
paths: ['/']
pathType: Prefix
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
autoscaling:
enabled: true
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
# targetMemoryUtilizationPercentage: 80
nodeSelector:
kubernetes.io/os: linux
tolerations: []
affinity: {}
``
The zeppelin ingress yaml is out of date. It is using the old spec. Ever since sometime last year with recent ingress controllers you need to specify ingressClassName in spec, and not as an annotation. And the backend config has changed format, and you have to specify pathType. Fro example (from another app):
spec:
ingressClassName: {{ .Values.ingress.className }}
{{- if .Values.ingress.tls_secretName }}
tls:
- hosts:
- {{ .Values.ingress.host | quote }}
secretName: {{ .Values.ingress.tls_secretName }}
{{- end }}
rules:
- host: {{ .Values.ingress.host | quote }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ $fullName }}
port:
number: 80
I am getting error while trying to enable ingress. The message is "Could not find requested resource". I checked the ingress.yaml and saw "apiVersion: networking.k8s.io/v1beta1". I am pretty new in this area, if i am missing something please help me :). ServiceType: LoadBalancer is running successfully.