Controller downtime

Incident Report for Twingate

Postmortem

Components impacted

Controller

Summary

The controller was unavailable to service new authentication requests from approximately 15:17 to 15:19 UTC. The result was that during this period of time, new connection requests were rejected. Existing connections were not impacted. At the end of the outage period, normal service resumed with no remediation required.

Root cause

Leading up to the start of the outage period, automated monitoring alerted us to spikes in memory usage. At approximately 15:16 UTC we introduced a change to our cluster that was intended to increase memory availability. At approximately 15:17 UTC as this change was rolled out, it had the unintended consequence that resulted in a decrease in service availability, with the resulting rejection of most requests.

Corrective actions

At 15:18 UTC, seeing the decrease in service availability, we reverted the change and simultaneously made additional hardware available to the cluster. Normal service resumed approximately 45 seconds later as the change propagated.

Looking ahead, we plan to:

  1. Investigate introducing decoupling between inbound requests and our backend as the likely cause of the memory spikes that triggered the change that caused the outage.
Posted Jul 30, 2021 - 01:00 UTC

Resolved

This incident has been resolved.
Posted Jul 29, 2021 - 17:00 UTC

Update

The system is now confirmed as fully operational.

We are working on an incident report and taking steps to ensure that this issue will not happen in the future.
Posted Jul 29, 2021 - 16:00 UTC

Monitoring

We're resolved the immediate issue by adding additional processing capacity and increasing memory limits on our controller infrastructructure.
Posted Jul 29, 2021 - 15:17 UTC

Identified

We've identified the issue, which is being caused by excessive memory usage on our infrastructure.
Posted Jul 29, 2021 - 15:15 UTC
This incident affected: Control Plane (Connector Heartbeat).