this post was submitted on 26 Jan 2024
202 points (95.9% liked)

linuxmemes

26273 readers
922 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
  • Don't get baited into back-and-forth insults. We are not animals.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn, no politics, no trolling or ragebaiting.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
  • 5. πŸ‡¬πŸ‡§ Language/язык/Sprache
  • This is primarily an English-speaking community. πŸ‡¬πŸ‡§πŸ‡¦πŸ‡ΊπŸ‡ΊπŸ‡Έ
  • Comments written in other languages are allowed.
  • The substance of a post should be comprehensible for people who only speak English.
  • Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
  • 6. (NEW!) Regarding public figuresWe all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations.
  • Keep discussions polite and free of disparagement.
  • We are never in possession of all of the facts. Defamatory comments will not be tolerated.
  • Discussions that get too heated will be locked and offending comments removed.
  • Β 

    Please report posts and comments that break these rules!


    Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.

    founded 2 years ago
    MODERATORS
     
    you are viewing a single comment's thread
    view the rest of the comments
    [–] MeanEYE@lemmy.world 25 points 1 year ago (8 children)

    I see Ansible as necessary evil. Not requiring server-side installed tools to work is great. But choosing yaml of all things for playbooks is downright vile. So there's nothing casual about administering that many servers and machines, especially with constant warnings about Python version incompatibility.

    [–] Technus@lemmy.zip 10 points 1 year ago* (last edited 1 year ago) (2 children)

    If we ever meet an advanced alien society, I really want to see what solutions they came up with for:

    1. Configuration languages
    2. GUI frameworks

    Because those two areas seem like there will never be a "perfect" solution.

    And to anyone that says "an alien society might be so different that they don't have those things", I think if you've invented computers then at some point you will want some way to configure them, and some way to interact with programs running on them.

    If they navigate programs entirely by sound or some shit, that'd still be interesting to see.

    Watch it turn out that most advanced alien societies just use the terminal.

    [–] Feathercrown@lemmy.world 1 points 1 year ago

    Excellent observation. I'm honestly surprised there's no well-known "universal parser" for common languages that can handle JSON, YAML, TOML, maybe even some form of XML, etc.

    [–] Buddahriffic@lemmy.world 1 points 1 year ago

    Then it turns out the reason they are exploring the depths of space is to see if any other civilizations have figured out a better way to handle those things because their current solutions work but kinda suck (along with several other problems we can't yet fathom). And worse, they get excited when you start describing our systems.

    "Wait wait wait, please tell me more about this... stack... that allows you to reuse code with different initial values for variables. That sounds revolutionary!"

    [–] rtxn@lemmy.world 8 points 1 year ago* (last edited 1 year ago) (1 children)

    I don't particularly like yaml as a data storage language because of its use of significant whitespaces, but for the minimal complexity of my own playbooks, I don't mind it.

    What would you consider to be an ideal language for playbooks?

    [–] MeanEYE@lemmy.world 0 points 1 year ago (1 children)

    Am not sure to be honest. I always liked JSON even though it's very rigid. Even so, most of software I write stores config in JSON simply because it's easy to parse and it's supported by literally everything. It's also pretty minimalist.

    Perhaps something more strict and defined would be better. I think I'd even prefer XML to YAML.

    [–] rtxn@lemmy.world 3 points 1 year ago* (last edited 1 year ago) (1 children)

    You can use JSON to write the playbooks, then use a program like yq (which is a Yaml wrapper for jq) to convert it to Yaml. Something like

    cat playbook.json | yq --yaml-output > .temp_playbook.yml
    ansible-playbook .temp_playbook.yml
    
    [–] MeanEYE@lemmy.world 1 points 1 year ago (1 children)

    I did not know that. That's a useful one. Does it work the other way around?

    [–] rtxn@lemmy.world 2 points 1 year ago

    Yes, both yq and jq are fantastic programs.

    yq can take either JSON or Yaml (or maybe others, I haven't checked) as input, then it converts it to JSON before passing it to jq. yq outputs JSON by default, or Yaml if you pass it the --yaml-output option.

    [–] corsicanguppy@lemmy.ca 4 points 1 year ago (1 children)

    You know, for how stale its entire idea is, Ansible isn't bad. I code fucking yaml daily.

    Having said that, It's a generation behind its competition on terms of everything except calendar age. Fuck's sake, it grew from the same incubator that spawned mgmtConfig, which is as better than chef/cinc/salt/puppet as those are better than ansible. It was born with its own grandson, if there was any shared dna.

    Using Ansible is like working with Unfrozen Caveman Lawyer. Each day it grows more clunky, more waddling with the bags on its side, more obsolete. It's the 50-foot coiled rj-12 cable of config management.

    [–] MeanEYE@lemmy.world 1 points 1 year ago

    For us Ansible works and code that we have is getting dated now, but every now and then it does get a little bit of refresh to give it more life but in general you are right. Its bad sides mainly show up when you try to manage older systems or something more exotic. Then python incompatibilities, directories and server side libraries all start showing their ugly side.

    [–] Nomecks@lemmy.ca 2 points 1 year ago (1 children)

    YAML is used across a lot of modern technologies. I would imagine using YAML makes it easier to learn for a lot of DevOps type people.

    [–] taladar@sh.itjust.works 3 points 1 year ago

    And all of them are universally bad. Especially all the Kubernetes tools, Helm is so bad and at least half of it is due to the combination of YAML and templating.

    [–] bluey@lemmy.world 1 points 1 year ago (1 children)
    [–] MeanEYE@lemmy.world 1 points 1 year ago

    Thanks, I'll take a look.

    [–] possiblylinux127@lemmy.zip 1 points 1 year ago

    I love yaml so maybe its just a matter of personal choice.

    [–] Djtecha@lemm.ee -1 points 1 year ago (1 children)

    Isn't all of these tools dying with k8s? Like the entire concept of installing a playform for your service is moot at this point. Plus there's like a million other benifits over bare metal configs.

    [–] MeanEYE@lemmy.world 1 points 1 year ago (1 children)

    Nope. Far from it, especially if you have to adapt to existing structure, like having sites hosted with Plesk or cPanel on some rented hosting service. I've been also using it for easy and fast configuration of embeded devices, like RaspberryPi and similar.

    [–] Djtecha@lemm.ee 1 points 1 year ago

    Sure, legacy exists but as a systems principal engineer I would always look to improve the platform. Puppet/chef/ansible all the problems those solved are kind of moot with a kubernetes ecosystem. The only thing they might be useful for would be installing the software to get those nodes added and maybe security updates in you're running 1k+ of bare metal. And something that could all be solved with something light like dancers shell. At home I've even just moved to k3 since the containerize is just so much more consistent. Ansible not maintaining state is also a massive headache.