rxd_txd
311 subscribers
486 photos
26 videos
22 files
2.72K links
[
{
"channel":"rxd_txd",
"info":"my bookmarks",
"feedback":"@flsixtyfour",
"topics":[
"devops",
"linux",
"sci",
"music",
"go",
"/dev/null"
]
}
]
Download Telegram
debugging tools: a preconfigured etcdclient static pod
https://mauilion.dev/posts/etcdclient/
#k8s #kubernetes #etcd
Forwarded from DevOps&SRE Library
Kubeconfig File Explained With Practical Examples

https://devopscube.com/kubernetes-kubeconfig-file
Forwarded from k8s (in)security (Дмитрий Евдокимов)
AuditPolicy.yaml
2.9 KB
Я уже неоднократно писал, что Kubernetes Audit Log является важной частью безопасность k8s. НО при активации этого механизма возрастает нагрузка на Kubernetes API Server и как-то надо вообще справляться с целым тайфуном сообщений от этой подсистемы. Конечно, разумным планом является оптимизаций того что логировать, а что нет. И одним из хороших вариантов оптимизации является вырезание событий/действий завязанных на системные субъекты (производимые ими). Идея в том чтобы вырезать доверенных роботов (и молиться чтобы Skynet оставался только в кино), которые в основном и шумят в логах.

В аттаче к этому посту вы можете видеть пример такой оптимизации. УЧТИТЕ что тут только пример оптимизации, тоесть это только часть политики, а не полная версия. Все это приводиться в качестве примера и ее нужно еще модифицировать с учетом вашего окружения!

Если у вас есть свои трюки и советы по оптимизации Kubernetes Audit Log, то предлагайте в комментариях ;)
Forwarded from k8s (in)security (Дмитрий Евдокимов)
Сегодня пятница, а значит что выходные уже совсем близко! И если вы давно планировали, но постоянно откладывали почитать исходных код Kubernetes, то тут как раз для вас появился отличный цикл статей про Kubernetes API Server. Можно сказать разбор всей внутрянки/исходников сердца Kubernetes! Пока выложено 3 части:
1) Welcome to Kubernetes API Server Adventures
2) K8s ASA: The Storage Interface
3) K8s ASA: Watching and Caching

Это настоящие лонгриды ведущие по исходному коду и комментирующие все по определённому аспекту Kubernetes API Server. Обязательно для тех кто не только просто хочет пользоваться k8s, но и понимать как он работает.
Forwarded from DevOps Deflope News
В Gitea завезли Gitea Actions.

Пока это только превью и не гарантируется стабильная работа, но общее направление развития радует - появляется еще один CI/CD. И кажется это именно actions, то есть совместимое с GitHub Actions:

"The standalone runner workflows are designed to be compatible with GitHub Actions, and can be used to build, test, package, release, or deploy any code project on Gitea."
cat > tetris.yaml <<EOF
apiVersion: retro.sparkfabrik.com/v1
kind: Game
metadata:
name: tetris
namespace: games
spec:
name: "Tetris"
zipUrl: "http://192.168.30.6/f-tetris.zip"
dir: "."
exe: "F-TETRIS.EXE"
EOF


Retro DOS Games on Kubernetes
https://williamlam.com/2021/02/retro-dos-games-on-kubernetes.html
+
A retrogames kubernetes controller built in Javascript
https://github.com/paolomainardi/additronk8s-retrogames-kubernetes-controller

Всем хороших выходных! ❤️
Regulex:JavaScript Regular Expression Visualizer
https://jex.im/regulex/
#regex
Forwarded from Hacker News
Ask HN: Small scripts, hacks and automations you're proud of?
Article, Comments
Forwarded from DevSecOps Talks
Kubernetes Controllers: For, Owns, Watches

Всем привет!

В сети не всегда просто найти хорошую статью про написание собственных Kubernetes Operators/Controllers. Особенно, если интересует не «общая картинка», а какие-то частности.

В статье Автор разбирает разницу между конструкциями for(), owns() и get() при регистрации controller через SetupWithManager.

Для этого рассматривается пример:
🍭 Создается Custom Resource
🍭 Controller узнает об этом и создает pod (nginx:latest), присваивает ему labelfoo:bar
🍭 Controller должен гарантировать наличие указанных label. Т.е. add/update/delete не должны «срабатывать»

Далее расписывается логика реконсиляции controller’a. Наглядно описывается как можно это реализовать не делая еще один Controller, который бы смотрел за каждым pod и его labels – как раз тот самый owns().

В завершении – описание функции watches(), которая лежит в основе for() и owns(). В статье много примеров и кода для собственного воспроизведения примера.

P.S. Про awesome подборку написания Kubernetes Operators мы писали тут.
Forwarded from Код и Капуста
Крутая идея - сделать так, чтоб при запуске гошного сервиса, к нему можно было сразу достучаться из вне через ngrok

Специально для этого сделали пакет ngrok-go

А есть опенсорсные аналоги ngrok? Так чтоб у себя на сервере поднять и через апишку сабдомены заводить

#golang

https://blog.ngrok.com/posts/ngrok-go
Move Kubernetes PVCs between Storage Classes and Namespaces
https://github.com/BeryJu/korb