Size: a a a

Пятничный деплой

2018 March 15
Пятничный деплой
Ну вот еще одна на закуску
#nginx
источник
Пятничный деплой
источник
Пятничный деплой
Пару видосиков с Лондонского Prometheus Meetup

https://youtube.com/playlist?list=PLMzJl8G41bDiPvVkynYZesOZ6MRXIdTtm

Темы:
- Thanos by Fabian Reinartz & Bartlomiej Plotka
- Observability for emerging infrasturcture by Charity Majors

#slides
источник
Пятничный деплой
#golang #systemd
источник
Пятничный деплой
Интеграция Go с systemd  
https://t.co/S9XBIpKjQw

Использование systemd для запуска Go сервисов и несколько фишек, про которые вы могли не знать.
источник
Пятничный деплой
Всем, кто пользует кубер, настоятельно рекомендую ознакомится
https://medium.com/handy-tech/analysis-of-a-kubernetes-hack-backdooring-through-kubelet-823be5c3d67c
#security #k8s
источник
2018 March 16
Пятничный деплой
узнал сегодня про такую тулзу
https://code.facebook.com/posts/844436395567983/introducing-osquery/
позволяет ходить в procfs при помощи sql-like запросов
#osquery
источник
2018 March 17
Пятничный деплой
Запись вэбинара от HashiCorp, о том, как экономить с AWS Lambda и сетапить её с помощью Terraform:

https://www.hashicorp.com/resources/rein-in-cloud-costs-with-terraform-and-aws-lambda

#slides
источник
2018 March 19
Пятничный деплой
https://www.youtube.com/watch?v=o5THNdsALZc вот ещё встреча ребят из #HUG #hashicorp
источник
2018 March 20
Пятничный деплой
Ну вот и Дженкинс
источник
Пятничный деплой
​​Вслед за Apple...
Нет, ну вы же понимаете, что эта фраза будет сопровождать любой продукт с Х в названии.

Короче, Jenkins отпочковали от себя отдельный продукт -- Jenkins X, заточенный на работу с Kubernetes.
Основная идея -- делать все по GitOps то есть накатывать изменения с каждым пул реквестом

Есть демо по обеим ссылкам

#cicd #jenkins #kubernetes
источник
Пятничный деплой
Полезно
источник
Пятничный деплой
​​Дашборд, который показывает латенси между AWS регионами

https://www.cloudping.co/

Правда, народ говорит, что в Chrome не у всех с первого раза завёлся. В FF всё норм :)
источник
2018 March 21
Пятничный деплой
How To Use Go Interfaces  
https://t.co/dYd23FhJY1

Несколько полезных советов по применению интерфейсов
#golang
источник
Пятничный деплой
Трансляция митапа IBM про Kubernetes
источник
Пятничный деплой
ссылка на прямую трансляцию с митапа http://youtu.be/gvhXUlmH9r0
источник
2018 March 22
Пятничный деплой
Один из способов дебага nginx
#nginx
источник
Пятничный деплой
Недавно ресерчили почему nginx возвращает 400 на некоторые запросы. Ну как некоторые - порядка 300 rps 400ых ответов. Есть два способа разобраться в ситуации детально:

1. Скомпилировать nginx с lua и добавить вывод в лог request_body, response_body и headers:

lua_need_request_body on;

 set $request_headers "";
 set $resp_body "";

 body_filter_by_lua '
   local resp_body = string.sub(ngx.arg[1], 1, 1000)
   ngx.ctx.buffered = (ngx.ctx.buffered or "") .. resp_body
   if ngx.arg[2] then
     ngx.var.resp_body = ngx.ctx.buffered
   end

   local h = ngx.req.get_headers()
   local request_headers = ""

   for k, v in pairs(h) do
     request_headers = request_headers .. k .. ":" .. v
   end

   ngx.ctx.buffered = (ngx.ctx.buffered or "") .. request_headers
   if ngx.arg[2] then
     ngx.var.request_headers = ngx.ctx.buffered
   end

 ';


Далее определяем новый log:

log_
format bodylog '$remote_addr - $remote_user [$time_local] '
 '"$request" $status $body_bytes_sent '
 '"$http_referer" "$http_user_agent" $request_time '
 '<"$request_body"> <"$resp_body"> <"$request_headers">';

И
используем в access_log.

2. Второй способ завязан на tcpdump:

tcpdump -i eth0 -s 0 -A 'host x.x.x.x and tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

Выгл
ядит примерно так:

03:07:06.943965 IP x.x.x.x.YYYY > server.domain.com.http: Flags [P.], seq 495715572:495715769, ack 2181877155, win 8192, length 197: HTTP: POST /?api=key&name=value HTTP/1.1
E.....@.2.......C.m .1.P........P. .rl..POST /?api=key&name=value HTTP/1.1
Host: server.domain.com
User-Agent: curl/7.54.0
Accept: */*
Content-Length: 6
Content-Type: application/x-www-form-urlencoded

{json}
источник
2018 March 23
Пятничный деплой
Еще раз о функциях в Go (и про замыкание есть)
#golang #closures
источник
Пятничный деплой
Go обладает такой штукой как функции первого порядка. Это означает, что функции можно присваивать переменным, передавать в другую функцию в качестве аргумента, а также возвращать из других функций. Давайте глянем статеечку, в которой уделено внимание данному аспекту. 🧐👨‍💻
https://golangbot.com/first-class-functions/
источник