Do you want to know what our process looks like from code to production? Or do you want to learn how we envision the future of deployment at Coolblue? During this evening, our Engineers will show you a peek Behind the Scenes and tell you everything about our challenges with Continuous Integration and Deployment.
36. TEST.
Context Download Agent Method
[+] Should download the Sensu client 7.58s
[+] Should be the full file 101ms
Context Install Agent Method
[+] Should Install the Sensu client 38.49s
Context ConfigureAgentClient Method
[+] Should be correctly formatted into JSON 1.77s
[+] Should contain the Correct Information in the JSON | Subscriptions 20ms
[+] Should contain the Correct Information in the JSON | Name 19ms
[+] Should contain the Correct Information in the JSON | Private IPv4 Address 15ms
Context ConfigureAgentTransport Method
[+] Should be formatted correctly into JSON 154ms
[+] Should contain the Correct Information in the JSON | Name 16ms
[+] Should contain the Correct Information in the JSON | Reconnect on Error 13ms
Context InstallService Method
[+] Should deploy and install the Sensu client service 256ms
Context Conversion XML Method
[+] Should correctly create an valid XML configuration file 119ms
Context RemoveAgent Method
[+] It should remove the agent 239.16s
Describing DSC Based methods
Context Testing DSC based methods
[+] Test() Method should return a Boolean Type 283ms
[+] Get() Method should return a Sensu Type 31ms
57. WHY MONITORING IS HARD.
▪Automation is an after thought
▪Forgetting to add new services
▪Checks are hard to write
▪Don’t want to do annoying things
66. WHY MONITORING IS HARD.
▪Automation is an after thought
▪Forgetting to add new services
▪Checks are hard to write
▪Don’t want to do annoying things
67.
68. THE SENSU SOCKET INPUT.
IIS
/purchases
Sensu
Agent
Sensu
Server
Rabbit
MQ
3030
TCP/
UDP
My App
69. JUST SEND IN JSON.
{
"name": "ravendb_connectivity",
"output": "Could not connect to RavenDB!",
"status": 2,
"team": "TeamName",
"application": "My App",
"playbook": "https://github.com/devTeam/readme.md"
}
70.
71. USING A DEAD-MAN SWITCH.
{
"name": "daily_sql_backup",
"output": "Backup of SQL databases performed",
"status": 0,
"team": "OpsTeamName",
"application": "sql_backups",
"playbook": "https://github.com/opsTeam/readme.md",
"ttl": 86400
}
72.
73. MONITORING CAN BE EASY.
▪Automation is an after thought
▪Forgetting to add new services
▪Checks are hard to write
▪Don’t want to do annoying things
91. Results.
Server Core Nano Server
Build Time: 6 min ~40 Seconds
Start Time: 25 Seconds 2 Seconds
Restart Time: 15 Seconds 1 Seconds
Hard Drive Space used: 8 GB 600 MB
Basic Memory Usage 250 MB 160 MB
92. Nano Server Thoughts.
● No 32 Bit Support
● MSI is gone
● Not all server core features available
● No Full .Net Framework Support
93. Challenges.
● OS base Memory Usage
● Large HDD Usage
● Build and Deployment Times for Servers
● Further increase the development speed of Coolblue
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106. Summing up challenges.
● OS Base Memory Usage
● Large HDD Usage
● Build Deployment Times for Servers
● Further increase the development speed of Coolblue