Still playing around trying to improve the daily deploy work in the data-centers.
The idea is to replace a sequential/semi-manual process with something more automatic that don't need human intervention unless some failure happens.
Services and Deploy rules:
The idea is to replace a sequential/semi-manual process with something more automatic that don't need human intervention unless some failure happens.
Services and Deploy rules:
- Services has dependencies (Service B depends on Service A), Deploy order matter!
- You can't bring down all the machines at the same time!
- One or more machine can be unreachable during the deploy (network problems, hw failures, ...).
- Each machine need to be self-sufficient!
Must to Have (Monitoring)
- Current service state of each machines (online/offline, service v1, v2)
- Current "deploy" state (Ready to roll?)
- /dc/current: Contains a list of services with the list of online machines (and relative service version).
- /dc/staging: Contains a list of services with the list of machines ready to roll.
- /dc/deploy: Deploy order queue each node represent the service to upgrade.
- Add services to "staging" with the useful metadata (version, download path, ...)
- Define a deploy "order" queue
Each service is notified about the new staging version and starts downloading (see "data-center deploy using torrent and mlock()" post). Once the download is completed, the service register it self to the "staging" queue.
Now the tricky part is when can I start switching to the new version? The idea is to specify a quorum foreach service. The First machine in the "Staging" queue for the first service in the "Deploy" queue, looks for the quorum, and when is time shutdown it self and restart the new service. Once is done adds it self to the "Current" list and remove it self from the staging queue.
And one by one each machine start upgrading it self, until the deploy queue is empty. If a machine is down during the deploy, the "Current" node is checked to find which version is the most popular, and the service will be started.
I have definitely picked up anything new from right here. I did however expertise a few technical points using this site, since I experienced to reload the web site a lot of times previous to I could get it to load correctly.
ReplyDeleteOffice Interiors in Chennai
This comment has been removed by the author.
ReplyDeleteGreat post! I am actually getting ready to across this information, is very helpful my friend. Also great blog here with all of the valuable information you have. Keep up the good work you are doing here.Well, got a good knowledge.
ReplyDeletePaper Publishing Sites
Naas Rated Journals
Language Translation Services
Research Paper Writing Service
Article Writing Services
ReplyDeleteOne of the primary keys to web design for eCommerce is usability. An eCommerce website design company in Delhi must allow simple and practical navigation to its users both in PC and mobile versions.
PPC company in India
PPC Company in USA
Social Media Marketing Agency in Delhi
Adwords- PPC Management Company Delhi
çevrimsiz bonus ile ilgili bütün bilgileri çevrimsiz bonus sitesinde detaylıca ulaşabilirsiniz.
ReplyDeleteThank you for making this blog and for sharing useful information. Continue doing your passion and keep on blogging.
ReplyDeletetop 10 crm in india
mmorpg oyunlar
ReplyDeleteinstagram takipçi satın al
tiktok jeton hilesi
Tiktok Jeton Hilesi
antalya saç ekimi
referans kimliği nedir
İNSTAGRAM TAKİPÇİ SATIN AL
Mt2 Pvp
instagram takipçi satın al