Devs World
Open in Telegram
All about software developing & architecture @ml_world - the best materials about Machine Learning & Data Science Our fund instagram to help homeless animals: https://www.instagram.com/ukraineanimalhelp/ Contacts: @anikishaev | creotiv@gmail.com
Show more386
Subscribers
No data24 hours
+17 days
-130 days
Posts Archive
386
How i usually like to say - "Don't Trust Anybody"
Yesterday i understand that K8S not doing rolling deploy correctly, and some connections may be broken during it, which is not good.
I dig a little bit, and found that it open issue in K8S, which for some reason not fixed, while fix is very simple (but maybe i dont know something).
Here is article about the problem: https://engineering.rakuten.today/post/graceful-k8s-delpoyments/
And small test code with fix: https://github.com/creotiv/github.com-creotiv-k8s-rollout-test
#k8s #kubernetes #zerodowntime #deployment
386
Поліція прикриває вбивць!!! Максимальний репост!!
Бездіяльність поліції кожен день коштує життя невинних. Закінчимо це беззаконня. Поліціянти мусят сісти за приховування доказів у вбивствах та співучасть в них! Ми повинні зробити показову справу!!
https://hromadske.ua/posts/zamkneni-u-pidvali-koti-zoozahisniki-podadut-zayavu-pro-bezdiyalnist-policiyi
386
💾💾💾 Чим відрізняються Multicast від Anycast та Broadcast?
Multicast, Anycast и Broadcast – це методи доставки даних в мережах. Вони мають різні цілі та сценарії використання:
1. Broadcast
Broadcast відправляє дані до всіх вузлів у мережі або підмережі. Це найбільш базова форма розсилки, де кожен пакет даних копіюється та відправляється до кожного пристрою в локальній мережі.
Broadcast часто використовується для автоматичного отримання IP-адреси через DHCP або для пошуку пристроїв та служб у локальних мережах.
2. Multicast
Multicast дозволяє відправляти дані одночасно кільком отримувачам, але не всім у мережі. Отримувачі групуються за спеціальною multicast адресою, і дані відправляються лише цій групі.
Multicast застосовується для потокового мультимедійного контенту, онлайн-ігор та інших застосунків, де однакові дані потрібно доставити багатьом отримувачам одночасно.
3. Anycast
Anycast дозволяє відправляти дані до найближчого (у термінах мережевої топології) вузла з групи вузлів, які мають однакову IP-адресу. Це досягається за допомогою маршрутизації, яка вибирає найкоротший шлях до одного з декількох можливих отримувачів.
Anycast часто використовується для DNS-серверів, CDN (мереж доставки контенту) та для підвищення доступності та зниження затримки в мережевих службах.
Також варто зазначити що Broadcast не доступний в IPV6 мережах
#networking #broadcast #multicast #anycast
386
💾💾💾 Moving the pod to another node in K8S may create connection issues for some period of time.
In Kubernetes, when a pod moves from one node to another—due to rebalancing, node failure, or pod eviction—there indeed exists a window of time during which other pods trying to communicate with the relocated pod might encounter issues. This scenario is possible due to several factors involved in the pod's networking and service discovery mechanisms within a Kubernetes cluster.
Kubernetes uses a combination of service resources, kube-proxy, and sometimes DNS for service discovery and load balancing. Here’s how these components typically handle pod IP changes:
1. Service Resources and Endpoints: Kubernetes Services act as a stable front for a set of pods. When a pod that's part of a service moves to a different node and gets a new IP address, the Service's Endpoints object is updated with the new IP. However, this update does not happen instantaneously; there's a brief period required for the control plane to detect the change and update the Endpoints.
2. kube-proxy: kube-proxy runs on each node and is responsible for routing traffic to the correct pod based on the Service's Endpoints. It watches the Kubernetes API for changes in Services and Endpoints and updates the node's iptables or ipvs rules accordingly. Again, this process is not immediate, and there's a short delay before the iptables or ipvs rules are updated to reflect the new pod location.
3. DNS Caching: If DNS is used for service discovery (via CoreDNS in Kubernetes), caching can also introduce a delay. The DNS records for a Service might still point to the old pod IP until the DNS TTL (time to live) expires and the record is refreshed.
Given these mechanisms, if another pod tries to communicate with the relocated pod in that brief window before the Endpoints and iptables/ipvs rules are updated, it might indeed try to send traffic to the old node/IP, leading to failed connections. However, Kubernetes is designed to minimize such disruptions:
- The control plane components are optimized to update Endpoints and propagate changes as quickly as possible.
- kube-proxy watches for these changes and updates routing rules promptly.
- Services and DNS provide abstraction layers that, under normal circumstances, shield clients from direct pod IP changes.
To mitigate potential issues, applications can implement retry logic for handling transient network failures, ensuring they can gracefully handle brief periods of unavailability or network hiccups as Kubernetes updates its internal state.
#kubernetes #k8s #devops #sre #softwareengineering #dns #iptable #proxy #networking
386
Есть вакансия на React-Native Lead
вилка $6K-$6.5K
https://yalantis.ua/vacancies/react-native-developer/
386
Збираємо екстренно на допомогу тваринкам, не має чим оплачувати лікарню для них(
https://www.facebook.com/anikishaev/posts/pfbid02PW9kHbALpw91YeBDxcKU2R8ibeVpPhjKFykcMCBgwDrDy9u9TKuGNoYMAgQQoiwUl?
386
Some new frame to replace Electron - Tauri
https://tauri.app/
Some example: https://gitlab.com/dedSyn4ps3/enviroplus-desktop
386
386
Зробив группу для спілкування для тих хто рідко бачить живих людей https://t.me/+ekTP0tUq8MIzMGYy
386
Интересная история расказаная моим другом
https://a-nikishaev.medium.com/the-story-of-hacking-the-most-popular-game-of-the-runet-in-the-2000s-fight-club-0880d1f0452a
386
ИТшники на ДОУ предлагают убивать бездомных животных. Но мы не такие как рф.. мы блять высшая расса.
https://dou.ua/forums/topic/47272/
386
TLA+ Отличный пример почему не девелоперы никогда не должны писать код, а тем более придумывать языки.
Кто хочет окунуться в мир боли и не понимания прошу в документацию. Даже база выест вам мозг.
Чего только стоит:
"==" - присвоение
"=" - равенство
https://learntla.com/core/operators.html
386
Страдал фигней. Решил сделать скринсейвер на НГ.
https://github.com/creotiv/snowua
Пока автоматом не врубается, сходу метода как это сделать не нашел для терминала. Но еще подумаю
Если кому понра, не забудьте поддержать бездомных животных, им кроме нас никто подарки не принесет на новый год
https://uah.fund/donate
386
Шел 2003й год, трава тогда была зеленее, а голуби жирнее. Миром в то время правил ZyXel 56K бод и Internet Explorer 5. Онлайн игры тогда делали свои первые шаги. И одну из них я думаю многие из вас знают - Бойцовский Клуб.
И именно об этой игре у меня есть замечательная история, точнее история об одном из самых крупных ее взломов, если не самом большем. История одного близкого мне друга, которого я хорошо знаю. История которой я могу поделиться с вами.
Разумеется каждый рассказ имеет свою цену, и цена этого - покупка корма для бездомных и выброшенных животных. Сможем насобирать нужную сумму и эта история станет вашей.
Ведь вы хотите послушать о том как страдали Москвичи потеряв свои акаунты в которые они так много вложили?)
Донатить на корм сюда:
https://uah.fund/donate
386
Interesting tool for reroute traffic from K8S to local service, giving ability for fast development without rebuilding images
https://www.telepresence.io/
386
Друзі нажаль грудень це завжди жопа для волонтерів, донатів майже не має, а рахунки є і значно більші ніж завжди.
Нам дуже потрібно оплатити лікування безхатніх тварин в клініці. Їх там 24, та й ще 170+ в притулках.
Ми ледь назбирали 60к на все(( а нам ще потрібні ліки корма.
Будь ласка допоможіть зібрати 100к на тварин, їм набагато тяжче зараз чим нам людям.
Дуже дякую усім небайдужим
https://send.monobank.ua/jar/9tbJNeWg6U
https://uah.fund/donate
