marklogic / marklogic-kubernetes Goto Github PK
View Code? Open in Web Editor NEWHelm chart for MarkLogic Server
License: Other
Helm chart for MarkLogic Server
License: Other
I tried to use this helm repository in terraform build but it failed with the below error. Can you check?
helm_release.marklogic-kubernetes: Creating...
╷
│ Error: could not download chart: file '/Users/Library/Caches/helm/repository/marklogic-kubernetes' does not appear to be a gzipped archive; got 'text/html; charset=utf-8'
│
│ with helm_release.marklogic-kubernetes,
│ on helm.tf line 7, in resource "helm_release" "marklogic-kubernetes":
│ 7: resource "helm_release" "marklogic-kubernetes" {
│
Greetings-
Issue 1:
I am attempting to deploy MarkLogic using Helm onto an OpenShift 4.10 instance and running into a couple problems. Firstly, due to the default SCC in OCP you cannot run a pod as root.
MarkLogic's own documentation seem to point that running as root is strongly recommended so that it can restart itself as necessary. But this seems very unnecessary in K8s and OCP deployments since those container orchestrators can handle any rebooting of pods that are needed.
My current work around is to temporarily turn off this SCC by running oc adm policy add-scc-to-user anyuid -z ml-test-marklogic -n <my_namespace>
, which allows MarkLogic to boot up. I am unsure if I will be allowed to do this in production though.
Is there anyway to use this repo's deployment mechanism in a non-root way?
Issue 2:
My second issue is I am having trouble accessing the admin console (port 8001) through my OpenShift route. I believe this is actually an issue with our F5 load balancer and MarkLogic's Digest Auth. So I am looking into a fix from F5 if possible, but I am wondering if there is a way to configure MarkLogic to use Basic Auth for the Admin Console without going through the Admin Console itself after deploying it (i.e. configure at the time of deployment through the Helm Chart).
Thanks!
It would be very helpful if there was an option to configure session affinity for the service. Some applications require session affinity to process multi-statement transactions.
Please let me know if there is already an option to configure session affinity for the MarkLogic Kubernetes service.
Many thanks in advance.
I just tried the procedure for installing a single ML node on minikube but ran into an issue when I tried to add the helm repo.
~/Development/MarkLogic/marklogic-kubernetes [develop] $ helm repo add marklogic https://github.com/marklogic/marklogic-kubernetes
Error: looks like "https://github.com/marklogic/marklogic-kubernetes" is not a valid chart repository or cannot be reached: failed to fetch https://github.com/marklogic/marklogic-kubernetes/index.yaml : 404 Not Found
What is causing this? I can see the presence of index.yaml in the root of the repo. Also develop branch is setup as the default branch. Or does the helm command use the main branch?
Hi,
we ran into an issue when balancing multiple TCP-ports via HAProxy. For example by providing the following parameters via values.yaml
haproxy:
ports:
- name: first-port
type: TCP
port: 9301
targetPort: 9301
- name: second-port
type: TCP
port: 9302
targetPort: 9302
Above example will lead to an invalid HAProxy configuration as the ConfigMap generator in https://github.com/marklogic/marklogic-kubernetes/blob/master/charts/templates/configmap-haproxy.yaml hardcodes the HAProxy server name to odbc
is not respecting the loop.
{{- if eq $portType "TCP" -}}
listen odbc --> HARDCODED
bind :{{ $portNumber }}
mode tcp
balance leastconn
{{- range $i := until $replicas }}
server {{ printf "ml-%s-%s-%v" $releaseName $portNumber $i }} {{ $releaseName }}-{{ $i }}.{{ $releaseName }}.{{ $namespace }}.svc.{{ $clusterDomain }}:{{ $portNumber }} check resolvers dns init-addr none
{{- end }}
{{- else if eq $portType "HTTP" }}
Would recommend to change it to something like:
{{- if eq $portType "TCP" -}}
listen marklogic-{{$portNumber}}
bind :{{ $portNumber }}
mode tcp
balance leastconn
{{- range $i := until $replicas }}
server {{ printf "ml-%s-%s-%v" $releaseName $portNumber $i }} {{ $releaseName }}-{{ $i }}.{{ $releaseName }}.{{ $namespace }}.svc.{{ $clusterDomain }}:{{ $portNumber }} check resolvers dns init-addr none
{{- end }}
{{- else if eq $portType "HTTP" }}
Would be happy to provide a clean Pull Request if you acknowlege the issue.
Best regards,
Moritz Siller
Can you add instructions to remove the ec2 from AWS?
Hello-
I have successfully deployed a single node instance onto my OpenShift cluster. But when I attempt to access to the admin console through a route that points to the admin port the web application doesn't load properly (see below screenshot).
When I ssh directly into the node and have my laptop mount a local port to the port on the node, it does work. So this confirms that it is only when I access the admin console through a proxy that it breaks. I happen to be using F5 as my proxy but I have replicated this behavior with Traefik 2 / MarkLogic on a Docker Swarm cluster.
What is a bit strange is that if I manually go to one of the gif images that it is trying to load, that image loads correctly. Then when I refresh the admin web app it uses the cache and that image correctly loads.
If I click on any of the links I get an infinite loop as well.
Are there some headers that I need to set or something else I need to do to get MarkLogic admin console accessible behind a proxy?
Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.