r/devops • • 15h ago

Discussion AI Identity Crisis

71 Upvotes

I'm a senior with loads of years, i've been doing devops/sre and systems engineering in the cloud for a long time. recently i volunteered for a project that i knew would lean heavily on claude, and with my manager's enthusiasm and support it looks like the project will be a success. aside from not truly owning that success, i'm also more than a little concerned that the 10K lines of code that i've slopped out, while mostly robust and functional, may not be personally defensible or supportable by me. this is a "career first feeling" for me, and i'm wondering if others have had similar experiences recently. is this just the way it is? maybe i should just treat it like "i started a new job and inherited a bunch of new libraries" when things come up? I'm not really sure how this is going to end.


r/devops • • 14h ago

Ops / Incidents LiteLLM Compromised again - 1.107.0. PyPI Installs a Credential Stealer and Backdoor

52 Upvotes

r/devops • • 3h ago

Ops / Incidents Railway's security incident is more serious than a normal outage. Customer environment variables may have been exposed.

25 Upvotes

I've been following the Railway situation since the outage started, and things have gotten pretty concerning.

I'm currently using Railway to host the backend of a small gaming marketplace I've been building. Like many developers, I initially thought this was another infrastructure outage affecting builds and deployments.

But on October 21, Railway published a security disclosure confirming something much more serious.

According to their statement, they detected anomalous activity involving systems responsible for storing customer environment variables.

Their investigation suggests an unauthorized third party may have accessed encrypted environment variables and, in some cases, obtained their decrypted contents.

That's a serious concern for anyone hosting production applications on Railway.

What Railway has disclosed so far

  • Suspicious activity was detected in systems storing customer environment variables.
  • An unauthorized third party may have accessed encrypted secrets and obtained some decrypted values.
  • The impact may be limited to a subset of customers, although the investigation is ongoing.
  • Railway is recommending that all customers rotate their stored credentials, including API keys and database credentials.
  • Deployments have been paused during the investigation.
  • Railway believes the incident may be connected to a broader campaign targeting platform companies and AI inference providers.
  • Railway has also started automatically rotating its bucket credentials and resetting certain integration credentials.

As of the latest update I've seen, deployments remain paused.

My biggest concern is how developers are supposed to rotate production credentials during an outage like this.

Think about a small startup running its entire backend on Railway.

You might have PostgreSQL credentials, JWT secrets, payment API keys, SMTP credentials, webhook secrets, and other sensitive information stored as environment variables.

Now imagine being told that some of those credentials may have been exposed and that you should rotate everything immediately.

That's obviously the correct security recommendation.

But there's a problem.

If you revoke your current database credentials or payment API keys before your running backend can use the replacements, you risk breaking critical functionality.

And when deployments are paused, rolling out those changes becomes much more complicated.

At the same time, leaving potentially compromised credentials active is also risky.

For solo developers and small teams without dedicated infrastructure engineers, this is not a simple situation.

What I've personally done so far

I've reviewed my Railway account sessions, signed out older sessions, and inspected my existing environment-variable configuration.

Everything appears normal from my side.

But I understand that simply checking whether the variables still exist doesn't prove they weren't accessed.

An attacker could potentially copy credentials without modifying anything visible in the dashboard.

I haven't received confirmation that my particular project was affected, and I'm preparing to rotate my sensitive credentials carefully.

The bigger issue is trust in managed infrastructure.

One of the reasons developers use services like Railway is that they don't want to manage every part of their infrastructure manually.

We trust these platforms to handle deployment infrastructure and provide secure storage for sensitive configuration.

Of course, no platform can guarantee perfect security.

But when the infrastructure responsible for storing customer secrets is potentially compromised, the impact can extend far beyond the hosting provider itself.

A stolen database password could potentially allow unauthorized data access, depending on network restrictions and database permissions.

A stolen API key could allow unauthorized operations or unexpected charges.

A compromised authentication secret could potentially affect user sessions, depending on how the application implements authentication.

None of this automatically means these things happened to Railway customers. These are potential consequences of exposed credentials.

And that's exactly why the incident deserves serious attention.

There are still several questions I'd like Railway to answer.

  1. What was the actual entry point used by the attacker?
  2. How could encrypted environment variables potentially be decrypted?
  3. Was this caused by compromised internal credentials, an infrastructure vulnerability, or something else?
  4. How many customers or projects were actually affected?
  5. Was there any evidence of attackers accessing customer databases directly?
  6. What time period should developers investigate when reviewing suspicious activity?
  7. What additional security measures will Railway introduce to prevent this from happening again?

I appreciate that Railway disclosed the incident and started providing recovery guidance.

But until the full scope is known, it's difficult for developers to understand their actual exposure.

I'm curious how other Railway users are handling this.

Have you already rotated all your production credentials?

Have you noticed any unusual database activity, suspicious API calls, or unexpected service charges?

Has Railway contacted you directly about your project being affected?

Are you waiting for deployments to resume before rotating certain credentials, or have you temporarily disabled critical functionality?

