This is the third and final part of a multi-part blog post that outlines the different ways the Apprenda Platform as a Service (PaaS) empowers your IT organization while providing immediate value to the development teams and business as a whole.
In part 1, we covered the transformation companies are going through and how IT is often stuck at the crossroads between developers, the business and security. In part 2, we outlined a breakout of the most common IT workflows when deploying applications and covered the first two, where and what workloads are deployed on the infrastructure.
This third part will wrap up by answering the following questions:
Let’s dive in.
Once the Apprenda platform is installed, how do you control access to it? All organizations use a variety of systems to control authentication and authorization to internal applications, including systems like Ping, SiteMinder, and Active Directory. Apprenda can integrate and leverage those resources for authentication as well as for authorization capabilities.
There are multiple ways to set up your integration and the rationales; each example is a topic for other blog posts. The important aspect to highlight is that Apprenda will continue to use your current I&AM investments, and your directory structures to control access and policy within the environments. Actions such as who can deploy applications and to which stage, who can view logs, etc. can come directly from your identity system and be enforced by the platform seamlessly when consumers are accessing it, enhancing the value of the entire ecosystem and ensuring your policies and controls are honored throughout.
The Apprenda platform understands that troubleshooting deployments and running applications is a common task in every enterprise when dealing with the SDLC. Organizations need to be able to quickly react to any issue and then isolate and identify the problem without affecting other applications or the system as a whole. Based on that premise, the Apprenda platform offers capabilities that allow both developers and IT to troubleshoot their application deployments in a self-service and easy manner.
Logging is an important aspect of any application, let alone a distributed application deployment platform. At Apprenda, we have spent many iterations of our product and experience running a PaaS at a very large scale and built them into a scalable, easy to use, centralized logging framework.
The Apprenda platform provides a view into the logs through two different angles:
Developers are given the ability to tie their applications (either automatically or through the use of APIs) into a centralized logging framework. Developers are able to create log overrides and filter, search, and export their logs via the Developer Portal or a REST API for consumption or retrieval by an external system.
IT teams have a global view of the logs coming from both guest applications and the Apprenda platform itself. Logs are aggregated and organized by the system and appended with additional metadata such as the machine, user, and application that triggered the log, automatically. This provides a great benefit to operators who need to monitor and troubleshoot day-to-day operations of a globally distributed PaaS. Apprenda also provides the ability for these logs to be captured and accessed by external frameworks such as Splunk, ELK stack, etc.
The Apprenda platform gives developers the ability to place their Java applications in Debug mode which automatically exposes a JMX connection to the individual workloads for remote debugging. This is very powerful because it allows developers to continue monitoring and troubleshooting applications as they normally would in a self-service fashion while running on a PaaS.
The Apprenda platform gives developers and operators the ability to troubleshoot and solve most issues without ever having to log in to the back-end servers, but there are times in which servers need to be taken off the platform for a period of time for additional testing, troubleshooting, or investigation. For these scenarios, Apprenda provides a way for platform operators to place a node under three different states: Online, Reserved, or Maintenance.
When a node is placed in “Maintenance,” Apprenda relocates every workload to other nodes and blocks any new deployment from happening that will target this specific node.
In the “Reserved” state, a server will function normally for its existing workloads, but will be removed from future deployment strategies. This means that a Reserved server will not be considered a valid target when your platform is deploying new workloads, and no new workloads will be automatically deployed to it. Operators will still have the ability to manually deploy new workloads to or move workloads from a Reserved server.
The Apprenda Platform is built under the idea that your IT organization is a complex environment that spans multiple tools and investments and that PaaS shouldn’t impose what technologies you use across the stack. Based on this notion of interoperability and openness, we have built multiple ways to allow our customers to extend the platform and integrate with external systems.
One of the biggest issues in the enterprise is the rise of shadow IT. Developers need to leverage more and more services, which increases the pressure on IT to deliver them at an exponential rate. What ends up happening is that developers go around IT and simply provision these services themselves (whether public or private), which increases the risk for the business as a whole to say the least.
The Apprenda platform solves the problem by allowing operators to expose additional services to be consumed “as-a-Service” by developers in a standardized, policy-driven, and automated fashion.
Operators are tasked with configuring how these services are made available to developers, configuring access controls and deployment options, and then exposing them for consumption through Apprenda. Our Global Client CTO, Matt Ammerman, has done a great job diving deeper into this topic in the past.
The Apprenda Extensions engine provides operators the ability to call external systems during a specific workflow and potentially affect the outcome. There are multiple hook-points available in Apprenda.
Extensions are very powerful because they allow our customers to:
As we have covered throughout this series of blogs, Apprenda allows your developers to deploy and manage their applications in an agile, consistent, and secure way that greatly increases efficiency and the ability to bring new ideas to market faster. At the same time, we understand IT has to be able to run the PaaS while standardizing and enforcing the policies and controls necessaries to operate in a secure and compliant fashion.
The Apprenda platform is the best way for both sides to work together, empowering each side to do what they do best by helping each team be as efficient and successful as they can be. There is a lot more you can do with Apprenda so feel free to contact us if you have any questions or would like a more in-depth discussion.