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

Initial bootstrapping thoughts #5

Open
klauer opened this issue Jun 20, 2023 · 0 comments
Open

Initial bootstrapping thoughts #5

klauer opened this issue Jun 20, 2023 · 0 comments

Comments

@klauer
Copy link
Contributor

klauer commented Jun 20, 2023

Background

Installing on a new, fresh-from-Beckhoff PLC (not a VM) isn't as easy as I'd like. There is only one option for the engineer at the moment:

Grab a keyboard/monitor, hook it up to the PLC, power it on and theN:
* Log in and manually enable SSH
* Run ansible bootstrap/provision
* Activate/download your project, ...

I see a couple possibilities at the moment:

Options I'm considering at the moment

Option 1: the "bootstrapping station"

  • We come up with a PLC bootstrapping/"imaging station" where you can bring your PLC to get set up initially
  • Pop in the CF card with an existing TwinCAT/BSD installation and then it automatically modifies sshd settings to allow for password-based logins
  • Boot the PC, run ansible (no monitor, keyboard, or special knowledge required)

Option 2: the PCDS-specific PLC image

  • We first install TwinCAT/BSD in a VM with a standard disk size (40GB or whatever we ordered)
  • Provision the VM using ansible steps here, make a disk image of the result
  • Let users install working image onto PLCs with balenaEtcher, dd, etc.
  • Final provisioning by way of ansible (package update, Net ID, routes)
  • Similar to the existing PLC image tool, flash the CF cards

I suppose this could be combined with (1) as a centralized place to do the flashing.

Option 3: leave it complicated

  • Teach engineers how to do the steps manually
  • Provide support if/when things get confused

Notes

  • IT's role in this is still not entirely clear
  • Their help may be required before/during/after the above steps
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant