Tag: open source

  • Tool Development – In-House or Ready made

    Tool Development – In-House or Ready made

    Tool development and adoption

    The current pace of software development cannot manage its speed without the automation.

    Automation is the most important element in order to achieve agility in delivery of the product. Every part of the software development life cycle needs tools to perform their action automatically. These phases could be coding, code review, build & deployment, environment management, resource assignment, notification and many others.

    There could be 2 options, which a team can opt for:

    • Use a third party tool
      • One can select the tools, which are available in market, either open-sourced or free. You can even buy enterprise solution if needed.
    • Build an in-house tool
      • Tool can be built or developed in-house for the consumption as well.

    Lets take look different aspects of choosing options

    • Features

    Each organization and team may have different features for different use cases. Some time it makes more sense to build your own tool just for your need rather adaption of a third-party one for which most of the features are not going to be used.

    • Time for on-boarding

    Time is definitely a big factor here, if one thinks of developing in-house tool and use it then this will definitely take time. If, need of tool is not urgent or critical, in house development option could be considered.

    Third-party tool can be immediately on boarded and there won’t be much delay other then some logistics reason.

    • Effort and Resource

    If the tool is complex, its not easy to build, one will need resources and lots of time to build it and then next challenge is implementation.

    Above effort can be reduced by adaption the tools which is available in the market. There are chances that other users are aware of the tools and training time could be reduced.

    • Cost

    Lets discuss one more important part, which is the cost. Yes, money is also one of the biggest factors on deciding what to opt for. There may be good options to choose from free and open source tools. But if enterprise tools selected, then cost may incur.

    You will need a dedicated team and resources to build the tool with in organization.

    Its hard to decide if in-house tools will be costly or enterprise. Decision has be to taken by considering long term investment and return.

    • Support

    Enterprise tools usually come with a proper support. This is really important factor if tool is very critical. Open source tools may not have enough support, as it is community driven effort. In-house tools may need resource to provide support and training in the team/organization.  Even bug fix needs to be taken care under support category.

    • Adaption/Expertise

    In-House tools are highly customize as per use case and will need proper training for adaption with in organization. In case of thirdparty tool, as I mentioned earlier there are chances that other users are aware of the tools and training time could be reduced.

    So, Adaption of tool is not an easy task. Decision has to be taken with a very strategic thought process.

    If tool is complex then it is definitely not a part time task.

    One more important thing to consider is if the team is trying to build in-house tool, which is going to be major business for somebody else then it has to be developed with proper planning and priorities, otherwise there are high chances of failure.

    Please Note- I am not considering or referring to any tooling like script or some simple UI dashboard.

  • 9 Open Source DevOps Tools We Love

    9 Open Source DevOps Tools We Love

    While we have been building our SaaS company, we have been investing much time in researching and deciding which tools to include in our DevOps toolkit. We’ve based these decisions on our years of experience in the IT industry, dealing with infrastructure for the most part. From building a petabyte-scale, data analytics infrastructure, our architecture, tools, and processes have become key components of our technology and operations. We’ve taken great care in selecting, benchmarking and constantly improving our tool selection.

    As a company that is building a solution on top of an open-source stack (ELK), our team is heavily involved in the open source community, contributing to multiple projects such as Camel and Kafka while customizing tools to fit our needs. The vast majority of tools we use internally are open-source ones. By sharing the toolset that we’ve collected and honed over time, we hope to foster a discussion within the DevOps community on what further improvements can be made.

    With that, we welcome you to enjoy browsing through the following list that we’ve created. Some tools you may have known about for years, while others may be new. Of course, we invite any and all feedback, especially from those of you who are using alternatives!

    Must-Have DevOps Tools

    1. Nagios (& Icinga) 

    nagiosInfrastructure monitoring is a field that has so many solutions… from Zabbix to Nagios to dozens of other open-source tools. Despite the fact that there are now much newer kids on the block, Nagios is a veteran monitoring solution that is highly effective because of the large community of contributors who create plugins for the tool. Nagios does not include all the abilities that we had wanted around the automatic discovery of new instances and services, so we had to work around these issues with the community’s plugins. Fortunately, it wasn’t too hard, and Nagios works great.

    We also looked into Icinga, which was originally created as a fork of Nagios. Its creators aim to take Nagois to the next level with new features and a modern user experience. There is a debate within the open source community about the merits of Nagios and its stepchild, but for now we are continuing to use Nagios and are satisfied with its scale and performance. The switch to newer technology, such as Icinga, may be appropriate in the future as we progress.

    2. Monit

    monitSometimes the simplest tools are the most useful, as proven by the simple watchdog Monit. Its role is to ensure that any given process on a machine is up and running appropriately. For example, a failure occurs in Apache, Monit will help to restart the Apache process. It is very easy to setup and configure and is especially useful for multi-service architecture with hundreds of micro-services. If you are using Monit, make sure to monitor the restarts that it executes in order to surface problems and implement solutions (rather than just restarting and ignoring the failure). You can do this by monitoring Monit’s log files and ensuring that you are alerted to every restart.

    3. ELK – Elasticsearch, Logstash, Kibana – via Logz.io

    logz.ioThe ELK Stack is the most common log analytics solution in the modern IT world. It collects logs from all services, applications, networks, tools, servers, and more in an environment into a single, centralized location for processing and analysis. We use it for analytical purposes (e.g., to troubleshoot problems, monitor services, and reduce the time it takes to solve operational issues). Another use for this tool is for security and auditing (e.g., to monitor changes in security groups and changes in permissions). After receiving alerts on these issues, it is easy to act on unauthorized users and activities. We also use ELK for business intelligence, such as monitoring our users and their behavior. You can set up your own ELK or buy it as-a-service. We’ve written a guide for the community on using ELK to monitor your application performance.

    Disclaimer: Logz.io is our ELK-as-a-service that we use in our own environment. You can say that we eat our own dog food.

    4. Consul.io

    consulConsul is a great fit for service discovery and configuration in modern, elastic applications that are built from microservices. The open-source tool makes use of the latest technology in providing internal DNS names for services. It acts as a kind of broker to help you sign and register names, enabling you to access service names instead of specific machines. If, for example, you have a cluster of multiple machines, you can simply register them as a single entity under Consul and access the cluster easily. We praise this tool for its efficiency, although we still feel there is more that can be done with it. If you also use it, it would be great to hear about your own use case.

    5. Jenkins

    jenkinsEveryone knows Jenkins, right? It’s not the fastest or the fanciest, but it’s really easy to start to use and it has a great ecosystem of plugins and add-ons. It is also optimized for easy customization. We have configured Jenkins to build code, create Docker containers (see the next item), run tons of tests, and push to staging/production. It’s a great tool, but there are some issues regarding scaling and performance (which isn’t so unusual). We’ve explored other cool solutions such as Travis and CircleCI, which are both hosted solutions that don’t require any maintenance on our side. For now, however, since we’ve already invested in Jenkins, we’ll continue with it.

    6. Docker

    dockerEverything that can be said about how Docker is transforming IT environments has already been said. It’s great…life changing, even — (although we’re still experiencing some challenges with it). We use Docker in production for most services. It eases configuration management, control issues, and scaling by allowing containers to be moved from one place to another.

    We have developed our SaaS solution with a twelve-layer pipeline of data processing. Together with Jenkins and Docker, we have been able to run a full pipeline across all layers on a single Mac. It would be wrong to say that there aren’t any complications with Docker, as even small containers can take a significant amount of time to build. However, we want to ensure that our developers are as satisfied as possible and enable them to work rapidly. With all of the management involved in storage, security, networking — and everything surrounding containers — this can be a challenge.

    We see Docker progressing and look forward to welcoming the company’s new management and orchestration solutions. For those who might be having issues with Docker, we’ve also compiled a list of challenges and solutions when migrating to Docker.

    7. Ansible

    ansibleAgain, simplicity is key. Ansible is a configuration management tool that is similar to Puppet and Chef.  Personally, we found those two to have more overhead and complexity to our use case– so we decided to go with Ansible instead. We know that Puppet and Chef probably have a richer feature set, but simplicity was our desired KPI here. We see some tradeoffs between configuration management using Ansible and the option to simply kill and spin new application instances using a Docker container. With Docker, we almost never upgrade machines but opt to spin new machines instead, which reduces the need to upgrade our EC2 cloud instances. Ansible is used mostly for deployment configuration mostly. We use it to push changes and re-configure newly-deployed machines. In addition, its ecosystem is great, with an easy option to write custom applications.

    8. Collectd/Collectl

    Collectd/l are nifty little tools that gather and store statistics about the system on which they run and are much more flexible than other tools. They allow users to measure the values of multiple system metrics and unlike other log collection tools that are designed to measure specific system parameters, Collectd/l can monitor different parameters in parallel. We use these two tools to measure customer performance parameters and ship them to our ELK-as-a-Service platform. We’ve specifically wrapped a Collectl agent in a Docker container and push it with Ansible to all of our servers. It collects information every couple of seconds and then ships it to ELK to allow us to run reports and send alerts. If you’d like to see a specific example of how we do this process in our environment and how others can do the same, we’ve created a guide for everyone.

    9. Git (GitHub)

    githubGit was created 10 years ago following the Linux community’s need for SCM (Source Control Management) software that could support distributed systems. Git is probably the most common source management tool available today. After running Git internally for a short period of time, we realized that we were better suited with GitHub. In addition to its great forking and pull request features, GitHub also has plugins that can connect with Jenkins to facilitate integration and deployment. I assume that mentioning Git to modern IT teams is not breaking news, but I decided to add to it to the list due to its great value to us.

    Other picks?

    The modern DevOps world is full of outstanding and unique open source tools—it’s a jungle out there. We found the tools listed here to be the best in breed and think they should be included in every DevOps engineer’s shortlist.

    Or am I wrong? What open source DevOps tools are in your toolkit? I’d love to hear your own recommendations and experiences in the comments below.

  • The Software BOM Squad

    The Software BOM Squad

    In my previous post, “When Good Code Goes Bad“, I shared new research showing the average large development organization consumes over 15,000 known vulnerable and defective components annually.  While we can’t stop software from going bad, there are practices from traditional manufacturers that we can use to improve our ability to recall and fix the “bad” software components.

    The Software BOM

    A Bill of Materials (BOM) is used in traditional manufacturing supply chains to list the suppliers and parts used in a product, a “software bill of materials“ (BOM) is an inventory of the third party and open source components used to build an application.

    Screen Shot 2015-07-17 at 10.06.03 AM
    A sample software bill of materials lists all open source and third party components, including their version, age, license type, and any known security vulnerabilities.

    As noted in Wikipedia, “The concept of a BOM is well-established in traditional manufacturing as part of supply chain management.  A manufacturer uses a BOM to track the parts it uses to create a product. If defects are later found in a specific part, the BOM makes it easy to locate affected products.

    “A software BOM is useful both to the development organization (manufacturer) and the buyer (customer) of a software product. Builders often leverage available open source and third-party software components to create a product; a software BOM allows the builder to make sure those components are up to date and to respond quickly to new vulnerabilities. Buyers can use a software BOM to perform vulnerability or license analysis, both of which can be used to evaluate risk in a product. Understanding the supply chain of software, obtaining a software BOM, and using it to analyze known vulnerabilities are crucial in managing risk.”

    A software bill of materials not only inventories what is used, but in some cases it also syncs with real-time component defect data to indicate which components have known vulnerabilities or license risks. Various software supply chain automation tools expand the bill of software much further, alerting stakeholders automatically when a defect alert occurs. In advanced tools, the entire software lifecycle is automated to ensure that defective components are avoided and continuous monitoring instantly identifies newly announced vulnerabilities as soon as they are discovered.

    Breaking Bad

    As mentioned in my previous post, When Good Code Goes Bad, there is no way to prevent software from “going bad”.  No one is immune from these issues.  Therefore, we need to focus on our responses to these issues.

    To paraphrase Vince Lombardi, “It’s not how you get knocked down, it’s how you get up”.  Following the OpenSSL vulnerability announcement in 2014 (or pick any other new security vulnerability with or without an assigned logo), every development and IT operations team on the planet was asking two questions:

    1. Did we ever use that open source component?
    2. if yes, where is it?

    For those organizations tracking their use of components with a software bill of materials, the answer was easy to find.  For other organizations, weeks and often months of research were required.  To get a sense of the lack of maturity around traceability practices, take a look at this image from Sonatype research showing announcements of OpenSSL vulnerabilities in products following the initial vulnerability disclosure in April 2014.

    Screen Shot 2015-07-17 at 10.07.09 AM
    Automating Traceability Across the Software Supply Chain

    Software supply chain complexities, coupled with the volume and velocity of open source and third-party components flowing through them, are forcing us to think differently about our current practices across development and operations.  We are not the first to face these challenges and we can learn a great deal from the mature practices of  other high-velocity manufacturing organizations and industries.

    One thing is certainly clear.  Manual practices of monitoring or occasional checkpoints cannot keep pace with volume and velocity of components being consumed.  And if you extend these considerations beyond just open source components and into containers, microservices, or other images used in development and operations, the problem is further out of reach for manual processes to keep pace. The volume and velocity within our software supply chains will not diminish—and without a new approach, the volume of unchecked quality and integrity of parts being consumed will continue to build up as technical debt.

    But the answer is here today: automation.  Automation can unleash the potential of an organization’s development capacity. Rarely is there such an opportunity to simultaneously increase speed, efficiency, and quality. Solutions that facilitate comprehensive software supply chain automation are poised to usher in the next wave in development productivity—with gains on par or even greater than possible with agile, Lean, and DevOps.

    More information on the current state of software supply chain practices as well as examples of best practices being employed by software development teams, can be found in the 2015 State of the Software Supply Chain Report.

    Screen Shot 2015-07-22 at 9.26.05 AM

     

  • Bonitasoft makes business process management more agile with open source

    Bonitasoft makes business process management more agile with open source

    Organizations embrace DevOps for a variety of reasons, but one of the core value propositions is speed. DevOps enables business to build, test, deploy and update applications more quickly than without DevOps. With so many quickly-moving parts, though, organizations also need tools to help keep track of it all like a business process management platform.

    Bonitasoft developed its business process management platform—Bonita BPM 7—to facilitate the creation of engaging, process-based applications. It was also important, however, that the applications be able to adapt in real-time to changing business requirements. The latest release is an open source version that represents a strategic shift for Bonitasoft—a somewhat inevitable evolution to leverage the same practices and principles in designing and maintaining the platform as the platform is intended to manage.

    “We’ve embarked on a new mission to create solutions that empower developers to build applications that support continuous change,” Bonitasoft CEO and co-founder Miguel Valdes Faura said in a press release statement. “To win in today’s competitive climate, you need to be able to adapt to change quickly and continually improve your business processes and the applications that support them. Bonita BPM 7 is the first solution leveraging the power of open source and BPM process-based applications that meets the demands of today’s business requirements.”

    Bonita BPM 7 is built on a popular and widely used open source BPM solution. Developers can create processes in Bonita BPM 7 using the BPMN 2.0 standard, and can seamlessly connect with existing third-party systems such as CRM and ERP systems. Bonita BPM 7 builds on the open source foundation, though, with more extensible frameworks, and a powerful connector builder tool to enable developers to freely code their own graphical components and REST APIs.

    The “secret sauce” of BPM 7 is the way Bonitasoft segregates business logic from the data and user interfaces. The separation makes it easier to introduce changes in real-time. Developers can perform maintenance or push updates to the user interface independently of the business workflow and without taking the application offline.

    According to Bonitasoft, the key benefits of Bonita BPM 7 include the following:

    • Speed – Developers can build applications faster, improving developer productivity
    • Freedom – Developers can easily build what business really wants, and companies can maintain their applications easier and more affordably with live updates
    • Adoption – Development teams can empower their users with more accessible, engaging and usable applications, boosting competitive advantage

    “Bonita BPM 7 represents a real convergence between the world of the ‘BPM app’ and traditional enterprise software,” Valdes Faura said. “It gives developers the freedom to easily code and extend the system whenever they hit the limit with its native features. Plus, the platform is built for change, so developers and business users can apply changes, updates and improvements over time – creating what we call ‘living applications’ that live and breathe and grow along with your business.”

    As developers develop faster and DevOps enables organizations to push and update applications more rapidly the need for tools and platforms to monitor and manage things grows. By leveraging open source software Bonita BPM 7 follows a successful strategy already employed by companies like Github and CloudBees. If you’re looking for a business process management platform you should check out Bonita BPM 7.

  • Managing Open source software components

    Managing Open source software components

    Building any software need lots of efforts including resources, time, money, etc. It is really a great pleasure when it goes live or gets released. In parallel, there is always a chance that bugs may put the release in a difficult condition even after multiple rounds of testing. Teams can fix bugs related to software features or functionality, but the ones which can hit badly are

    • Security vulnerability.
    • Licensing risk of open source component.
    • Outdated open source component.

    The world is moving towards open source in a very fast pace and its growing use in software as components inside the application. Open source components are available free for us, however there could be more risk while using them. A product which is paid and commercial is bound to fix issues and provide adequate support for any vulnerability or security issue and Licensing, But open source software may have a little more of a high risk and its very important to be updated about new releases and available bug fixes.

    If open source components are not monitored properly and keep up to date, that may lead the software to become vulnerable.

    Above checks needs to be done during the development phase and ruled out any discrepancy related to security or legal. This check can be included as part of build process to make sure it does not pass the fist barrier and caught even before hitting the testing phase. Eventual this can save development and testing effort and their time.

    There are tools available which can take care of some/all of verification of open source components in various phases.

    Artifactory

    This tool can verify the license of the open source component and check its compatibility with various definitions. You can even add your own license definition as per your requirement.

    Sonatype Nexus and WhiteSource

    These tools will verify the license and keep the component information up to date. They will check for any updates,  bug fixes for any vulnerability issues and notify the user. These tools can do component security vulnerability and license analysis with the latest available information.

    Security issues would be the last thing any software developer wants. Even small legal or security problems can put your system/software in a dangerous situation. Better to secure software first then fixing it later.

    Reference ->

    http://www.scmtechblog.net/2015/06/managing-open-source-component.html

    http://www.scmtechblog.net/2015/03/maven-repository-tools-comparison.html 

  • Open source and Samsung take center stage at Red Hat Summit

    Open source and Samsung take center stage at Red Hat Summit

    While much of the DevOps world was focused on DockerCon in San Francisco this week, there was also big news happening on the east coast. While DockerCon was shaking things up with the announcement of the Open Container Project the Red Hat Summit in Boston held its own share of big news and much of it spotlighted the important role of open source.

    “Red Hat is really the independent voice of Linux focused entirely on business,” said Rob Enderle, principal analyst with the Enderle Group. “It is also a showcase of how to make money on the platform without taking advantage of anyone in the process and largely remaining true to the core tenets that created Linux in the first place.”

    Focus on Open Source

    One of the primary core tenets—if not the defining core tenet—of Linux is open source. The shared development and collaborative nature of the operating system as an open source project is its main strength. At the Red Hat Summit open source played an even larger role than normal.

    “The company continues to show strong momentum for OpenShift Commons as the re-write of the technology is moving forward showing that the platform-as-a-service (PaaS) battles are alive and well,” explained Al Hilwa, program director of software development research for IDC. “Red Hat also rebranded and updated its FeedHenry platform as it continues to turn it fully into open source and integrate it with OpenShift.”

    Samsung Partnership

    Aside from the focus on open source, the other big news out of the Red Hat Summit was a new strategic alliance with Samsung. Samsung will push Red Hat’s mobile platform and potentially other software into the enterprise in a more integrated fashion as a function of the new partnership.

    The relationship has potential, but according to Enderle there are both positive and negative outcomes possible. “Samsung needs Red Hat far more than Red Hat needs Samsung because Red Hat provided the enterprise brand that Samsung needs to penetrate the space. Samsung is a firm that has never found a platform they didn’t like and have historically been unable to focus on any one of them for extended periods of time,” cautions Enderle. “Red Hat alone won’t be able to fix that and Samsung’s behavior could actually tarnish Red Hat if they aren’t careful.”

    Strong Momentum

    Hilwa also made another observation about the strength of Red Hat’s business model. “That the company will cruise through the two billion dollar annual revenue barrier sometime this year is all but certain with its posted rates of growth. This is an enormous milestone for the open source world.”

    We’ll have to wait and see how the Red Hat / Samsung partnership pans out for either company, but the Red Hat Summit highlighted the strength of Red Hat’s momentum and the unstoppable juggernaut of open source development.

  • BlazeMeter harnesses open source to deliver continuous testing for DevOps

    BlazeMeter harnesses open source to deliver continuous testing for DevOps

    DevOps is all about efficiency and automation—streamlining development and deployment. In order to deliver quality code quickly a culture of continuity is required—including continuous testing. BlazeMeter provides organizations with a platform for continuous performance testing in a DevOps environment.

    BlazeMeter claims to be a more affordable—and in some ways more powerful—performance testing platform than HP LoadRunner. The platform isn’t completely unique. It is harnesses and repackages the features and capabilities of JMeter similar to the way that the very popular code repository GitHub is built on the open source Git project.

    Open source projects are a very effective engine for creating tools and applications organizations need. The collaborative, crowd-sourced nature of open source projects leads to a solution that is more likely to appeal to a broad consensus. Where open source tools often fall short is in polish and support. Contributors are primarily focused on features and capabilities that impact the tool or platform itself. Organizations, however, also want the metrics and reporting generally provided by an independent software vendor (ISV) as well as the peace of mind of knowing where to turn for support.

    That’s where a company like BlazeMeter shifts the value proposition and makes the open source tool better…for a fee. I’m not suggesting there is anything wrong with that. As I noted above, many organizations crave or demand a solution like BlazeMeter rather than the open source tool it’s built on because they need additional features and support.

    I spoke with BlazeMeter Chief Evangelist Ophir Prusak about new features and capabilities introduced recently by BlazeMeter. Last week the company launched a new suite of features aimed specifically at test automation for a DevOps environment. The key features include KPI (Key Performance Indicators) Trends, which automatically display graphics of KPIs for easy tracking and troubleshooting; password-free Organizations and Projects folders, allowing DevOps teams to effectively collaborate and execute tests; a Single Sign-On, facilitating quick third party access and authentication; and an improved On Premise Load Generator with newer Docker-based technology, providing increased reliability and a simpler installation process.

    Prusak and I spoke about the continuous continuousness of DevOps. We also talked about the blurred line between continuous testing and continuous monitoring. While there are products and services out there that claim to fall under one heading or the other the reality is that continuous monitoring is essentially a form of continuous testing. In that same vein continuous testing—by the very nature of being continuous—also provides organizations with persistent feedback that would alert admins and developers if an issue were present.

    In a DevOps world the traditional role of QA shifts down to the DevOps engineers and developers themselves. BlazeMeter integrates with most existing development lifecycle tools and processes so it can work seamlessly.

    BlazeMeter takes the power of JMeter and packages it up with comprehensive metrics and reporting as well as enterprise-grade support. Organizations that are striving to develop and deploy code more efficiently should check out JMeter—and then take a look at what BlazeMeter brings to the table to determine if the investment makes sense.

  • RedHat Culture Keeping the DevOps Faith

    RedHat Culture Keeping the DevOps Faith

    Red Hat is readily recognized for its accomplishments with Linux and software design. The Red Hat DevOps culture itself started by design as a program built on training developers in operations skills and increasing operations’ faith in these developers. Red Hat’s IT Platform Operations Manager, Anderson Silva tells devopsy.kinsta.cloud how internal teams initiated the cultural change inside this Linux development icon.

    Get Back In Line!

    The Platform Operations team in IT manages and executes a lot of the deployments of IT-managed applications into these environments, says Silva. On the road to establishing Red Hat’s internal DevOps dynasty and prior to running the Platform Operations team, Silva captained a small band of operations folk in a department known as Production Control. There Silva and crew established controls to ensure that any new deployments would not and could not break the production environment.

    “Sometimes this meant we had to halt the whole of a deployment because a developer forgot to add one link to our release documentation, putting them back in line with everyone else who was requesting permission to deploy,” says Silva. Feeling that Production Control as such was more the bottleneck than a deployment solution, Silva saw this as a challenge to Red Hat that would be increasingly important and increasingly difficult to meet.
    In those days before DevOps was cool, a Red Hat development manager came to the rescue with a program to turn that bottleneck into a solution that could speed up the deployment process. According to Silva, this first initiative was the root of what became known at Red Hat as the Lieutenant program, which supports developers willing to gain the Red Hat Certified Engineer certification so they could enjoy production and pre-production access and manage each their own deployments as frequently as they liked. Red Hat eventually added a “corporals” component as an additional and similar program. These developers in “corporals” gained QA access and did not have to earn the RHCE certification to get it.

    Riveting Results

    “These two programs added significant value over the years. By building trust between developers and operations, we addressed many technical issues that we had historically viewed as ‘another person’s problem’,” says Silva, who also holds the RHCE and RHCA certifications and actively maintains a Fedora Package. Red Hat continues to foster a flexible DevOps culture and to nurture the flexibility that sprouts from added trust between engineers and developers.

    That flexibility is paying dividends. Where as it once took Red Hat a week to develop and deploy software for about 20 servers to its staging environment, today the Linux titan can complete such a release a few times a day, says Silva. “I wouldn’t be surprised if in the near future we are able to do it a few times an hour when necessary,” Silva says.

    And by keeping the faith between operations and development, Red Hat can limit the risk that might otherwise come with its migration to its hybrid cloud. This DevOps-relationship-based culture will also benefit Red Hat’s new image-based deployments, which count on tools that are common among members of this culture such as the Red Hat Enterprise Linux OpenStack Platform, OpenShift, Kubernetes (a data center tool), and Docker.

    “As an open source company, we use open source solutions where possible and we have written our own tools to help us automate deployments,” says Silva. As Red Hat’s Platform Operations team is about to retire some of these tools in favor of others, it is also reaching out to other internal IT departments to spread the use of image-based deployments, which also leverage Jenkins, AWS, Puppet, Ansible, and Git.

    The DevOps culture that a few managers seeded within departments has borne fruit in the form of a top-down leadership example that rewards and encourages developers who innovate. Red Hat draws temporary ad hoc teams including sys admins and developers together to address nagging development issues. The key to success, says Silva, is in working on these challenges together instead of finding someone to blame.

    Free Advice

    Silva advises that enterprise leaders who want to wade into fostering a DevOps culture focus on their people before whatever looks new and shiny among the many choices for tackling DevOps approaches. “Trust your people and let them do their jobs. When mistakes happen, don’t look to blame; look for a solution. Then take a look at what’s new and shiny,” Silva says.

  • Commercial vendors gift to DevOps

    Commercial vendors gift to DevOps

    Open source solutions are usually brought to life because of someone’s yearning to solve a problem and share the solution with the rest of the world. Or perhaps when inventors are merely trying to get more eyes on the code for help with hidden bugs and fixes.

    (more…)

  • Microsoft determined not to get left behind by DevOps

    Microsoft determined not to get left behind by DevOps

    Microsoft is a massive company—a behemoth with a lot of inertia, and a lot of bureaucracy in place that make it difficult to adapt quickly. Under Satya Nadella, however, Microsoft is striving to re-invent itself, and—to the extent that it is possible—become more agile. For evidence of Microsoft’s new philosophy, look at how Microsoft is aggressively embracing concepts like open source and DevOps that used to be viewed as pariahs.

    I wrote recently about the partnership between Microsoft and Docker. Microsoft added support for Docker containers in the Azure cloud platform within Linux virtual machines earlier this year, but then it upped the ante by announcing that it will support Docker natively in the next version of Windows Server, and that it is working closely with Docker on an open source project to drive development of the Windows engine for Docker.

    “An important aspect of this announcement is the noticeable speed we are observing Microsoft move to implement open source technologies,” explained Al Gillen, an analyst with IDC, in a report about the relationship between Microsoft and Docker. “The company appears to be determined not to be left behind as the velocity of open source developer technologies accelerates. The company appears to be willing to integrate competing technologies, or technologies from competing ecosystems at a faster pace and with less hesitation.”

    Docker isn’t the only piece of the puzzle, either. Earlier this year Microsoft joined forces with Chef and Puppet Labs, and integrated both of those popular DevOps platforms into Azure as well. Incorporating Chef and Puppet Labs gives IT admins more flexibility to deploy, configure, automate, and manage VMs in Azure.

    What the new philosophy really represents is a realization. Nadella’s Microsoft sees the writing on the wall, and understands that it’s a new world. Technologies have changed, and the way companies and individuals use technology has changed, and the days of dominating the tech universe as a virtual monopoly are gone. The two choices facing Microsoft were to either stubbornly cling to its former glory and die a slow, painful death, or adapt and embrace change in order to remain relevant, and continue to play a vital role. Thankfully, it seems Microsoft has chosen the latter path.

    What does embracing change look like? Microsoft appears to be taking a two-pronged approach. On the one hand, Microsoft is changing internally to shed some of its entrenched bureaucracy and enable it to function with more agility. It is also striving to keep up with new technologies itself—buying Nokia to bring smartphone manufacturing in house, developing the Surface tablets, rolling out the Microsoft Band wearable health tech, and other initiatives demonstrate that Microsoft is working hard to break free from the shackles of its own past, and find ways to keep up with the changing tech landscape.

    The second—and arguably more important—prong is how Microsoft is addressing the new multi-vendor, cross-platform world we live in. Microsoft recognizes that it is not the only game in town, but it has a vested interest in ensuring that customers continue to rely on Microsoft tools no matter what platform they choose. To that end, Microsoft is doing a much better job of offering its own products and services across a wider range of devices and platforms.

    The new Microsoft represents a win-win-win scenario. It’s a win for Microsoft because it enables the company to shift and evolve to stay relevant with a rapidly-changing tech landscape. It’s a win for open source and DevOps because companies of all sizes are built around Microsoft operating systems and applications, so incorporating support for open source and DevOps tools exponentially increases the potential customer base. Finally, it’s a win for the customers themselves because they get to maintain their existing investments in a Microsoft infrastructure, while also gaining access to new tools that enable greater automation and efficiency.