# Backup gateway constantly reboots with error when installing a module in 8.3 redundancy mode

**URL:** <https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237>\
**Category:** Module Development\
**Created:** [April 24, 2026, 1:44pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237 "2026-04-24T13:44:49Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 24, 2026, 1:44pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/1 "2026-04-24T13:44:49Z")

</div>

Hey Inductive,

We're trying to develop a module that supports Redundancy in Ignition 8.3 like we did in 8.1.

We run 2 images of the gateway (v8.3.3), one for the primary and the other one for the backup. Then, once both gateways are up, we configure them as such:

Primary (running on [http://localhost:9081](http://localhost:9081), container name: ign-primary)

- Redundancy Settings
  - Mode=Master
  - Port=8060 (default)

- Network Settings
  - Require SSL=Off

Backup (running on [http://localhost:9082](http://localhost:9082), container name: ign-backup)

- Redundancy Settings: Mode=Backup
- Backup Node Settings:
  - Master Node Address=ign-primary
  - Port=8088
  - Use SSL=Off

Then, I wait until the connection looks good on both:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/a/2a0266ce72b2a087a697745b96cd4055d37d3017.jpeg)

Then I install the module in the master gateway.

The module we developed works well in independent mode, but when installed in redundancy mode, caused the backup to constantly reboot due to an error. So I tried with the dummy module provided on IA's GitHub :

[https://github.com/inductiveautomation/ignition-sdk-examples/tree/ignition-8.3/webui-webpage](https://github.com/inductiveautomation/ignition-sdk-examples/tree/ignition-8.3/webui-webpage)

I install it on the master gateway and get the same thing: I restart the master gateway and after a minute, the backup gateway restarts, then errors, then restarts, then errors, etc... for a total of 5 times I think, until it just stops trying.

Here are some error logs I could manage to get from the backup while it was up (REDACTED is mine, but it's just an IP address):

```python
-> outgoing local='ign-primary-backup' remote='ign-primary-master' method=handleConnectException: Connection attempt to 'ws://ign-primary:8088/system/ws-control-servlet?name=ign-primary-backup&uuid=14c4920f-d033-4459-ba0a-1cadffd9b0bb&serializer=protobuf&url=http://REDACTED:8088/system' failed! Verify that your host and port settings are correct. Error message='java.net.ConnectException: Connection refused'

-> outgoing local='ign-primary-backup' remote='ign-primary-master' method=handleConnectException: Connection attempt to 'ws://ign-primary:8088/system/ws-control-servlet?name=ign-primary-backup&uuid=14c4920f-d033-4459-ba0a-1cadffd9b0bb&serializer=protobuf&url=http://REDACTED:8088/system' failed! Response code='200', error message='org.eclipse.jetty.websocket.api.exceptions.UpgradeException: org.eclipse.jetty.websocket.core.exception.UpgradeException: Failed to upgrade to websocket: Unexpected HTTP Response Status Code: 200 OK'.

```

One thing I noticed that is weird is that initially in the top-left corner of the page, the backup gateway shows "ign-backup", but after its first restarts says "ign-primary"

Here's what it does (left is primary, right is backup):

So I'm wondering:

- Are modules supported in redundancy mode in 8.3?
- If so, did I simply misconfigure the redundancy and network settings at the beginning? Did I forget a step?

Sorry for the lengthy post, but I wanted to include as much details as possible. Let me know if you need any more.

Thanks!

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 24, 2026, 1:47pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/2 "2026-04-24T13:47:41Z")

</div>

Yes, v8.3 supports 3rd party modules in redundancy. Significant changes from v8.1, though.

Keep in mind that a "full resync" involves a backup gateway restart. If that chokes, the resync won't finish, and therefore a full resync is still needed.

Study your backup gateway logs carefully.

_Psssst!_ This forum is mostly **not** IA, though a few IA staff are regular contributors.

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 24, 2026, 3:17pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/3 "2026-04-24T15:17:21Z")

</div>

Hey, thanks for the reply.

It makes sense that a full resync involves a backup gateway restart given that module hot reloads are no longer supported in 8.3.

So, if 1) modules are supported in redundancy mode and 2) I'm using the module directly provided on IA's Github, then am I missing something in my redundancy/network configuration?

I tried to look at the gateway logs, but then the constant backup gateway restarts make it very hard to get a hold of them. I included what I could in my initial post.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 24, 2026, 3:19pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/4 "2026-04-24T15:19:14Z")

</div>

Which IA module? I have looked lately, but I don't recall seeing an example that implemented everything needed for redundancy synchronization.

> [@samuel.whittom](#):
>
> make it very hard to get a hold of them.

Look at the `wrapper.log` text file. As you noted, you cannot use the web interface to retrieve logs if it won't stay running.

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 24, 2026, 5:00pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/5 "2026-04-24T17:00:46Z")

</div>

I used this one:

[https://github.com/inductiveautomation/ignition-sdk-examples/tree/ignition-8.3/webui-webpage](https://github.com/inductiveautomation/ignition-sdk-examples/tree/ignition-8.3/webui-webpage)

You are right that it doesn't provide redundancy synchronization, but it's just a simple React page with barely any backend logic, which shouldn't need synchronizing. During the 8.1 module development, I don't recall having had to deal with synchronization logic for purely front-end stuff.

Thanks for the `wrapper.log` pointer, I'll try to see how I can get access to this file.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [April 24, 2026, 5:06pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/6 "2026-04-24T17:06:41Z")

</div>

Can you try 8.3.5, in case this is just an underlying sync bug that we've fixed?

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 24, 2026, 7:41pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/7 "2026-04-24T19:41:18Z")

</div>

Hey Paul, thanks for the reply.

Just tried and I'm getting the same thing with v8.3.5. Do you see anything wrong or missing with the configuration in my initial post?

Still trying to access wrapper.log in the container as Pturmel suggested, but no luck yet

```python
find / -type f -name "*.log"
find: ‘/home/ubuntu’: Permission denied
find: ‘/proc/tty/driver’: Permission denied
find: ‘/root’: Permission denied
find: ‘/var/cache/apt/archives/partial’: Permission denied
find: ‘/var/cache/ldconfig’: Permission denied
/var/log/alternatives.log
/var/log/apt/history.log
/var/log/apt/term.log
/var/log/bootstrap.log
/var/log/dpkg.log
/var/log/fontconfig.log

```

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [April 24, 2026, 8:47pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/8 "2026-04-24T20:47:00Z")

</div>

Docker images don't use the wrapper log, they log directly to the container as far as I remember.

---

<div class="post-metadata">

**Author:** ![mgross](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mgross/32/3311_2.png) [@mgross](https://forum.inductiveautomation.com/u/mgross)\
**Post date:** [April 24, 2026, 10:50pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/9 "2026-04-24T22:50:57Z")

</div>

You said that you were using Docker containers? I am wondering if the backup gateway is downloading the module from the master, but then the .modl file disappears from the backup container when it restarts. That would cause another sync attempt when the backup gateway comes back up. I did try my own custom module in some 8.3 docker containers, and it did sync the module properly across the gateways. So conceptually it should work. Also, you should be able to use a command like `docker logs my-backup-gateway` or `docker compose logs my-backup-gateway` (if using compose) to get the wrapper log text from a container.

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 27, 2026, 1:03pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/10 "2026-04-27T13:03:19Z")

</div>

Yes, possibly that is what happens. I remember in 8.1 I would sometimes get a "module version mismatch" error (or something similar) and maybe this is the 8.3 version of the same error.

If you succeeded in getting a module to work in redundancy mode in 8.3, do you mind sharing it (or a stripped down version of it)? Or see if you see anything wrong/missing with the configuration below?

Primary (running on [http://localhost:9081](http://localhost:9081/), container name: ign-primary)

- Redundancy Settings

- Network Settings

Backup (running on [http://localhost:9082](http://localhost:9082/), container name: ign-backup)

- Redundancy Settings: Mode=Backup

- Backup Node Settings:

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 27, 2026, 1:08pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/11 "2026-04-27T13:08:16Z")

</div>

Docker, while nice and quick for most things, I find difficult for module development. You cannot use the module install page on the gateway with Docker. Use VMs.

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 27, 2026, 1:15pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/12 "2026-04-27T13:15:47Z")

</div>

Hmm, I'm not sure what you mean by that. I use Docker to run the gateway, but the module is built outside of it. In the gateway, I install the .modl file in the Platform/Modules page. Did I understand correctly or maybe you meant something else?

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 27, 2026, 1:46pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/13 "2026-04-27T13:46:52Z")

</div>

I think this situation improved in 8.3... because I had the same initial thought, but then looked at the docs: [Docker Image Examples | Ignition User Manual](https://docs.inductiveautomation.com/docs/8.3/platform/docker-image/docker-image-examples#integrate-third-party-modules-after-an-upgrade)

> Third party modules installed through the web interface are automatically routed to the [external modules folder](https://docs.inductiveautomation.com/docs/8.3/appendix/reference-pages/gateway-configuration-file-reference/gateway-and-gateway-network-parameters#docker-image-external-modules-folder) within the data volume. This means no special consideration is required for these modules when upgrading Ignition to a newer image version.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 27, 2026, 1:46pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/14 "2026-04-27T13:46:59Z")

</div>

~~You have to go through a bunch of hoops to get modules to persist in Docker if installing through the gateway web page.~~ The instructions for modules in Ignition's docker image requires bind mounting the module file or constructing a custom image with the 3rd party module file in place. Then putting the module ID in the appropriate environment variable.

It is not conducive to quick testing, in my experience. VMs with permanent installs of Ignition are much easier to work with for module development.

> [@Kevin.Herron](#):
>
> situation improved in 8.3

Hmmm. May have to try again.

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 27, 2026, 1:50pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/15 "2026-04-27T13:50:15Z")

</div>

I'll try to see if I can have a VM set up to test that. I am not convinced it is that though, as I also developed the 8.1 module using a gateway deployed with Docker and I didn't have these issues in redundancy mode. Just the very occasional "module mismatch" error I was talking about earlier.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 27, 2026, 1:50pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/16 "2026-04-27T13:50:36Z")

</div>

@mgross any ideas? Is it possible something about third party modules in Docker and redundancy is broken?

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 27, 2026, 8:09pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/17 "2026-04-27T20:09:14Z")

</div>

Giving some more context:

We tried installing the WebUI tutorial module (the one from IA's GitHub) on the gateway deployed on a VM using the same steps and parameters as we did on Docker and redundancy worked. So it looks like it's something with Docker/redundancy/third-party modules.

---

<div class="post-metadata">

**Author:** ![bmusson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/bmusson/32/87530_2.png) [@bmusson](https://forum.inductiveautomation.com/u/bmusson)\
**Post date:** [April 29, 2026, 11:17am UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/18 "2026-04-29T11:17:15Z")

</div>

I do all my development on docker, and have never run into this problem. I don’t do anything with redundancy though.

---

<div class="post-metadata">

**Author:** ![samuel.whittom](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@samuel.whittom](https://forum.inductiveautomation.com/u/samuel.whittom)\
**Post date:** [April 29, 2026, 7:08pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/19 "2026-04-29T19:08:31Z")

</div>

Yes, the issue is specific to redundancy.

---

We found the issue and now it even works in Docker.

First, we tried installing the module on both gateways instead of just the master and it worked. That means it had to be an issue with how Ignition replicates the module from master to backup.

Then, we tried signing the module and only installing it on master and it worked. We don't sign when we develop (we use `-Dignition.allowunsignedmodules=true`) but it looks like the flag is ineffective in redundancy mode.

@Kevin.Herron @paul-griffith @mgross Our conclusion is that it looks like the installed module is not properly replicated from the master to the backup gateway when it is unsigned, even if both gateways run with flag `-Dignition.allowunsignedmodules=true` . That seems to be a bug on Ignition's side.

cc @pturmel

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 29, 2026, 7:19pm UTC](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237/20 "2026-04-29T19:19:07Z")

</div>

I always sign in my build process, so I never would have found this.

[Next page](https://forum.inductiveautomation.com/t/backup-gateway-constantly-reboots-with-error-when-installing-a-module-in-8-3-redundancy-mode/115237.md?page=2)
