{"id":4175,"date":"2018-10-02T23:19:47","date_gmt":"2018-10-03T06:19:47","guid":{"rendered":"http:\/\/www.bryanfriedman.com\/?p=4175"},"modified":"2018-10-03T08:33:42","modified_gmt":"2018-10-03T15:33:42","slug":"springone-platform-2018-lets-get-technical","status":"publish","type":"post","link":"https:\/\/archive.bryanfriedman.me\/cloudingup\/2018\/10\/02\/springone-platform-2018-lets-get-technical\/","title":{"rendered":"SpringOne Platform 2018 &#8211; Let\u2019s Get Technical"},"content":{"rendered":"<p>SpringOne Platform is known for showcasing some of the most compelling customer stories you\u2019ll find at any tech conference. <a href=\"https:\/\/medium.com\/@jruckle_27729\/a-journey-through-springone-platform-2017-6e67bdfb2c7f\">Last year<\/a>, we heard from many leading companies about how they are getting better at software. This year, there were <a href=\"https:\/\/www.youtube.com\/watch?v=Jip10Fz693U\">more<\/a> <a href=\"https:\/\/www.youtube.com\/watch?v=zMLjVRMPHMQ\">amazing<\/a> <a href=\"https:\/\/www.youtube.com\/watch?v=wk5lFkIQYL8\">tales<\/a> of transformation from enterprise leaders. It\u2019s safe to say that \u201c<a href=\"https:\/\/content.pivotal.io\/blog\/8-1-2-things-we-learned-at-springone-platform-new-ideas-and-key-affirmations-for-the-modern-enterprise\">it\u2019s still about outcomes<\/a>.\u201d<\/p>\n<p>But behind all these great outcomes is a lot of cool tech! I attended quite a few technology-focused sessions this year. They got me excited about the various announcements throughout the week. There was all the stuff you\u2019d expect at a conference called \u201cSpringOne Platform\u201d \u2014 <a href=\"https:\/\/www.youtube.com\/watch?v=onZJ8beVEtI\">new versions of Spring components, Java 11 talk<\/a>, and\u00a0<a href=\"https:\/\/www.youtube.com\/watch?v=1ezNJvajUU0\">platform releases for PCF and PKS<\/a>. Then there were so many other tech topics that showed up too. I found these five to be the most intriguing:<\/p>\n<h3>1. Continuous Everything (CI\/CD)<\/h3>\n<p>We\u2019ve heard the virtues of <a href=\"https:\/\/springoneplatform.io\/2017\/sessions\/enterprise-ci-cd-scaling-the-build-pipeline-at-home-depot\">continuous integration<\/a> and <a href=\"https:\/\/springoneplatform.io\/2017\/sessions\/crossing-the-ci-cd-devops-chasm\">continuous delivery<\/a> at SpringOne before. There\u2019s plenty to be found on the <a href=\"https:\/\/springoneplatform.io\/2017\/sessions\/concourse-in-the-real-world-a-case-study-in-ci-cd-and-devops\">power of Concourse<\/a> as a CI tool. Even <a href=\"https:\/\/www.youtube.com\/watch?v=dLCbvpQ-HsE\">PCF operators are big on Concourse<\/a> and its ability to provision and repave the platform. This year, there was talk of inviting a new friend to the party.<\/p>\n<h4>What Happened?<\/h4>\n<p>Pivotal announced that it \u201chas a team working on contributing Cloud Foundry support to open source Spinnaker.\u201d Spinnaker already supported AWS, Azure, GCP, Google App Engine, Kubernetes, and other platforms. Now, Pivotal is ensuring that Cloud Foundry is a first-class citizen of Spinnaker. Jon Schneider covered this on the main stage and in detail in a <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/spinnaker-and-the-distributed-monorepo\">breakout session<\/a>.<\/p>\n<p><iframe loading=\"lazy\" width=\"676\" height=\"380\" src=\"https:\/\/www.youtube.com\/embed\/xcD4mWo_YHE?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<h4>Why Is It Cool?<\/h4>\n<p>Spinnaker is one of the few true multi-cloud delivery platforms. Started by Netflix, it has contributions from Google, Amazon, Microsoft, and now Pivotal. There are two essential components: a multi-cloud application inventory and pipelines.<\/p>\n<p>The inventory piece is critical, since applications rarely live on a single platform. Spinnaker presents an aggregate view of all your applications, clusters, and instances. (It can do this without even having deployed them.) This allows users to determine their application health and state across platforms. It also means Spinnaker is distinctly able to run out-of-band processes. As a result, it supports running things like vulnerability scanning or chaos engineering tooling at build time.<\/p>\n<p>Along with the inventory, as you\u2019d expect from a CD solution, Spinnaker offers pipelines. Even if you are a user of Concourse, Jenkins, or other CI tools, Spinnaker is best suited to help with these delivery aspects of your pipeline.<\/p>\n<h4>How Can I Get Started?<\/h4>\n<p>Check out <a href=\"https:\/\/github.com\/spinnaker\">Spinnaker on GitHub<\/a> and at\u00a0<a href=\"https:\/\/www.spinnaker.io\/\">https:\/\/www.spinnaker.io\/<\/a>. Keep an eye out for the 1.10 release which will include an early version of Cloud Foundry support.<\/p>\n<h2>2. Secure Credentials<\/h2>\n<p>Presentations about security topics don\u2019t always offer the most gripping demos. Still, I was very interested in a few of the breakout sessions on CredHub, the credential manager that\u2019s baked right in to Cloud Foundry. It turns out, security can be seductive.<\/p>\n<h4>What Happened?<\/h4>\n<p>CredHub is the credential manager that\u2019s baked in to Cloud Foundry. In his three sessions, Peter Blum offered a few different looks at CredHub. There was a great <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/credhub-and-secure-credential-management\">overview of how it works with PCF and Spring<\/a>. His most fascinating session, though, brought the magic of <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/using-credhub-for-kubernetes-deployments\">CredHub together with Kubernetes<\/a>.<\/p>\n<p>In his example, a webhook object in Kubernetes injects CredHub into pods on the cluster. Then application code in the pods may access secrets from the credential store. It was a slick demo and an incredible way to show off CredHub\u2019s simplicity and strong capabilities. Peter\u2019s <a href=\"https:\/\/github.com\/Oskoss\/kubernetes-credhub\">CredHub with Kubernetes code is on GitHub<\/a>!<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">Peter is amazing. Much respect to what he is doing wirh credhub. Three talks at <a href=\"https:\/\/twitter.com\/s1p?ref_src=twsrc%5Etfw\">@s1p<\/a> !! <a href=\"https:\/\/t.co\/YNgMQtMZL2\">https:\/\/t.co\/YNgMQtMZL2<\/a><\/p>\n<p>&mdash; R Arni (@r_arni) <a href=\"https:\/\/twitter.com\/r_arni\/status\/1045076680925204481?ref_src=twsrc%5Etfw\">September 26, 2018<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<h4>Why Is It Cool?<\/h4>\n<p>CredHub offers a secure way for humans and applications to interact with secrets. With Pivotal Application Service and the CredHub Service Broker, developers never have to know or see any passwords. Passwords are only available to application containers with authorized access. Each application container includes a signed certificate and key. This key provides identity when communicating with CredHub.<\/p>\n<h4>How Can I Get Started?<\/h4>\n<p>There are tons of amazing CredHub resources out there. Check out some of the recent blog posts from my colleagues:<\/p>\n<ul>\n<li><a href=\"https:\/\/content.pivotal.io\/blog\/credhub-and-the-road-to-credential-rotation\">CredHub and The Road to Credential Rotation<\/a><\/li>\n<li><a href=\"https:\/\/content.pivotal.io\/blog\/need-to-secure-credentials-for-off-platform-services-in-pcf-try-the-credhub-service-broker-now-in-beta-we-take-an-inside-look\">Secure Credentials&#8230;the CredHub Service Broker&#8230;an Inside Look<\/a><\/li>\n<li><a href=\"https:\/\/content.pivotal.io\/blog\/enterprise-architects-its-time-to-learn-how-the-credhub-service-broker-applies-the-principle-of-least-privilege-to-your-secrets\">&#8230;How the CredHub Service Broker Applies the Principle of Least Privilege&#8230;<\/a><\/li>\n<li><a href=\"https:\/\/content.pivotal.io\/blog\/protect-your-external-service-credentials-with-service-instance-sharing-and-the-credhub-service-broker-we-explain-how\">&#8230;Protect Your External Service Credentials with Service Instance Sharing&#8230;<\/a><\/li>\n<\/ul>\n<p>You can also go straight to the <a href=\"https:\/\/docs.cloudfoundry.org\/credhub\/\">CredHub Docs<\/a> or the <a href=\"https:\/\/github.com\/cloudfoundry-incubator\/credhub\">GitHub repo<\/a> for more detailed info. For you Spring buffs, there\u2019s even a <a href=\"https:\/\/spring.io\/projects\/spring-credhub\">Spring CredHub project<\/a>.<\/p>\n<h2>3. Serverless<\/h2>\n<p>What\u2019s a tech conference today without the mention of serverless? SpringOne definitely had its share of serverless moments. Of course, Pivotal Function Service (coming soon) got a <a href=\"https:\/\/youtu.be\/1ezNJvajUU0?t=9m35s\">shout-out from Onsi Fakhouri<\/a>. Plus, there were plenty of other details covered about Knative and riff at the conference.<\/p>\n<h4>What Happened?<\/h4>\n<p><a href=\"https:\/\/www.youtube.com\/watch?v=_OiGt4QwdlM&amp;list=PLAdzTan_eSPQsR_aqYBQxpYTEQZnjhTN6&amp;index=8\">Mark Fisher did a live demo of riff<\/a> on the main stage. There were also some very informative and demystifying sessions on Knative and riff. They ranged from <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/introducing-knative\">YAML-heavy<\/a> to <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/riffing-on-knative\">YAML-free<\/a> with one especially <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/knative-and-riff-for-spring-developers\">for Spring developers<\/a>.<\/p>\n<p><iframe loading=\"lazy\" width=\"676\" height=\"380\" src=\"https:\/\/www.youtube.com\/embed\/_OiGt4QwdlM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<h4>Why Is It Cool?<\/h4>\n<p>At SpringOne Platform last year, <a href=\"https:\/\/projectriff.io\/video\/mark-fisher-at-springone-platform-2017\/\">Pivotal announced riff<\/a>, an open source serverless framework. Earlier this year, Pivotal revealed that <a href=\"https:\/\/content.pivotal.io\/blog\/knative-powerful-building-blocks-for-a-portable-function-platform\">riff was replatformed on top of Knative<\/a>. My colleague Brian McClain described it best when he tweeted:<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\"><a href=\"https:\/\/twitter.com\/hashtag\/Knative?src=hash&amp;ref_src=twsrc%5Etfw\">#Knative<\/a> is shaping up to be a major game changer. Not \u201cYet Another Serverless Framework\u201d, but an entire suite of building blocks for modern serverless workloads. Wonderful collaboration between Google, Pivotal and other industry leaders <a href=\"https:\/\/twitter.com\/hashtag\/SpringOne?src=hash&amp;ref_src=twsrc%5Etfw\">#SpringOne<\/a> <a href=\"https:\/\/t.co\/bYN9swqWjk\">pic.twitter.com\/bYN9swqWjk<\/a><\/p>\n<p>&mdash; Brian McClain (@BrianMMcClain) <a href=\"https:\/\/twitter.com\/BrianMMcClain\/status\/1044602955956187136?ref_src=twsrc%5Etfw\">September 25, 2018<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<p>This is the technology that is driving Pivotal&#8217;s serverless future. Knative and riff will power the yet-to-be-released Pivotal Function Service.<\/p>\n<h4>How Can I Get Started?<\/h4>\n<p>Check out <a href=\"https:\/\/projectriff.io\">https:\/\/projectriff.io<\/a> and <a href=\"https:\/\/pivotal.io\/knative\">https:\/\/pivotal.io\/knative<\/a> for more details. You can also find both <a href=\"https:\/\/github.com\/projectriff\">riff<\/a> and <a href=\"https:\/\/github.com\/knative\/\">Knative<\/a> on GitHub.<\/p>\n<h2>4. Buildpacks Everywhere<\/h2>\n<p>Containers and Kubernetes are hot topics at conferences. What&#8217;s even hotter? Taking control of the application lifecycle in a container-centric world. Developers want a fast and secure way to get from source to container. It\u2019s something the Cloud Foundry community has had solved for a while with buildpacks. Now this solution is expanding.<\/p>\n<h4>What Happened?<\/h4>\n<p>Day 1 main stage had a surprise ending from Stephen Levine from Pivotal and Terence Lee from Heroku. They introduced an effort to bring buildpacks to the broader cloud-native community. It&#8217;s called Cloud Native Buildpacks, and it joins the CNCF as a sandbox project <a href=\"https:\/\/www.cncf.io\/blog\/2018\/10\/03\/cncf-to-host-cloud-native-buildpacks-in-the-sandbox\"><em>today<\/em><\/a>.<\/p>\n<p><iframe loading=\"lazy\" width=\"676\" height=\"380\" src=\"https:\/\/www.youtube.com\/embed\/wU5n7Sv8JL8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">Introducing Cloud Native Buildpacks. At <a href=\"https:\/\/twitter.com\/hashtag\/SpringOne?src=hash&amp;ref_src=twsrc%5Etfw\">#SpringOne<\/a>, Pivotal and Heroku gave you a sneak peek at this platform-agnostic tool that&#39;s now part of the CNCF. <a href=\"https:\/\/t.co\/oAn5qjBsNE\">pic.twitter.com\/oAn5qjBsNE<\/a><\/p>\n<p>&mdash; Richard Seroter (@rseroter) <a href=\"https:\/\/twitter.com\/rseroter\/status\/1044606332622557184?ref_src=twsrc%5Etfw\">September 25, 2018<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<h4>Why Is It Cool?<\/h4>\n<p>Buildpacks are an \u201copinionated, source-centric way to build applications.\u201d They are a big part of the magic behind Cloud Foundry\u2019s `cf push` experience. Buildpacks detect the kind of app then fetch and install the tools needed to run it. For operators, the ability to manage a curated set of buildpacks is attractive. It also allows for rapid, secure patching en-mass using remote image layer rebasing. All the while, developers simply focus on delivering value for their own customers. The new specification and set of tools enable buildpacks to be used on any platform.<\/p>\n<h4>How Can I Get Started?<\/h4>\n<p>Check out <a href=\"https:\/\/buildpacks.io\/\">https:\/\/buildpacks.io\/<\/a> for more info. Meanwhile, use the <a href=\"https:\/\/github.com\/buildpack\/pack\">`pack` CLI<\/a> to experiment with Cloud Native Buildpacks.<\/p>\n<h2>5. Reactive Programming<\/h2>\n<p>Reactive programming is not a new concept for SpringOne Platform attendees. I vividly remember <a href=\"https:\/\/youtu.be\/MQamx7-bCVI?t=17m11s\">Phil Webb\u2019s awesome keynote from last year<\/a> comparing blocking with non-blocking. (Who can forget the swimming ducks and cats?) This year there was more Reactive-related fun.<\/p>\n<h4>What Happened?<\/h4>\n<p>There were two impressive keynotes relevant in the Reactive programming space. First, there was the introduction of the non-blocking relational database connectivity driver, R2DBC. We also learned about RSocket, a new message-based application network protocol.<\/p>\n<p><iframe loading=\"lazy\" width=\"676\" height=\"380\" src=\"https:\/\/www.youtube.com\/embed\/E3s5f-JF8z4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p><iframe loading=\"lazy\" width=\"676\" height=\"380\" src=\"https:\/\/www.youtube.com\/embed\/D2Z5d9dEBxQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<h4>Why Is It Cool?<\/h4>\n<p>In two articles on InfoQ, Charles Humble examines both <a href=\"https:\/\/www.infoq.com\/news\/2018\/10\/springone-r2dbc\">R2DBC<\/a> and <a href=\"https:\/\/www.infoq.com\/news\/2018\/10\/rsocket-facebook\">RSocket<\/a>. He does an amazing job explaining the advantages of Reactive programming. As Pivotal&#8217;s Ben Hale explains in one article, &#8220;Reactive programming is the next frontier in Java for high efficiency applications.&#8221; He points out two major roadblocks to Reactive programing: data access, and networking. R2DBC and RSocket aim to address these problems.<\/p>\n<p>I found RSocket to be particularly fascinating. In the main stage presentation, Stephane Maldini gave a brief but helpful history of TCP and HTTP. He framed RSocket as an alternative to these protocols while sort of bringing the best of each to bear. Rather than simply request\/response, RSocket offers four different interaction models. (They are Request\/Void, Request\/Response, Request\/Stream, and Stream\/Stream.) What&#8217;s more, it&#8217;s language-agnostic, bi-directional, multiplexed, message-based, and supports connection resumption. It kind of blew my mind.<\/p>\n<h4>How Can I Get Started?<\/h4>\n<p>As always there\u2019s a .io site for RSocket (<a href=\"http:\/\/rsocket.io\/\">http:\/\/rsocket.io\/<\/a>) and an <a href=\"https:\/\/github.com\/rsocket\/rsocket\">RSocket GitHub repo<\/a>. <a href=\"https:\/\/github.com\/r2dbc\">R2DBC is on GitHub<\/a> too. It\u2019s also worth checking out the related content from the conference. Ben Hale covered both <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/reactive-relational-database-connectivity\">R2DBC<\/a> and <a href=\"https:\/\/springoneplatform.io\/2018\/sessions\/multi-service-reactive-streams-using-spring-reactor-and-rsocket\">RSocket<\/a> in his sessions.<\/p>\n<h3><a href=\"https:\/\/springoneplatform.io\/\">Next Year in Austin!<\/a><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-4185\" src=\"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-content\/uploads\/2018\/10\/S1P-2019-Austin-1200x630.png\" alt=\"\" width=\"1200\" height=\"630\" srcset=\"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-content\/uploads\/2018\/10\/S1P-2019-Austin-1200x630.png 1200w, https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-content\/uploads\/2018\/10\/S1P-2019-Austin-1200x630-300x158.png 300w, https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-content\/uploads\/2018\/10\/S1P-2019-Austin-1200x630-768x403.png 768w, https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-content\/uploads\/2018\/10\/S1P-2019-Austin-1200x630-1024x538.png 1024w, https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-content\/uploads\/2018\/10\/S1P-2019-Austin-1200x630-676x355.png 676w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>SpringOne Platform is known for showcasing some of the most compelling customer stories you\u2019ll find at any tech conference. Last year, we heard from many leading companies about how they are getting better at software. This year, there were more amazing tales of transformation from enterprise leaders. It\u2019s safe to say that \u201cit\u2019s still about [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,9],"tags":[],"class_list":["post-4175","post","type-post","status-publish","format-standard","hentry","category-cloud","category-pivotal","post-preview"],"_links":{"self":[{"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/posts\/4175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/comments?post=4175"}],"version-history":[{"count":6,"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/posts\/4175\/revisions"}],"predecessor-version":[{"id":4186,"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/posts\/4175\/revisions\/4186"}],"wp:attachment":[{"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/media?parent=4175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/categories?post=4175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/archive.bryanfriedman.me\/cloudingup\/wp-json\/wp\/v2\/tags?post=4175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}