I’m a generalist SysAdmin. I use Linux when necessary or convenient. I find that when I need to upgrade a specific solution it’s often easier to just spin up an entirely new instance and start from scratch. Is this normal or am I doing it wrong? For instance, this morning I’m looking at a Linux VM whose only task is to run Acme.sh to update an SSL cert. I’m currently upgrading the release. When this is done I’ll need to upgrade acme.sh. I expect some kind of failure that will require several hours to troubleshoot, at which point I’ll give up and start from scratch. I’m wondering if this is my ignorance of Linux or common practice?

  • ikidd@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    Dockerfile, especially for something like a CLI app like that. Change your dockerfile and rebuild when you need to upgrade.

  • hperrin@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    If you’ve designed everything correctly, then yes, it should be much easier to deploy a new instance on a new machine than to upgrade an existing machine.

  • Kadath (she/her)@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    It depends on what you need to upgrade/do. I usually upgrade stuff, but at the same time I also have templates in case I quickly need to spin up something new.

    If that’s the case, I seed the new instance whatever conf files are needed and I am up and running quickly. Consider that in my work environment we rarely use containers (more of a philosophy at this point than a real reason, since we also have a relatively big K8s cluster for big data).

    Linux sysadmin here, for the past 25 years.

  • kevincox@lemmy.ml
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    1 year ago

    I think yes. In general if you have good setup instructions (preferably automated) then it will be easier to start from scratch. This is because when starting from scratch you need to worry about the new setup. But when upgrading you need to worry about the new setup as well as any cruft that has been carried over from the previous setup. Basically starting clean has some advantages.

    However it is important to make sure that you can go back to the old working state if required. Either via backups or leaving the old machine around working until the new one has been proven to be operational.

    I also really like NixOS for this reason. It means that you can upgrade your system with very little cruft carrying over. Basically it behaves like a clean install every update. But it is easier to roll back if you need to.

  • ShortN0te@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Both sides are absolutely valid. A complete new install is very easy when you only need to run a few scripts. A small setup with minimal dependencies should also not break that easily when you upgrade your distro release.

    I personally always make sure that the way i do things in a distro is the way they intended. That’s how i keep my minimalistic Arch install and multiple larger Debian deployments going for years.