Kubernetes not visible in cluster join type during Confluence Cluster setup
Asked by KUNG MIN PARK:

What I discovered while migrating and using a single Confluence used in Docker to Kubernetes

If you look at the Cluster Setup screen, you can designate the cluster communication method through options such as 'multicast', 'tcp/ip', and 'aws'.

However, during the migration, I confirmed that it was not easy to set up using any method(multicast, tcp/ip, aws) while configuring Standalone -\> Cluster on Kubernetes.

The web console, the confluence.clustering.enabled entry in values.yaml, etc. were of no use.

Then, when helm chart was installed as a new build rather than migration, an item called kubernetes was found in cluster.join.type in confluence.cfg.xml, and when changed to that value, the existing standalone -\> cluster setting was perfectly performed.

Please add cluster setup screen - join configuration - **kubernetes** to the image in Docker Hub.


Answers:
author: KUNG MIN PARK
body: I remembered

I remembered that values.yaml had the following entry:

# -- The Docker entrypoint.py generates application configuration on  
# first start; not all of these files are regenerated on subsequent starts.  
# By default, confluence.cfg.xml is generated only once. Set \`forceConfigUpdate\` to true  
# to change this behavior.  
#  
forceConfigUpdate: true

<br />

After setting confluence.cluster.enable=true with the corresponding part and deploying the helm chart, the confluence cluster setup screen appears. There are only multi-cast, tcp/ip, and aws in the join configuration, but kubernetes there were no select box.

When I actually tested it, everything except kubernetes(join type) didn't work.

This is based on a migration (Docker to Kubernetes), not a new installation.


author: Yevhen
body: My bad, it's ATL_FORCE_CFG_UPDATE. See: <https://hub.docker.com/r/atlassian/confluence>

confluence.cfg.xml in local home is generated only if the file does not exist <https://bitbucket.org/atlassian-docker/docker-atlassian-confluence-server/src/cda8d93331e361c5d88ea7c1b369f6e0e1f39946/entrypoint.py#lines-18>. This behavior can be changed with ATL_FORCE_CFG_UPDATE=true.


author: KUNG MIN PARK
body: As for the UPDATE_CFG=true option, I couldn't find it in any guides I could find.

Now, since there is a confluence cluster that I have successfully set up after trial and error, I cannot check right now whether the update is performed perfectly by putting UPDATE_CFG=true.

However, I could see confluence.cfg.xml being updated even without UPDATE_CFG=true setting.

But it's not even set perfectly or somehow.

Many engineers simply do cluster setup on the web.  
If you add kubernetes to the join configuration on the screen that appears when you restart after cluster setup, it will change more intuitively.


author: Yevhen
body: Hi [@KUNG MIN PARK](/t5/user/viewprofilepage/user-id/5298117) when you migrated an existing installation, did you enable clustering right away? If you didn't, next time you set clustering.enabled=true, you also need to pass env var UPDATE_CFG=true, because by default if confluence.cfg.xml exists in local-home, image entrypoint won't update it.


Tags: server