update content for Northwestern Mutual case study (#9372)

This commit is contained in:
Alex Contini
2018-07-03 15:04:20 -04:00
committed by k8s-ci-robot
parent 1228689b1d
commit 0f5f027aee
@@ -22,17 +22,18 @@ css: /css/style_case_studies.css
<div class="cols">
<div class="col1">
<h2>Challenge</h2>
In the spring of 2015, Northwestern Mutual acquired a fintech startup, LearnVest, and decided to take "Northwestern Mutuals leading products and services and meld it with LearnVests digital experience and innovative financial planning platform," says Brad Williams, Director of Engineering for Client Experience, Northwestern Mutual. The companys existing infrastructure had been optimized for batch workflows hosted on on-prem networks; deployments were very traditional, and had to be initiated in the companys Milwaukee headquarters. "We had to build a platform that was elastically scalable, but also much more responsive, so we could quickly get data to the client website so that our end customers have the experience that theyve grown to expect," says Williams.
In the spring of 2015, Northwestern Mutual acquired a fintech startup, LearnVest, and decided to take "Northwestern Mutuals leading products and services and meld it with LearnVests digital experience and innovative financial planning platform," says Brad Williams, Director of Engineering for Client Experience, Northwestern Mutual. The companys existing infrastructure had been optimized for batch workflows hosted on on-prem networks; deployments were very traditional, focused on following a process instead of providing deployment agility. "We had to build a platform that was elastically scalable, but also much more responsive, so we could quickly get data to the client website so our end-customers have the experience they expect," says Williams.
<br>
<h2>Solution</h2>
The platform team came up with a plan for using the public cloud (AWS), Docker containers, and Kubernetes for orchestration. "Kubernetes gave us that base framework so teams can be very autonomous in what theyre building and deliver very quickly and frequently," says Northwestern Mutual Cloud Native Engineer Frank Greco Jr. The team also built and open sourced <a href="https://github.com/northwesternmutual/kanali">Kanali</a>, a Kubernetes-native API management tool that uses <a href="http://opentracing.io/">OpenTracing</a>, <a href="https://www.jaegertracing.io/">Jaeger</a>, and <a href="https://grpc.io/about/">gRPC</a>.
The platform team came up with a plan for using the public cloud (AWS), Docker containers, and Kubernetes for orchestration. "Kubernetes gave us that base framework so teams can be very autonomous in what theyre building and deliver very quickly and frequently," says Northwestern Mutual Cloud Native Engineer Frank Greco Jr. The team also built and open-sourced <a href="https://github.com/northwesternmutual/kanali">Kanali</a>, a Kubernetes-native API management tool that uses OpenTracing, Jaeger, and gRPC.
</div>
<div class="col2">
<h2>Impact</h2>
Before, infrastructure deployments could take two weeks; now, it is done in a matter of minutes. The number of deployments has increased dramatically, from about 24 a year to more than 500 in just the first 10 months of 2017. Availability has also increased: There used to be a six-hour control window for commits every Sunday morning, as well as other periods of general maintenance during which outages could happen. "Now theres no such thing because theres no outage window," says Bryan Pfremmer, App Platform Teams Manager, Northwestern Mutual. <a href="https://github.com/northwesternmutual/kanali">Kanali</a> has had an impact on the bottom line. The vendor API management product that the company previously used required 23 servers in production, "dedicated, doing nothing but that," says Pfremmer. "Now its all integrated in the existing stack, so that many EC2 instances every month are gone. And thats just one environment. Between the three that we had plus the test, thats hard dollar savings."
Before, infrastructure deployments could take weeks; now, it is done in a matter of minutes. The number of deployments has increased dramatically, from about 24 a year to over 500 in just the first 10 months of 2017. Availability has also increased: There used to be a six-hour control window for commits every Sunday morning, as well as other periods of general maintenance, during which outages could happen. "Now we have eliminated the planned outage windows," says Bryan Pfremmer, App Platform Teams Manager, Northwestern Mutual. Kanali has had an impact on the bottom line. The vendor API management product that the company previously used required 23 servers, "dedicated, to only API management," says Pfremmer. "Now its all integrated in the existing stack and running as another deployment on Kubernetes. And thats just one environment. Between the three that we had plus the test, thats hard dollar savings."
<br>
</div>
@@ -40,14 +41,15 @@ css: /css/style_case_studies.css
</section>
<div class="banner2">
<div class="banner2text" style="width:70% !important;padding-left:15%">
"You may not be at a point where your whole stack can be cloud native. What if you can take your API management tool and make it cloud native, but still proxy to legacy systems? Using different pieces that are cloud native, open source and Kubernetes native, you can do pretty innovative stuff." </div>
"In a large enterprise, youre going to have people using Kubernetes, but then youre also going to have people using WAS and .NET. You may not be at a point where your whole stack can be cloud native. What if you can take your API management tool and make it cloud native, but still proxy to legacy systems? Using different pieces that are cloud native, open source and Kubernetes native, you can do pretty innovative stuff." <span style="font-size:16px;text-transform:uppercase">— Frank Greco Jr., Cloud Native Engineer at Northwestern Mutual</span></div>
</div>
<section class="section2">
<div class="fullcol">
<h2>For more than 160 years, Northwestern Mutual has maintained its industry leadership by keeping a strong focus on risk management, and for a long time, the company took a similar approach to managing its technology.</h2>
With a recent transformation to advance its digital strategy, the company has been making a lot of noise in the cloud native world. <br><br>
In the spring of 2015, this insurance and financial services company acquired a fintech startup, LearnVest, and decided to take "Northwestern Mutuals leading products and services and meld it with LearnVests digital experience and innovative financial planning platform," says Brad Williams, Director of Engineering for Client Experience, Northwestern Mutual. The companys existing infrastructure had been optimized for batch workflows hosted on an on-premise datacenter; deployments were very traditional, and had to be initiated in the companys Milwaukee headquarters. <br><br>
In order to give the companys 4.5 million clients the digital experience theyd come to expect, says Williams, "We had to build a platform that was elastically scalable, but also much more responsive, so we could quickly get data to the client website. We essentially said, All the controls are off. You build the system that you think is necessary to support a new, modern-facing one. Thats why we departed from anything legacy."
<h2>For more than 160 years, Northwestern Mutual has maintained its industry leadership in part by keeping a strong focus on risk management. </h2>
For many years, the company took a similar approach to managing its technology and has recently undergone a digital transformation to advance the companys digital strategy - including making a lot of noise in the cloud-native world.<br><br>
In the spring of 2015, this insurance and financial services company acquired a fintech startup, LearnVest, and decided to take "Northwestern Mutuals leading products and services and meld it with LearnVests digital experience and innovative financial planning platform," says Brad Williams, Director of Engineering for Client Experience, Northwestern Mutual. The companys existing infrastructure had been optimized for batch workflows hosted on an on-premise datacenter; deployments were very traditional and had to many manual steps that were error prone. <br><br>
In order to give the companys 4.5 million clients the digital experience theyd come to expect, says Williams, "We had to build a platform that was elastically scalable, but also much more responsive, so we could quickly get data to the client website. We essentially said, 'You build the system that you think is necessary to support a new, modern-facing one. Thats why we departed from anything legacy."
</div>
</section>
@@ -59,37 +61,38 @@ css: /css/style_case_studies.css
</div>
<section class="section3">
<div class="fullcol">
Williams and the rest of the platform team decided that the first step would be to start moving from private data centers to AWS. With a new microservice architecture in mind—and the companys headquarters taken out of the equation—they began using Docker containers. After looking into the various container orchestration options, they went with Kubernetes, even though it was still in beta at the time. "There was some debate whether we should build something ourselves, or just leverage that product and evolve with it," says Northwestern Mutual Cloud Native Engineer Frank Greco Jr. "Kubernetes has definitely been the right choice for us. It gave us that base framework so teams can be autonomous in what theyre building and deliver very quickly and frequently."<br><br>
As early adopters, the team had to do a lot of work with Ansible scripts to stand up the cluster. "We had a lot of hard security requirements given the nature of our business," says Northwestern Mutual App Platform Teams Manager Bryan Pfremmer. "We found ourselves running a configuration that very few other people ever tried." The client experience group was the first to use the new platform; today, a few hundred of the companys 1,500 engineers are using it and more are eager to get on board.<br><br>
The results have been dramatic. Before, infrastructure deployments could take two weeks; now, it is done in a matter of minutes. Without the bottleneck that was created at the companys headquarters, "You can take an app to production in that same day if you want to," says Pfremmer. <br><br>
The process used to be so cumbersome that minor bug releases would be bundled with feature releases. With the new streamlined system enabled by Kubernetes, the number of deployments has increased from about 24 a year to more than 500 in just the first 10 months of 2017. Availability has also been improved: There used to be a six-hour control window for commits every early Sunday morning, as well as other periods of general maintenance during which outages could happen. "Now theres no such thing because theres no outage window," says Pfremmer.
Williams and the rest of the platform team decided that the first step would be to start moving from private data centers to AWS. With a new microservice architecture in mind—and the freedom to implement what was best for the organization—they began using Docker containers. After looking into the various container orchestration options, they went with Kubernetes, even though it was still in beta at the time. "There was some debate whether we should build something ourselves, or just leverage that product and evolve with it," says Northwestern Mutual Cloud Native Engineer Frank Greco Jr. "Kubernetes has definitely been the right choice for us. It gave us that base framework so teams can be autonomous in what theyre building and deliver very quickly and frequently."<br><br>
As early adopters, the team had to do a lot of work with Ansible scripts to stand up the cluster. "We had a lot of hard security requirements given the nature of our business," explains Bryan Pfremmer, App Platform Teams Manager, Northwestern Mutual. "We found ourselves running a configuration that very few other people ever tried." The client experience group was the first to use the new platform; today, a few hundred of the companys 1,500 engineers are using it and more are eager to get on board.
The results have been dramatic. Before, infrastructure deployments could take two weeks; now, it is done in a matter of minutes. Now with a focus on Infrastructure automation, and self-service, "You can take an app to production in that same day if you want to," says Pfremmer.
</div>
</section>
<div class="banner4" style="background-image: url('/images/CaseStudy_northwestern_banner4.jpg')">
<div class="banner4text">
"Now the API management is all integrated in the existing stack, so that many EC2 instances every month are gone. And thats just one environment. Between the three that we had plus the test, thats hard dollar savings."
"Now, developers have autonomy, they can use this whenever they want, however they want. It becomes more valuable the more instrumentation downstream that happens, as we mature in it."
</div>
</div>
<section class="section5" style="padding:0px !important;">
<div class="fullcol">
Northwestern Mutual built that API management tool—called Kanali—and open sourced it in the summer of 2017. The team took on the project because the vendor product that theyd been using worked in an "anti-cloud native way that was different than everything else we were doing," says Greco. It required 23 servers in production, "dedicated, doing nothing but that," says Pfremmer. "Now the API management is all integrated in the existing stack, so that many EC2 instances every month are gone. And thats just one environment. Between the three that we had plus the test, thats hard dollar savings."<br><br>
Kanali has OpenTracing and Jaeger built in. "We wanted to do cloud native, open source tracing," says Greco. "We found that there was a CNCF project, OpenTracing, and it made sense because it was vendor agnostic and that speaks for itself. You only have to instrument it once, and then you control whatever you write on top of it. Then as I was looking at the different UIs that implemented OpenTracing, Jaeger seemed to be the one that looked the best."<br><br>
Now the engineers using the Kubernetes deployment platform have the added benefit of visibility in production—and autonomy. "Before, if you wanted to trace, you had to go to the centralized team that managed the vendor product and have them run a trace for you," says Greco. "Now, developers can just use this whenever they want, however they want. It becomes more valuable the more instrumentation downstream that happens, as we mature in it."
The process used to be so cumbersome that minor bug releases would be bundled with feature releases. With the new streamlined system enabled by Kubernetes, the number of deployments has increased from about 24 a year to more than 500 in just the first 10 months of 2017. Availability has also been improved: There used to be a six-hour control window for commits every early Sunday morning, as well as other periods of general maintenance, during which outages could happen. "Now theres no planned outage window," notes Pfremmer.<br><br>
Northwestern Mutual built that API management tool—called <a href="https://github.com/northwesternmutual/kanali">Kanali</a>—and open sourced it in the summer of 2017. The team took on the project because it was a key capability for what they were building and prior the solution worked in an "anti-cloud native way that was different than everything else we were doing," says Greco. Now API management is just another container deployed to Kubernetes along with a separate Jaeger deployment.<br><br>
Now the engineers using the Kubernetes deployment platform have the added benefit of visibility in production—and autonomy. Before, a centralized team and would have to run a trace. "Now, developers have autonomy, they can use this whenever they want, however they want. It becomes more valuable the more instrumentation downstream that happens, as we mature in it." says Greco.
</div>
<div class="banner5">
<div class="banner5text">
As the team continues to improve its stack and share its Kubernetes best practices, it feels that Northwestern Mutuals reputation as a technology-first company is evolving too. "No one would think a company thats 160-plus years old is foraying this deep into the cloud and infrastructure stack."<br>
<span style="font-size:16px">— APP PLATFORM TEAMS MANAGER, BRYAN PFREMMER
"Were trying to make what were doing known so that we can find people who are like, 'Yeah, thats interesting. I want to come do it!"
</div>
</div>
<div class="fullcol">
But the team didnt stop there. "In a large enterprise, youre going to have people using Kubernetes, but then youre also going to have people using WAS and .NET," says Greco. "You may not be at a point where your whole stack can be cloud native. What if you can take your API management tool and make it cloud native, but still proxy to legacy systems? Using different pieces that are cloud native, open source and Kubernetes native, you can do pretty innovative stuff."<br><br>
As the team continues to improve its stack and share its Kubernetes best practices, it feels that Northwestern Mutuals reputation as a technology-first company is evolving too. "No one would think a company thats 160-plus years old is foraying this deep into the cloud and infrastructure stack," says Pfremmer. And theyre hoping that means theyll be able to attract new talent. "Were trying to make what were doing known so that we can find people who are like, Yeah, thats interesting. I want to come do it!"
As the team continues to improve its stack and share its Kubernetes best practices, it feels that Northwestern Mutuals reputation as a technology-first company is evolving too. "No one would think a company thats 160-plus years old is foraying this deep into the cloud and infrastructure stack," says Pfremmer. And theyre hoping that means theyll be able to attract new talent. "Were trying to make what were doing known so that we can find people who are like, 'Yeah, thats interesting. I want to come do it!"
</div>