Плейбук для инициализации ТС Директа

Примерный порядок запуска новой ТС:

NB: запятая после хостнейма нужна, без нее аргумент -i используется как файл

1. Поставить пакеты и создать файлы/каталоги:
ansible-playbook direct-ts.1.init.playbook.yml -i ppctest-ts2-front.ppc.yandex.ru, -v --extra-vars "conf=test2 version=1.89762~trusty-1 nginx_version=1.8.1-1.yandex.10 ts_type=universal"

или

ansible-playbook direct-ts.1.init.playbook.yml -i ppctest-web-01f.haze.yandex.net, -v --extra-vars "conf=test version=1.89762~trusty-1 nginx_version=1.8.1-1.yandex.10 ts_type=web"
ansible-playbook direct-ts.1.init.playbook.yml -i ppctest-api-01f.haze.yandex.net, -v --extra-vars "conf=test version=1.89762~trusty-1 nginx_version=1.8.1-1.yandex.10 ts_type=api"
ansible-playbook direct-ts.1.init.playbook.yml -i ppctest-intapi-01f.haze.yandex.net, -v --extra-vars "conf=test version=1.89762~trusty-1 nginx_version=1.8.1-1.yandex.10 ts_type=intapi"

Песочница: 
ansible-playbook direct-ts.1.init.playbook.yml -i ppctest-sandbox2-front.ppc.yandex.ru, -v --extra-vars "conf=sandbox-test2 version=1.90630-1 nginx_version=1.8.1-1.yandex.10 ts_type=sandbox"

2. Ручная настройка:

 * настроить consul. consul-client-for-ppctest.sh из соседнего набора direct-consul.
 * direct-access-check.pl -- проверить дырки/ACL, заказать, каких не хватает
 * привезти сертификаты в /etc/direct-ssl
 * (опционально) закомментировать дубликаты в /etc/apt/sources.list.d/yandex.list (про них сообщит apt-get update)

3. Запустить все нужные демоны, воркеры, веб-серверы:
ansible-playbook direct-ts.2.start.playbook.yml -i ppctest-web-01f.haze.yandex.net, -v --extra-vars "ts_type=web"
ansible-playbook direct-ts.2.start.playbook.yml -i ppctest-ts2-front.ppc.yandex.ru, -v --extra-vars "ts_type=sandbox"
ansible-playbook direct-ts.2.start.playbook.yml -i ppctest-api-01f.haze.yandex.net, -v --extra-vars "ts_type=api"
ansible-playbook direct-ts.2.start.playbook.yml -i ppctest-intapi-01f.haze.yandex.net, -v --extra-vars "ts_type=intapi"

ansible-playbook direct-ts.2.start.playbook.yml -i ppctest-ts2-front.ppc.yandex.ru, -v --extra-vars "ts_type=universal"

4. Ручные действия, если имя сервера не меняется -- не требуются: 
учесть сервер в yandex-du-ts-updater-keys, собрать пакеты, переложить в правильный репозиторий

5. Поставить серверную часть direct-test-update:

ansible-playbook -i ppctest-ts2-front.ppc.yandex.ru, -v direct-ts.3.ts-updater.playbook.yml

TODO: запустить правильный memcached

(конец примерного порядка)


Можно установить все пакеты в Docker'е:

docker run -t -i ubuntu:trusty /bin/bash
или 
docker run -t -i -v `pwd`:/direct-ts ubuntu:trusty /bin/bash

cd /direct-ts
./get-ansible.sh
Дальше как примерный порядок, вместо хостнейма -- ...


touch /var/www/ppc.yandex.ru/data/informer_users.txt
rm /var/www/ppc.yandex.ru/protected/run/web_stop.flag