And probably the biggest question: Has this incident changed your trust in Railway, or do you still plan to keep your production applications there?

I'm not trying to spread panic or suggest that every Railway project has been compromised.

I'm sharing this because I'm running a real application on the platform, and I know other independent developers and small teams are in a similar position.

I'd like to hear how others are approaching the security risks and what precautions they're taking.

Hopefully, Railway publishes a detailed technical postmortem once the investigation is complete.


r/devops • • 17h ago

Tools ‎How do you simulate realistic user traffic in load testing?

24 Upvotes

‎We are looking to overhaul our load testing, since our current script only slams 10k users in 60 seconds and gives us garbage data. It exhausts connection pools and creates artificial bottlenecks that would not show under any kind of normal use case.

‎Real users ramp up slowly, and idle on pages, and don't jump from one to another without a second thought, they do not fire off database transactions with zero pause.

‎We should be reflecting real behavior, not inducing cold start failures.

‎Has anyone modeled this at scale? Should we make the step curves with warm up times to let caches and other systems warm up before hitting the expected load? We want to reflect real user behaviour, not just trigger cold start failures.

‎


r/devops • • 13h ago

Discussion Learning in the AI era...

12 Upvotes

Mid level engineer , who landed and worked my way up into the role. I wont lie and pretend I know everything, some topics I'm still working on, hell I haven't even touched Kubernetes yet, so you can imagine I feel way FREAKING behind.

It seems like everything is quickly adopting and using AI, from downloading models locally, to use and play with them to using them to learn , to using the next leading edge models. How are you all having time for this....

I want to start using AI more confidently but I am not sure where to even start. Local models vs generate chat models via gui in chatgpt or Claude...are there any trainings you guys recommend?

I'm also weary of using AI to learn cause I do know it hallucinates, but also I dont want to feed it and let it spit out answers for me whenever I am just learning how to implement something.

This is developing so fast, I feel like I need to start putting guardrails up for my own sake of learning and sanity, else I will lose knowledge and become a Senior Devops Prompt Engineer lol...jokes aside open to how you are all trying to navigate this, from learning with and without, what guardrails are you implementing , and any learning material would be appreciated.


r/devops • • 1h ago

Ops / Incidents How to learn devops quickly?

• Upvotes

I've been teaching myself DevOps for the past few months and I've hit a wall where I'm not sure if I'm actually making progress or just hoarding tutorials. I'd really appreciate some honest input from people who do this for a living.

A bit about my background:

  • I come from a non-traditional background (not a CS degree) and currently work in a cloud-adjacent role.
  • I'm comfortable on the Linux command line — bash scripting, file permissions, processes, basic systemd.
  • I understand networking fundamentals: DNS, HTTP, TCP/IP, ports, SSH.
  • I know Git reasonably well (branching, merging, pull requests).
  • I can read and write basic Python for small automation scripts.
  • I've built a few Docker images and used docker-compose for local setups.

What I've been doing so far: I've been following a mix of YouTube courses, roadmap.sh, and random blog posts. The problem is everything feels scattered — one tutorial says "learn Kubernetes now," another says "master Terraform first," and I keep bouncing between tools without finishing anything end-to-end.

Where I'm stuck / my actual questions:

  1. Order of learning — After Docker, what should come next? Kubernetes, CI/CD, or Terraform? I keep seeing conflicting advice and I don't want to waste months on the wrong thing.
  2. Depth vs. breadth — Is it better to go deep on one cloud provider (I'm leaning toward AWS) or to understand a bit of everything first? I'm worried about becoming a "jack of all tools, master of none."
  3. Kubernetes — Do I need it to get a first junior/entry-level role, or is it something I can learn on the job? It feels massive and intimidating.
  4. Projects — What kind of portfolio project actually impresses hiring managers? I'd rather build one solid, realistic project than ten toy demos. Any concrete suggestions?
  5. CI/CD — Is GitHub Actions a good enough place to start, or should I learn Jenkins/GitLab CI because that's what companies actually use?
  6. The gap no one talks about — What skills do self-taught people like me usually miss that become obvious the moment you're on a real team? (On-call? Incident response? Reading someone else's messy infrastructure?)

What I'm hoping to get out of this post: A realistic, prioritized path for the next 3–6 months, and a gut-check on whether my foundation is solid enough to start applying for junior roles — or if I'm kidding myself.

I'm genuinely putting in the hours here, I just don't want to spend them in the wrong places. Any advice, resources, or "I wish someone had told me this earlier" stories would mean a lot. Thanks in advance 🙏


r/devops • • 6h ago

Discussion Mantle for API Maintenance

0 Upvotes

Just came across this software called Mantle on Product Hunt. Apparently, it detects breaking API changes in your GitHub repo and suggests code fixes before they break your integrations in production.

Seems interesting, especially for APIs where keeping up with changes is such a waste of time. Has anyone here actually tried it? Curious how well it works.


r/devops • • 10h ago

