atlassian / data-center-helm-charts

Helm charts for Atlassian's Data Center products
https://atlassian.github.io/data-center-helm-charts/
Apache License 2.0
154 stars 132 forks source link

[Suggestion] - Shared home should not be removed from synchrony [revert request for #745] #775

Closed SuperWonjune closed 6 months ago

SuperWonjune commented 6 months ago

Suggestion

Hello,

I am creating this issue to request the restoration of the code that removed the synchrony shared-home mount, which was reflected in the Confluence 1.18 chart. ( https://github.com/atlassian/data-center-helm-charts/issues/745 )

Atlassian DC Helm Chart Docs are guiding on how to use External Libraries that are not included in the image due to licensing issues for the Data Center Helm Chart, as shown in the link below: https://atlassian.github.io/data-center-helm-charts/examples/external_libraries/EXTERNAL_LIBS/

We use MySQL as Confluence DB, and since same mysql library is required on all synchronized nodes, it is implemented by creating a subdirectory in shared-home, copying the mysql driver into that directory, and then adding it as an external library on each node.

nfsPermissionFixer:
  command: |
    if [[ ! -f /shared-home/drivers/mysql-driver.jar ]]; then
      mkdir -p /shared-home/drivers
      apk add dpkg
      wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java_8.0.26-1debian10_all.deb
      dpkg-deb -R mysql-connector-java_8.0.26-1debian10_all.deb /tmp/
      cp /tmp/usr/share/java/mysql-connector-java-8.0.26.jar  /shared-home/drivers/mysql-driver.jar
    fi
    chgrp 2003 /shared-home; chmod g+w /shared-home

In synchrony value files, we are utilizing the code below:

synchrony:
  enabled: true
  replicaCount: 2
  additionalLibraries:
    - volumeName: shared-home
      subDirectory: drivers
      fileName: mysql-driver.jar

When upgrading the chart to 1.18, there is currently an error where synchrony is not working properly since it cannot find shared-home directory.

I believe that there is a potential risk that synchrony may not work properly after the helm chart upgrade, as many users, including myself, use MySQL for Confluence DB and are expected to use the mysql driver in the following manner in synchrony.

Product

Confluence

Code of Conduct

bianchi2 commented 6 months ago

@SuperWonjune thanks for raising this issue. We'll revert the removal of shared home volume. In the meantime you can declare a shared home additional volume (emptyDir)

bianchi2 commented 6 months ago

Fixed in 1.18.1