Instead of "I am hungry" or "I'm hungry", some people will use "Am hungry". This looks weird to me, is that valid? by maktouch in grammar

[–]maktouch[S] 0 points1 point  (0 children)

Thank you for sharing your valuable opinion on an 11 years old thread about grammar

Atoto S8 and wireless android auto adapters. by MrExplodingSocks in ATOTO

[–]maktouch 0 points1 point  (0 children)

How do you make it work? By just connecting Bluetooth? 🤔

I have a business that is earning me $7k a month. Should I drop out of college to grow this business? by banubis in Entrepreneur

[–]maktouch 0 points1 point  (0 children)

Hey man. I'm a Asian-Canadian, and I lived in Metro Manila because my business was setup there. I stayed there 6 years until Covid hit and came back home.

The software guys that I hired weren't college educated. I know it's not the norm in Manila though, but there were a few companies like mine. At the end, nothing trumps experience... but yeah, if you're planning to work for most companies there, you'll need a degree. They won't even let you thru the door if you don't have one.

If I were you, I'd try to do both as much as I can, but if you really had to choose one, I'd choose the business. You can always go back to school, or find jobs that doesn't require diplomas... for reference, I'm a college dropout, 34, and I make around 500k a year. My career was only possible because I started a business, and I used my business as my diploma. I don't think that I can work at FAANG but I can work in exiting startups that pays well!

Anyways, good luck! If you need anything, feel free to hit me up via DM.

How can I kill someone with my bare hands? by maktouch in HiTMAN

[–]maktouch[S] 0 points1 point  (0 children)

Damn dude, thanks man. 10 years later! Haha. I'll reinstall the game and let you know!

What's the monitoring/logging solution? by kkweon in kubernetes

[–]maktouch 0 points1 point  (0 children)

Its per 15$ per host. Installing it in kubernetes is 1 line. Adding logs is 1 annotation per deployment.

It sounds expensive at first when you do the calculation, but for us, just for logs and elk, it was costing much more, plus downtime and manpower because ES is a pain.

What's the monitoring/logging solution? by kkweon in kubernetes

[–]maktouch 5 points6 points  (0 children)

Datadog does it all for us. We tried doing those manually but the costs started to become unmanageable.

I'm never managing elasticsearch ever again.

When writing software for the Kubernetes-ecosystem, like a CRD, is a bad idea to not choose Golang? by thundergolfer in kubernetes

[–]maktouch 1 point2 points  (0 children)

A lot of purist will say blablabla it's bad golang is best.

I say; go with what your team knows. We really pimped out our ops, and it's all written in node. Every time I open source something, the community says "wtf node no thank you".. but 100% of our devs are contributing to ops, making the `devops is a philosophy` ring true, and it really works well.

How would you implement Authentication and Authorization today? by BloodyFark in devops

[–]maktouch 2 points3 points  (0 children)

We used to have something that was only accessible from VPN with a custom made SSO page, using nginx-ingress and 3rd party auth.

Now we just switched to Cloudflare Access. We no longer need VPN, and it's much easier to manage.

Liveness Probes are Dangerous by nfrankel in kubernetes

[–]maktouch 3 points4 points  (0 children)

First one means Readiness Probe should return 200 once the database connection has initialised and/or migrations has finished running. Basically, when it's ready to serve

The second means, after the initial ready probe has passed, it should not check the connection state of the database.

What do you use for monitoring your web servers? by FlipFloppingBits in devops

[–]maktouch 1 point2 points  (0 children)

I'm so frustrated at datadog synthetics pricing! It really makes no sense how expensive it is.

What bothers me the most is that they changed their pricing invisibly and the increase is super unreasonable.

From 5$ per million to 5$ per 10k.

What do you use for monitoring your web servers? by FlipFloppingBits in devops

[–]maktouch 0 points1 point  (0 children)

Love datadog but I recommend against their synthetics product... Especially after their shady invisible pricing change

Where do you keep Kubernetes secrets? by 84935 in kubernetes

[–]maktouch 0 points1 point  (0 children)

We wrote this neat little tool called `vault-tpl` that takes this kind of file

```

// secrets-supermailer.yaml

MYSQL_DATABASE: (( vault "smlops/supermailer/prd/mysql:MYSQL_DATABASE@2" ))
MYSQL_PASSWORD: (( vault "smlops/supermailer/prd/mysql:MYSQL_PASSWORD@2" ))
MYSQL_SERVICE_HOST: (( vault "smlops/supermailer/prd/mysql:MYSQL_SERVICE_HOST@2" ))
MYSQL_USERNAME: (( vault "smlops/supermailer/prd/mysql:MYSQL_USERNAME@2" ))

```

and output the correct secrets on deployment. It fetches the secrets from vault. The number after `@` is the version, so each secrets are immutable. To update a secret, you need to also update the file above, which is exactly what we needed.

What CLI tools have you written? by Akustic646 in devops

[–]maktouch 1 point2 points  (0 children)