Tools Would you use a Go-based Ansible alternative with HCL configs?

0 Upvotes

I'm considering building an open-source server configuration tool in Go,

in the space of Ansible. Nothing is built yet, I'm checking whether the

idea makes sense.

The idea:

- one binary, no Python, connects to servers over SSH

- configs in HCL (like Terraform) instead of YAML + Jinja

- `plan` shows a diff of what will change, then `apply` does it

- later maybe a small optional agent on the server for when SSH is blocked

Target: small fleets and homelabs, not replacing Ansible for everyone.

Questions:

  1. What annoys you most about Ansible?
  2. Would you try something like this, or is the module ecosystem a dealbreaker?
  3. Is an optional agent useful, or would you stick to SSH only?

Honest criticism welcome. Thanks!


r/devops • • 11h ago

Tools Ansible-like tool in Go with HCL configs and plan/apply: would you use it? (feedback wanted, no code yet)

0 Upvotes

Hi all,

I'm thinking about building an open-source tool for configuring servers

(installing packages, managing config files, restarting services),

something in the space of Ansible, but written in Go. Nothing is built

yet, I want to check whether the idea makes sense before I invest time.

What bugs me about Ansible:

- YAML pretends to be a programming language: `when:`, `loop:`, Jinja

inside strings, and a long list of variable precedence rules

- it needs Python on every machine and can be slow

- you can't see clearly what will change before you run it

What I'd like to build:

- one Go binary, no Python, easy to install

- configs in HCL (the same language as Terraform) instead of YAML + Jinja

- `plan` shows what would change (with a diff), then `apply` does it,

just like Terraform

- resources reference each other and form a dependency graph, instead of

running strictly top to bottom

- idempotent: running it twice changes nothing the second time

Two ways to reach your servers:

  1. Over SSH. You run the tool on your laptop, it connects to the servers,

    and nothing needs to be installed on them. This is the first thing

    I'd build.

  2. Optionally, a small agent: the same binary, running on the server as

    a service and listening on a port. Useful when SSH is locked down,

    blocked by a firewall, or you just don't want to expose it. The

    resource code would be identical in both modes, only the way of

    delivering commands differs. This would come later, and the

    communication would be encrypted and authenticated (mutual TLS).

Here is how an nginx setup could look:

package "nginx" {

state = "present"

}

file "/etc/nginx/nginx.conf" {

source = "files/nginx.conf"

mode = "0644"

require = [package.nginx] # install the package first

notify = [service.nginx] # reload nginx if this file changes

}

service "nginx" {

enabled = true

state = "running"

require = [package.nginx]

}

Run `plan` on a fresh server and it shows: package will be installed,

file will be created, service will be enabled and started. Run `apply`

and it happens. Run `apply` again and it says "0 changes". Edit the

config file and `plan` shows the diff and a pending service reload.

What I'm NOT trying to do: replace Ansible for everyone. Ansible's huge

module ecosystem is its real strength, and I can't compete with that. The

target is small fleets, homelabs and people who like simple tools.

I'd love honest feedback, including "I wouldn't use this":

  1. What annoys you most about Ansible (or whatever you use today)?

  2. Would you try something like this, or is the lack of modules a

    dealbreaker?

  3. Is the optional agent (a small service on the server) useful to you,

    or would you rather stick to SSH only?

  4. Which resources would you need first besides file, package, service

    and command?

  5. HCL or something else? Would you prefer another format?

Not selling anything: it's open source and there's nothing to download

yet. Thanks for reading!


r/devops • • 8h ago

Discussion ADO as documentation?

0 Upvotes

Is ADO bullshit? Because I feel like the way our it department is using it is bullshit. I work on a data analytics team who has to use data created by IT.

Where's the documentation for this script? "It's in ADO". Who's the customer? Why did they request this change? "It's in the ADO".(No it isn't, it's in someone's email inbox somewhere).

What's the overarching structure/purpose for this screen? "We don't document that anymore, it's in [I shit you not] the individual ADO tickets that built the screen". You can NOT be serious. No one wants to read every individual ticket turning features off and back on to figure out what the current state is. There's no universe in which this is remotely coherent.

Also, the vast majority of the screens were built before the ADO went live, so we have old school documentation that was last updated in 2019 establishing the purpose and basic design of 80% of screens but then the current state is old documentation plus any ticket affecting that screen layered on top that old documentation?

I feel like this is a scam and totally incoherent. They program in Java, we work exclusively in SQL/PowerBI (so we can't use or read any of their code anyway, but they've refused to send it to us even if we could). We had an item where my staff tried to recreate a screen-calculated variable and it was a nightmare trying to combine the pre-2019 documentation with new tickets because the calculation could be affected by a ticket that appeared to have nothing to do with that particular calculation at all. And again, we can see absolutely zero code, just user stories. But I don't want to see their code, my staff can't read or execute it. We aren't devs. We just need to know what the system is doing so that we can do accurate analysis of the resulting.

But it's "all in the ADO".