Giter Site home page Giter Site logo

ARM Support about helm HOT 11 CLOSED

nextcloud avatar nextcloud commented on September 7, 2024 4
ARM Support

from helm.

Comments (11)

bigbrovar avatar bigbrovar commented on September 7, 2024 3

I could not even get it to work with a multi arch cluster. It does not follow affinity rules. This helm chart was badly made tbh

from helm.

Clashsoft avatar Clashsoft commented on September 7, 2024 3

For anyone who finds this issue, I do not recommend attempting to use this chart for an ARM / Raspberry Pi cluster. There are too many issues with DB and Redis.

Some examples:

  • Using the official postgres image:
    mkdir: cannot create directory ‘/bitnami’: Permission denied
    
  • Using the official redis image (#102):
    /opt/bitnami/scripts/start-scripts/start-master.sh: line 21: /run.sh: No such file or directory
    
  • Using the official mariadb image: a ton of errors due to file access problems.

from helm.

snowpoke avatar snowpoke commented on September 7, 2024 1

I'm running this chart on a Raspberry Pi successfully, but figuring out the kinks took a while.

Here's an extract from my values file:

internalDatabase: # causes issues with ARM systems and secret management
  enabled: false

externalDatabase:
  enabled: true
  type: postgresql
  host: nextcloud-postgres-postgresql
  database: postgres
  existingSecret:
    enabled: true
    secretName: nextcloud-postgres-auth
    usernameKey: username
    passwordKey: password
    
startupProbe: # without this, install will fail on slower systems
  enabled: true
  initialDelaySeconds: 120

For Postgres, I'm using the cetic/postgresql chart.

(Figuring out that startupProbe bit took me weeks by the way. But I was still learning about Kubernetes, so I was willing to spend the time)

from helm.

jessebot avatar jessebot commented on September 7, 2024 1

There's a couple different issues going on in this thread by a few different people, so I'll do my best to address each one, but put them in collapsible fields so you can click the one relevant to your concern:

Bitnami Charts

I'm not sure we're really married to any given chart provider, but others familiar with this repo are free to chime in as to why bitnami was chosen. It looks like Bitnami started on making ARM work, according to bitnami/charts#7305, but in a bit over a year now, they still don't have their jenkins pipelines working, and the company is mostly focused on tanzu work right now.

SO, in the meantime, if you think it makes sense, and you can test an alternative chart provider, you could always submit a PR and we can review it. It might make sense to open up an Issue or discussion for each bitnami chart affected, to talk further about which charts to use, so the whole community can easily find your thoughts and chime in with additional data that might be relevant to that. We are definitely interested in learning about alternative approaches though and would absolutely review a PR :)

It's also worth noting that some of our chart dependencies may be a bit out of date sometimes while we work out the kinks in our ci/cd process. If there's something wildly out of date, take a look if there's already a dependabot PR opened for it, and if so, you can help by testing to make sure the PR would not break anyone. (example: making sure we're aware of any breaking changes from one version to the next)

External Redis

It looks like, currently, our only mention of redis outside of providing the bitnami redis chart dependency values is this:

redis.config.php: true

but a closer look through the nextcloud docs shows that you should be able to configure that block with the instructions here: https://docs.nextcloud.com/server/19/admin_manual/configuration_server/caching_configuration.html#id2

We're happy to review a PR submitted by anyone in the community to improve the helm templates and expose a better parameter set instead of just the config param we currently have :) If you do submit a PR, please remember to provide, in additional to updating the helm template, both comments in the values.yaml and an update to the chart's README to add the additional parameters to the configuration table, so everyone knows how to use it in the future.

PostgreSQL not being seen by NextCloud

This can be for a couple of reasons, but it looks like you have externalDatabase.enabled set to true and internalDatabase.enabled set to false so that's half the battle :) The next thing is making sure the parameters for externalDatabase are all configured correctly, so all of the following, which you may already have configured, but I can't see all of your values.yaml:

  # External database configuration
  externalDatabase:
    enabled: true
    ## Supported database engines: mysql or postgresql
    type: postgresql
    host: localhost:5432
    # Database name
    database: nextcloud
    ## Use a existing secret for credentials (optional, but without this, you must provide password/usersname params above)
    existingSecret:
      enabled: true
      secretName: nextcloud-pgsql-credentials
      usernameKey: username
      passwordKey: nextcloudPassword

If after that, you're still getting issues, please anonymize your values.yaml and open a new issue with that and other info about your environment, so we can take a further look. In your journeys, if you find any helpful info, please feel free to submit a PR and we can review it to make sure it helps others.

Code of Conduct and Contributing

Please remember that this repo is maintained by volunteers in the open source community, and we're doing our best. Be sure to read the official Nextcloud Code of Conduct. You can also read some of our contributing guidelines to get a feel for what's required in a given PR.

We are happy to help out when we have time, but open source work takes a community of people working together, so if something is broken or not working as expected, please be kind about reporting your issues, and please also feel free to help make it better. We're always happy to review PRs if you have found a solution or even just want to add documentation (even comments in the values.yaml can be really helpful!). If you encountered an issue, chances are others have as well, so it's always worth trying to submit a PR, even if it isn't perfect the first time around. We can collaborate together and iterate on it over time :)

from helm.

Skallwar avatar Skallwar commented on September 7, 2024

Have you succeeded? I'm trying to use PostgreSQL on my side but got an exec format error

from helm.

ghudgins avatar ghudgins commented on September 7, 2024

for what it's worth i'm interested! you can run this chart using the external DB option but there's no external redis option exposed

from helm.

Skallwar avatar Skallwar commented on September 7, 2024

I'm trying to use PostgreSQL on my side but got an exec format error

This made it work

postgresql:
  enable=true
  image:
    registry: docker.io
    repository: postgres
    tag: 13.1

from helm.

magsol avatar magsol commented on September 7, 2024

@Clashsoft So basically, stick with the bitnami images and... don't use arm64?

from helm.

rubencabrera avatar rubencabrera commented on September 7, 2024

I tried following @snowpoke's suggestion and Nextcloud runs without issues (so far, it's been a week of not very intense usage) in a Raspberry Pi cluster. The strange thing is that while using:

  values:
    externalDatabase:
      database: postgres
      enabled: true
...REDACTED...
      type: postgresql
    internalDatabase:
      enabled: false
...REDACTED...

My Nextcloud container installs with SQLite:

Installing with SQLite database
starting nextcloud installation
Nextcloud was successfully installed

I've got PostgreSQL in the same namespace from the cetic/postgresql chart too to try and reproduce the same, but that's being completely ignored. If I break that, Nextcloud is still happy with its own SQLite db.

from helm.

jessebot avatar jessebot commented on September 7, 2024

Looks like bitnami started supporting ARM :) bitnami/charts#7305 (comment)

from helm.

jessebot avatar jessebot commented on September 7, 2024

Bitnami now has arm architecture support for Redis, Postgres, and Mariadb, so I am going to close this. If you have further questions about anything else that was asked here, please feel free to open a new issue, or a PR if you'd like to change anything about our README/values.yaml.

Note: You can still submit a PR to change the bitnami charts to better charts if you have suggestions and have tested the alternatives.

from helm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.