{"id":459,"date":"2018-10-17T06:09:26","date_gmt":"2018-10-17T06:09:26","guid":{"rendered":"https:\/\/www.appservgrid.com\/paw93\/?p=459"},"modified":"2018-10-17T07:40:54","modified_gmt":"2018-10-17T07:40:54","slug":"containers-the-journey-to-production","status":"publish","type":"post","link":"https:\/\/www.appservgrid.com\/paw93\/index.php\/2018\/10\/17\/containers-the-journey-to-production\/","title":{"rendered":"Containers &#8211; The Journey to Production \/"},"content":{"rendered":"<p>8\/May 2015<\/p>\n<p>By <a target=\"\">Matt Barker<\/a><\/p>\n<p>Tuesday the 21st of April was the inaugural <a href=\"http:\/\/www.meetup.com\/Contain\/\">[ Contain ]<\/a> meetup.<\/p>\n<p>Hosted at the Hoxton Hotel, Shoreditch, we were fortunate to have representation from:<\/p>\n<ul>\n<li>Alexis Richardson: Founder of <a href=\"http:\/\/weave.works\/\">Weaveworks<\/a> and <a href=\"https:\/\/www.rabbitmq.com\/\">RabbitMQ<\/a><\/li>\n<li>Ben Firshman: Founder of <a href=\"http:\/\/www.fig.sh\/\">Fig<\/a> and <a href=\"https:\/\/www.orchardup.com\/\">Orchard<\/a>, now Product Manager at <a href=\"https:\/\/www.docker.com\/\">Docker<\/a><\/li>\n<li>Steve Bryen: Solution Architect, Amazon, and UK lead on <a href=\"http:\/\/aws.amazon.com\/ecs\/\">Elastic Container Service<\/a> (ECS)<\/li>\n<li>Ivan Pedrazas: Senior DevOps at <a href=\"http:\/\/www.import.io\/\">Import.io<\/a> and long-time user of Docker<\/li>\n<\/ul>\n<p>The theme chosen for the event was:<\/p>\n<blockquote><p>\u201cContainers &#8211; The Journey to Production\u201d<\/p><\/blockquote>\n<p>A quick straw poll of the 70+ members of the audience showed that over 80% were using containers &#8211; but just 5 people were using containers in production. The theme of the evening seemed appropriate as many consider how to get to production successfully.<\/p>\n<p>Here are a selection of questions and answers from the panel and audience discussion.<\/p>\n<p>There is a general misconception that Docker and containerisation can solve everyone\u2019s problems now &#8211; but this is not true and panellist highlighted the several major themes for improvement, including:<\/p>\n<ul>\n<li>Security: Containers do not provide \u2018perfect isolation\u2019, especially compared to that provided by hypervisor. This weakness is very widely understood but not yet properly solved. The panel highlighted that enhanced security is actively being addressed, from using SELinux to encapsulating a container in a VM (or even in VMs in containers &#8211; a la Google). The approach is very much \u2018combine something we know and trust with containers\u2019 to get the best of both worlds. Notable recent developments included <a href=\"http:\/\/www.projectatomic.io\/\">Project Atomic<\/a> from RedHat, VMWare with <a href=\"https:\/\/vmware.github.io\/photon\">Photon<\/a> and <a href=\"https:\/\/vmware.github.io\/lightwave\/\">Lightwave<\/a> and Rancher Labs, another exciting startup in the container space, with <a href=\"http:\/\/rancher.com\/introducing-ranchervm-package-and-run-virtual-machines-as-docker-containers\/\">Rancher VM<\/a>.<\/li>\n<li>Persistence: Containers are a good fit for stateless applications but as soon as persistence of state is required (i.e. to a database) it soon becomes complicated. Bristol-born <a href=\"https:\/\/clusterhq.com\/\">ClusterHQ<\/a> are leading efforts to introduce container data management services and tools with their open source project <a href=\"https:\/\/github.com\/ClusterHQ\/flocker\">Flocker<\/a>.<\/li>\n<li>Ecosystem maturity: There are many tools out there in very active development but for many right now it is difficult to choose the right selection for a pure container infrastructure that will have the longer-term development and support necessary for many production systems. This is especially true if starting out from scratch. Container management was highlighted as a key component, for managing containers at any reasonable scale in production. Current open source projects are not quite there yet &#8211; e.g. <a href=\"http:\/\/kubernetes.io\/\">Kubernetes<\/a> is not yet 1.0 &#8211; but the ecosystem is growing and maturing fast. It was pointed out that smart container schedulers remain a very rare breed however, and this will show up in production systems.<\/li>\n<\/ul>\n<p>The panel were pretty unanimous in the benefits of containers, including:<\/p>\n<ul>\n<li>Isolation: Using Linux namespaces, a container has its own isolated environment, including its own file system and processes etc. Added to the fact that containers are lightweight, using a shared kernel, containerisation is attractive for multi-tenancy.<\/li>\n<li>Infrastructure resource efficiency: Containers help to drive improved infrastructure resource efficiency by utilising near-100% of CPU cores and memory with increased server density.<\/li>\n<li>Portability: With common formats (e.g. <a href=\"http:\/\/www.docker.io\/\">Docker<\/a>, <a href=\"https:\/\/github.com\/appc\">appc<\/a>) evolving to describe container images, with runtime environments using standard Linux kernel features, it makes it really easy to share and ship software between environments (i.e. laptop to server, cloud to cloud) solving dependency hell and dev\/prod parity in one big hit.<\/li>\n<li>Ease of use: Free and open source Docker tooling has made it easy and accessible to build, run, share and collaborate with containers, especially in existing environments that make good use of devops tools and methodology.<\/li>\n<\/ul>\n<p>Adoption of containers is growing, but for many it is only to use them in place of virtual machines, missing the many wider benefits it can provide. The general consensus was that containers are a great stepping-stone to ultimately building better software. As they\u2019re so lightweight, it becomes possible to think very differently about software; for example, containers can wrap a process with its own filesystem and spin up and down in an instant. Containers offer the potential to embrace the principles of micro-service architecture and provide the foundations to make software rapidly iterable, and highly scalable and resilient.<\/p>\n<p>The panel was split on this, with a couple saying that <a href=\"https:\/\/github.com\/coreos\/rkt\">rkt<\/a> from CoreOS would be worth a look, but it is probably not production-ready yet.<\/p>\n<p>There was an argument against looking in-depth at other container technologies initially, asking why you would go with anything else other than the clear market leader Docker, who have a mature and rapidly growing ecosystem.<\/p>\n<p>There was panel consensus that competition is undoubtedly good for the growth and evolution of the market. This will likely lead to other viable container options in the future.<\/p>\n<p>Another split of opinions on this question with some panel members asking what the point of this would be. Their argument was that you should initially be focusing on improving areas that are ripe for change, not trying to tackle huge, complex beasts that have been in-place for a very long time. The benefits of containers also arguably do not apply.<\/p>\n<p>The audience and other panel members were strongly in favour of tackling these apps, arguing that any improvement is better than nothing and you can still get the benefits of portability and ease of development.<\/p>\n<p>Dave from <a href=\"http:\/\/www.getcrane.io\/\">Crane<\/a> likens the process to going on a diet &#8211;<\/p>\n<blockquote><p>\u201cI might still look fat, but I\u2019ve lost at least 3 stone in the past year. Splitting Websphere up, and containerising will lose you that 3 stone of \u2018fat\u2019 even if it\u2019s not totally obvious to someone looking at you for the first time that benefits have been made.\u201d<\/p><\/blockquote>\n<p>There was also audience interest in using containers for archiving legacy applications.<\/p>\n<p>There was a strong feeling from the audience that you shouldn\u2019t even be trying for private-public hybrid cloud, as it\u2019s too difficult and complex. It\u2019s also arguably a minority case requirement.<\/p>\n<p>Some audience members posited that hybrid public-to-public would be useful, and an agreement that this is an exciting possibility.<\/p>\n<p>The panel said that containers might not directly lead to hybrid clouds in the short-term. But an interesting point made was that just knowing that you can move containers across clouds is appealing to executives and IT leaders, and a benefit in itself &#8211; however unlikely it might actually be the case.<\/p>\n<p>Portability is key and this was reiterated by many on the panel and audience.<\/p>\n<p>Notes:<\/p>\n<p>The next [ Contain ] event will be the 9th of June and will focus on Container Management. Sign up here.<\/p>\n<p>Jonatan Bjork has also written a blog post on the event, see <a href=\"http:\/\/blog.jonatanblue.se\/#post0\">here<\/a>.<\/p>\n<p><a href=\"https:\/\/blog.jetstack.io\/blog\/containers-the-journey-to-production\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>8\/May 2015 By Matt Barker Tuesday the 21st of April was the inaugural [ Contain ] meetup. Hosted at the Hoxton Hotel, Shoreditch, we were fortunate to have representation from: Alexis Richardson: Founder of Weaveworks and RabbitMQ Ben Firshman: Founder of Fig and Orchard, now Product Manager at Docker Steve Bryen: Solution Architect, Amazon, and &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.appservgrid.com\/paw93\/index.php\/2018\/10\/17\/containers-the-journey-to-production\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Containers &#8211; The Journey to Production \/&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-459","post","type-post","status-publish","format-standard","hentry","category-kubernetes"],"_links":{"self":[{"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/posts\/459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/comments?post=459"}],"version-history":[{"count":1,"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/posts\/459\/revisions"}],"predecessor-version":[{"id":468,"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/posts\/459\/revisions\/468"}],"wp:attachment":[{"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/media?parent=459"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/categories?post=459"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw93\/index.php\/wp-json\/wp\/v2\/tags?post=459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}