Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate partners to staging #358

Open
haphut opened this issue Sep 19, 2023 · 0 comments
Open

Migrate partners to staging #358

haphut opened this issue Sep 19, 2023 · 0 comments
Assignees
Labels
continuity Continuity management

Comments

@haphut
Copy link
Contributor

haphut commented Sep 19, 2023

Current state:

  • staging services use the staging MQTT broker. As they should.
  • mqtt-pulsar-forwarder for dev environment listens to the MQTT broker in the pilot prod environment (dev.mqtt.apc.lmj.fi). Not ideal.
  • Waltti Raportointi and Waltti RTPI subscribe to the MQTT broker of the dev environment. Not ideal.

Target state:

  • mqtt-pulsar-forwarder in the dev environment listens to the MQTT broker of the dev environment.
  • Pilot APC devices in vehicles are connected to the MQTT broker in the staging environment.
  • The development environments of Waltti Raportointi and Waltti RTPI subscribe to the MQTT broker in our staging environment.
  • Pilot environments are removed (K8s cluster sandbox-autopilot, MQTT broker at dev.mqtt.apc.lmj.fi, StreamNative instance waltti).

(Future target state when prod is up:

  • Some APC devices might get promoted from staging to prod if they behave. This would require them to change MQTT broker URL and credentials.
  • The production environments of Waltti Raportointi and Waltti RTPI subscribe to the MQTT broker in our prod environment.)

Steps to target state:

  1. We need a temporary pulsar-mqtt-forwarder structure to push MQTT messages from the staging environment to the MQTT broker in the dev environment. That way there is no loss of data for MQTT subscribers on the MQTT broker in the dev environment even when APC devices send their results to staging. Copy-paste-sed job.
  2. CNAME pilot MQTT broker -> staging MQTT broker
  3. When data from all APC devices is received to staging instead of dev, inform Waltti Raportointi and Waltti RTPI to switch to staging MQTT URL and new usernames and passwords.
  4. When Waltti Raportointi and Waltti RTPI have done the switch, remove temporary pulsar-mqtt-forwarder structure from staging.
  5. Inform pilot partners to switch from pilot MQTT broker URL to staging MQTT broker URL. No need to rotate their credentials but we need to make sure they can connect to staging with existing credentials.
  6. Remove pilot environments.
  7. Remove DNS record for dev.mqtt.apc.lmj.fi .
@haphut haphut converted this from a draft issue Sep 19, 2023
@haphut haphut added the continuity Continuity management label Sep 19, 2023
@HannesVertics HannesVertics self-assigned this Sep 25, 2023
@pnupu pnupu moved this from Shaping 🎨 to In progress 🏃 in Waltti-APC board Nov 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
continuity Continuity management
Projects
Status: In progress 🏃
Development

No branches or pull requests

2 participants