Денис Зайцев "Как управлять облаками"
description
Transcript of Денис Зайцев "Как управлять облаками"
Денис Зайцев
Я.Субботник в Санкт-Петербурге, 1 декабря 2012
Как управлять облаками
Системный администратор
2
• Деплой (выкладка и конфигурация исполняемого кода).
• Результаты тестов. • Конфигурация окружения.
3
Deployment
4
Rsync/scp
5
VCS (SVN, Git etc.)
6
Package(deb/rpm)
7
Continuous delivery
8
Rolling update
9
10
11
12
Dependency hell
13
Deploy in one click
14
Deploy
15
“get": { "endpoint": "tcp://*:9300", "type": "native-server", "emit": "get" } }, "args": { "elliptics": { "logmask": 1, "nodes": { "elisto01d.dev.yandex.net": 1025,#
16
github.com/yandex-load/yandex-tank
17
18
20
21
:~# ps fauxw | fgrep cocaine#/usr/bin/cocained \_ cocaine-slave --slave:app --slave:uuid# \_ cocaine-slave --slave:app --slave:uuid# \_ cocaine-slave --slave:app --slave:uuid####:~# strace -p 11002#Process 11002 attached - interrupt to quit clock_gettime(CLOCK_MONOTONIC, {13346723, 474289166}) = 0 poll([{fd=19, events=POLLIN}], 1, 0) = 0 (Timeout) clock_gettime(CLOCK_MONOTONIC, {13346723, 474500319}) = 0 epoll_wait(16, {{EPOLLIN, {u32=19, u64=4294967315}}}, 64, 59743) = 1 clock_gettime(CLOCK_MONOTONIC, {13346723, 557426220}) = 0 poll([{fd=19, events=POLLIN}], 1, 0) = 1 ([{fd=19, revents=POLLIN}])#:~# #
22
23