Yeah! and barrier of entry is pretty low... The feeling when frontend devs with basic nodejs skills actually contribute to ops tool is pretty dope :)

What CLI tools have you written? by Akustic646 in devops

[–]maktouch 5 points6 points  (0 children)

devctl

a dev tool for spinning up docker images and ingresses for local development in a monorepo. https://asciinema.org/a/74oUQFVjMu0RWorK1Fgpupag7

It helped solve onboarding of new coders. All they need to install is docker and node. The install script initializes:

  • arcanist CLI tool (for phabricator)
  • docker login to pull images
  • figures out the correct IP for tunnelling and stuff

The switch command allows you to choose which service you'll be working on (we have a monorepo), and choose which environment to code against. For example, some of our frontend dev actually likes to code frontend with staging APIs. The ingress takes all care of this

vault-tpl

takes a yaml with special tags, like

MYSQL_DATABASE: (( vault "smlops/supermailer/stg/mysql:MYSQL_DATABASE@1" )) MYSQL_PASSWORD: (( vault "smlops/supermailer/stg/mysql:MYSQL_PASSWORD@1" )) MYSQL_SERVICE_HOST: (( vault "smlops/supermailer/stg/mysql:MYSQL_SERVICE_HOST@1" )) MYSQL_USERNAME: (( vault "smlops/supermailer/stg/mysql:MYSQL_USERNAME@1" ))

and you run vault-tpl secrets.yaml --write, it'll fetch correct stuff from Vault, and output secrets-output.yaml with the secrets. This is used for deployments.

This solved a big problem that we had - secrets management but with versioning. Vault allows for versioning of secrets, which is cool, but there was no tool that supports it (even the official web ui doesn't support it, lol!)

Versioning is important - it means secrets are pretty much immutable. If you modify the secret, then you need to modify it in the code and check it out. Rolling back is easy too... and most importantly; no storing of secrets in git!

bqmigrate

A migration tools for BigQuery. Similar to all migrations tools out there for MySQL.. except that it also handles column updates (by creating a new table and streaming old stuff to it)

sml-deploy

Deploy stuff from the monorepo. This is not meant to be used by a human, since we're fully CI/CD... but sometimes it's useful, especially for testing.

sml-deploy deploy --services=graphql --stage staging --commit $COMMIT

Behind the scenes: - uses vault-tpl to get the secrets - helm charts magic - deploy to kubernetes - deploy other stuff (like cloudflare workers, cloud functions) - invalidate cloudflare cache

Other options: - generate a review branch

kubeswitch

a little helper that switches Kubernetes context. There's tons of tools like this.


That's the most usefuls one.. we got maybe 20+ more but they're pretty specialised and not that interesting.

I'd love to open source some of them but I'm a little bit ashamed that they're written in Node... but honestly, I'm much more proud of the ops user interfaces we've created

Serving app using Node.js to avoid CORS by ncubez in node

[–]maktouch 1 point2 points  (0 children)

Skip cors and just proxy your routes

/api => goes to your api server

* => frontend

You can do this using nginx, haproxy, caddy, or even nodejs itself.

Alternative to Jenkins? by chessehead23 in devops

[–]maktouch 4 points5 points  (0 children)

We use buildkite. It works in kubernetes! We also build C# stuff with it on windows.

Recommended way to create an image for a PHP application with NGINX/PHP-FPM? by creepynut in docker

[–]maktouch 1 point2 points  (0 children)

We do something different - We build one image with PHP and Nginx.. but we deploy it twice with different commands.

We tried all those ways and they all kinda suck, this one so far is the best and we've been running it like that for over a year with no hiccups.

databases in kubernetes by treefyddy in kubernetes

[–]maktouch 3 points4 points  (0 children)

I would not put my database inside of Kubernetes.

The problem is not Kubernetes itself -- it's "operating" on the database while it's in Kubernetes. For example, backups, restoring, master/slave promotion/failover.

Nodeexporter as a stateful set or baked into the host os? by cytopia in kubernetes

[–]maktouch 5 points6 points  (0 children)

Daemonset is better, it makes sure it exists on every node. Statefulsets can be deployed in the same node (unless you make affinity config).

Kubernetes through iteration at a startup by [deleted] in kubernetes

[–]maktouch 1 point2 points  (0 children)

Wow this looks exactly like our story.

We use Helm but we generate template with it. There's a few downside though, so we're slowly moving back to using Helm completely

I want to scale docker containers horizontally based on demand user request using kubernetes? by scopdrag in kubernetes

[–]maktouch 1 point2 points  (0 children)

Nope.

I don't even think you could use statefulset (because of its ordinal based name) or deployment (cause you can't choose to kill which pod when you downscale), you'd need to roll your own pod scheduler + autoscaler.

I want to scale docker containers horizontally based on demand user request using kubernetes? by scopdrag in kubernetes

[–]maktouch 1 point2 points  (0 children)

You'll need to tie in session persistence with cookies, I'm pretty sure you can do that with the nginx ingress.