TechTalk - Ensuring Resilient IT Operations with Cloud Discovery
hi everyone thank you for joining our previously recorded tech talk on ensuring resilient operations this session is all around visibility in the cloud quick safe harbor slide this presentation may contain forward-looking statements so safe harbor does apply thank you quick around our agenda today introductions i already did that on patrick i'm going to be doing the uh the slides and the demonstration portion of today's tech talk um the presentation is going to be around discovery cloud discovery event-based discovery in the cloud as well as tag-based service mapping and then i'm going to give you a quick demo um we're going to look at you know how we've provisioned things out in the cloud we've dynamically populated them in our cmdb and then how we've actually dynamically mapped that application using our tag-based uh service mapping capability and with that we'll get going so what is visibility and why is it important to you so visibility is one of the the key pillars of itom right it's about health visibility and optimization we often say that visibility uh is the foundation right so that to building a quality cmdb which is going to help you unlock other value on the servicenow platform so visibility right when we talk about the products that make up visibility in the service now itom suite we're talking about things like discovery and service mapping once we have established that solid foundation we can begin to consume your health data from your various modeling systems and sources and users take that data overlay it on top of our visibility data and then we look at optimization right and this is going to be optimizing cost in the cloud as well as just general automation within your environment so first thing you do obviously is get visibility of that operational estate obviously servicenow it's been used for quite some time to gain visibility around your on-premise landscape we've added capabilities in the last several releases around the public cloud providers aws microsoft azure as well as gcp and what this provides you is a holistic visibility in the cloud and on-premise resources infrastructure containers and services so we have native patterns for all of the cloud providers it's event based we update your cmdb in near real time um also microservices containers etc we have custom patterns that you can utilize to discover all of those things whether they're in the cloud or and then or they're in your private data center so once we pull all this stuff into the cmdb the next logical step for us is we attend we attempt to map this infrastructure and map your services uh for example maybe you have a service deployed out in aws um where you're hosting your uh erp your financial system right well it's a critical business service so we recommend that rather than just having all those ci's in the cmdb we actually map that application um and what we can do with that is uh change impact analysis right say you're making a change to a database server within the application topology well now you have business context right so you're making a change that database server well now you can say you know what that change to that database server is going to actually impact my erp system so we're going to put a little bit more uh rigor around that change so obviously cmdb discovery service mapping it's foundational to that visibility peer of the platform um and what it's going to do it's going to allow you to unlock other capabilities in the platform whether that be it financial management asset management both software and hardware on the platform understand your compliance position right understand your critical vulnerabilities against those business services or those resources that you've deployed out in the cloud lets you get an understanding and a rationalization on your application portfolio landscape um a service catalog right it's going to help you drive automation you're going to be able to make requests even have servers and services provisioned in your environment right from your service catalog because you have that healthy living breathing always up-to-date cmdb that we can we can get from itom visibility so let's go a little bit deeper into what itom visibility is um i get asked all the time right what's the difference between discovery and what's a dependency map and what is actually service mapping well this is the the i think one of the better slides out there to actually depict it and there's a build i hate build slides but i'm going to try to do it for you so what is discovery that's where we're going to pull in all of your resources across these specific domains and um basically what you're going to have is a list of assets right um but not many relationships between those assets part of discovery includes dependency mapping so we are going to have some high-level relationships that come in and it's a visual that basically shows how nodes are related to each other within the current view um and this is going to take you all the way down um from you know the virtual machine level to the host level and then whether that host is in an aws data center it's in your vm vmware data center we're going to show those relationships as well so all of this that we're looking at right now is just part of discovery keep in mind that in its entirety whether that be discovery application dependency mapping in service mapping that is all part of itom visibility so what is service mapping service mappings where we take a very very surgical approach to mapping an application so we understand that our application is behind this uh this url which is behind this f5 load balancer maybe it's a cloud load balancer then we see the way that the uh web servers connect to that load balancer due to the configuration and the traffic that we're observing on your network we see how the web servers talk to the app servers we look at the configuration files we see how the app servers are talking to the database servers all the way down to those virtual machines that are hosting these various services and then all the way down to the host level so that esx server or maybe that data center within aws so it's a very very surgical approach to mapping an application and we're only showing things that are exactly related and make up part of that application topology and here's what it looks like right um so on your left this is our application this is our business service map so we have a business service that we've mapped and we've strict heat we've made uh strategic connections to all the various pieces of infrastructure and then dependency map really shows all the high-level relationships of a cn uh of a ci so just know the difference dependency mapping versus a service map so what does the architecture look like how do we do it um so obviously servicenow we've been discovering within your data center for a long time our discovery today is an agentless technology um so we have a mid server that mid server sits behind your firewall it sends out a bunch of traffic to say hey what are you then we tell the mid server what we are right so then we begin to connect on various protocols improve those devices for information right if you're a database server let's run a pattern to see if you're an oracle server okay you're an oracle server let's pull in all the configuration information about that oracle server now this discovery is still very very relevant and many of our customers who discover in the cloud at the api level if they're running infrastructure as a service so uh ec2 instances and azure vms out in the cloud they use ip-based discovery in the public cloud as well how do we discover in the cloud providers right so we still use the mid server except we make a api call through https so over ssl and we do a discovery at the api level same for via vmware in your environment if you have vmware we're just making an api call and we pull that in for same information back in real time we then take that information back through the mid server we batch it up send it through send it to the servicenow instance and we process that at that that information um so like i said um most customers use both whether you're in vmware and you're in your in your private cloud environment behind your firewall or the public cloud if you have is resources deployed there is another way that we do discovery right and you can use all of these capabilities at the same time we call this event-based discovery in the beauty of event based discovery is it keeps your cmdb up to date in near real time so as soon as something happens out in aws or azure a machine's brought up or maybe it's even terminated right we push an update to the servicenow instance directly from the cloud provider using the messaging system so for for amazon it's sns we push that update to the servicenow cmdb and we run a very targeted discovery on that resource gcp vmware they work the same way but the mid server actually proxies that connection for us so what is event based discovery it's our capability to keep your cmdb updated in near real time from the public cloud providers as well as vmware in your private data center so how do we get going with cloud discovery well it's really easy now we have a guided setup system we say hey what is the cloud provider okay it's aws and then we're gonna pop up a message box saying uh we need an account name we uh or we need to add a uh service account right uh whose credentials should we use and we can actually test the connectivity to the cloud account right here in this in this interface so as soon as we make a connection to that cloud provider we're then going to pull in a list of data centers right so these are all those data centers that um they're not your data centers or aws data centers right so those availability zones those us east 1 usc 2 so we're going to say okay i have resources deployed in these data centers let's just select them or you know what my cloud account talks to all of these aws data centers let's just discover them all in case people are deploying resources potentially where they shouldn't be then we take it another optional step right and this is where it's that hey i want to use idp based discovery as well as this cloud api based discovery because i have virtual machines deployed out here in the public cloud so what it allows us to do is automatically create a discovery schedule to do ip-based discovery on those resources within the cloud then we can create a schedule most of our customers right because it is a lightweight low hit uh not performance invasive uh some do this multiple times a day some some do it uh one time a day right it all depends if you're using event based discovery you probably don't need to run this multiple times a day but it's really just an architectural decision we would urge you to talk that over with your implementation team so we're going to create this we're going to create the discovery right how often do we want to do it what times it start on cancel the discovery if there's an issue if it runs longer then maybe i would i would say a day is probably excessive we probably want to cancel the discovery if it goes longer than a couple hours because it really doesn't take all that long to do the api based discovery so what happens right we pull in all the cloud resources we pull in the virtual machine instances we have this dashboard that shows errors and it shows all of our logical data centers and if we have a lot of errors in here we can easily click into one of these boxes and go ahead and attempt to remediate so with cloud discovery we're pulling in tag data and tag data is the critical next step to dynamically mapping your applications that are deployed in the cloud so if you have a tag strategy servicenow in the orlando release is going to have the capability to dynamically map your application without even needing to log in to it and go through the methods that i described in the previous slides so just to add a little more confusion here there is a third way to do service mapping and that's tag-based maps and this is generally right most appropriate for your cloud and container based workflow workloads in in your pro public cloud that's not to say if you have the capability to tag your resources inside of the service now cmdb with another means this would work for you as well so it provides a very effective way to build service maps based off of tags a technique widely used in clouds and container deployments for grouping of resources so chances are if you're in the public cloud um your engineers or maybe you have a tagging strategy within that public cloud and the benefit here is it makes deploying service mapping in your environment and getting immediate value and being able to light up an operator dashboard like what i'll show you at the end very very quickly so what are tags tags are labels they are key value pairs so what is the name my server is the name what is the application runs my application what locations in it this is deployed in emea so it's a very very simple way to provide your cloud provider keys and values and um we can report off of those keys and values in the case of servicenow we can dynamically map an application based off of those keys and values so tag-based service mapping um we basically take in all of the tags from aws azure gcp ibm cloud we can pull those in from vmware as well we populate a key value table within service um we run it through our policy engine and it's basically you know we tell servicenow if it's uh this key and it's this value why don't you propose a service mapping candidate and give me the choice to actually map that application i'll show you this in the demo because i know it's a little bit confusing to get your head around the first time it certainly was for me um and then we basically have automated uh mapping of our applications that are deployed out in the public cloud tag-based service mapping what are the stages we discover the tags right so that that whole thing we just talked about visibility integrating with the cloud providers that's going to bring all your tag data into the service now cmdb no extra configuration there if you have tags for your resources out in the public cloud providers cloud discovery is going to bring all that data into your service now cmdb we're then going to define our tag categories um and we're going to go into some slides in a second that's going to kind of explain what that is um we're going to define the tag based service by selecting our tag categories we're then going to create our service candidates and services and then our last step is going to be doing something great we've mapped this application but now i want to monitor it and i want to light up my operator dashboard with that service i want to start consuming events from the various cloud providers um so you know when there's an issue out there we can take immediate action and we know what piece of infrastructure was actually impacted it's all about providing that business relevancy so this is just an example of the cmdb key value table basically just a table that has a relationship between configuration items the key in the value of that key if you're using cloud discovery today you can go to cmdb underscore key underscore value dot list and you're going to see all this data in your cmdb today and that is the foundation of how we dynamically map these applications so what often happens right maybe you're not using servicenow's deployment system to deploy your infrastructure right maybe you're not using our cmp to deploy everything so your tags aren't normalized every time maybe you have engineers going into aws console um and maybe you have different tags that mean different things right so i'm going to say my tag application categories application but i have a lot of tag keys out there i have app i have application i have app name i have apps spelled wrong because you know i did it and i you know i'm a terrible typer so you can normalize all this data and you can say you know what all of these things actually relate back to application so we normalize our tags so then we create a service tag based service mapping family so we call it a service name mine is customer wordpress and then i have a couple tag categories i have application and i have environment i'm looking for very specific tag categories i'm looking for an application called h a wordpress with a blank customer name in providing that to my tag-based service mapping family i'm basically saying dynamically map any environment that we see in the cmdb that's tagged with the application h a wordpress for any of my customers so that would be a really good msp example so then i'm going to create my service candidates right so servicenow we're going to run a job the job analyzes the data in the cmdb our policy engine right and we're going to propose service mapping candidates if you see one you can take a look at the metadata that we're using to propose that service mapping candidate you can check the box and actually hit map selected so as soon as that happens right we're going to dynamically map that application um this job it can either be run on demand it does run daily or it can be run on demand so you can instantly map that application or you know as soon as you propose it if you want to wait a day i don't know why you would um it's going to refresh the map just know that we are doing this in real time so if we push an update into the cmdb from that event based discovery this job is always running so we're going to keep that map up to date as well and here's what we got right we have a final generated map um of that tag-based ci right so here is our production finance environment here is all the infrastructure that associated with it last thing that we want to do is we want that thing to show up on our operational dashboard so it starts in the non-operational state as soon as that thing's ready ready to be productionalized and we want to start taking action against it whether it's change management incident management event management any of those idle type processes we're going to change it to operational and it's going to show up on our uh operator workspace dashboard so with that i will uh i will transition into demo mode all right so the first thing i'm going to show you is that i actually did a few hours ago i provisioned some resources out in aws right so this is one of the ways that we can provision into those cloud providers and what i did is i just went to my catalog i said i want to deploy a customer wordpress with rds so if you don't know what rds is it's a pass service it's a relational database service out in the public provider and up out in the public cloud and i provided these details right webinar stack who's my user group right who's gonna be responsible for this stack schedule profile just a great feature for cmp we can dynamically turn your infrastructure on and off if you use these schedule profiles lease end date so application this is where it was critical i define that as aha wordpress now like i said you don't have to use servicenow's provisioning system to do this and you may already have tags within your cloud provider this is just an easy way for me to show you how i deployed this infrastructure this infrastructure is code in the public cloud provider pick my cost center doesn't really matter for this use case my business service i'll call it ha wordpress it's all right customer wordpress there we go and who is my customer say it's aws hosting wordpress for amazon web services pick my hardware sizes all this information right uh username password put a password in so as soon as i hit submit we are now making api calls this happens to be deploying to aws and what we're doing is we're making aws we're making api calls into aws right now and we're actually deploying that infrastructure as code i basically did the same thing a couple hours ago just because it does take a minute to deploy so you could actually see what got pushed into the cmdb now mind you what this uh what this stack is made up of right it is a uh it's a wordpress blog so it's a it's a linux server that's connecting to a relational database out in aws and you can see that as soon as that thing gets provisioned there's a live demo and i barely try it we're actually giving you the website url so this is the website that actually got deployed so now this is actually a fully functioning wordpress blog out on the public internet so let's go back and we'll see um you know how we dynamically push those updates into the servicenow cmdb and then mapped on one of these customer wordpress environments so the first thing i'm going to do is i'm going to go into my cloud events table so remember that cloud events table is the table that we use to get updates pushed from the public cloud providers um we'll provide we can provide some documentation too on how to actually configure in aws and azure it's pretty simple you set up an sns event for aws and that sns event fires these updates into the servicenow cnb bay so you can see that we have our webinar stack so all of this all of these resources right they got spun up in um aws by virtue of me deploying that thing out there so we pushed these updates into the cmdb you can see that a virtual server was provisioned so if i click on this virtual server it's now a configuration item in my cmdbit so that thing was provisioned and by virtue of having those sns events i pushed the updates into my cmvv dynamically and the most important thing before i go back up to the relationships because they're pretty important too is those tag values so part of cloud discovery is pushing that tag data into the cmdb so i have all of this tag data that i can use to model my application inside of service now if i look at just my related items these are all of the relationships that just cloud discovery is pushing into your cmdb and why you know when we have a cmdb without relationships right it's just a list of assets why this is important is because we know that this virtual machine instance was created by this hardware type and folks the reason why this is important is because this hardware type maybe it's a c3 xl mega super duper machine out in aws they cost a lot of money per hour to run so we can we could potentially right size given this information within the cmdb um also just general config management maybe it's this ami that's important to us your ami is actually your image in aws that um this virtual machine was instantiated from so maybe um you were using an ami that doesn't have all the most recent patch data on it and there's a security event against this ami now we have that visibility hey we have this machine that inherited this security flaw from this ami image because we created it from the cmi image and then i have all the relationships back to hey what aws data center is this thing deployed in and then what availability zones are available within that aws data center and i can recompute this map from any level i want um i could view a map from my aws data center show all of the relationships from the aws data center level as well rds instance same deal right um it actually looks like our rds instance was already created so we spun that thing up um you know a couple minutes ago now we already know about this rds instance that was created by that stack so let's just take a look at that configuration item really quick so it's our wordpress relational database all the same information about the cloud as well and i'm actually missing a related list here if i showed the related lists on this form down there we would see all the tag data associated with it as well so now let's take a quick look at the way that we can dynamically map one of these applications so we'll go to our tag based service mapping families so i've created a service mapping family called customer wordpress so i'm saying whenever we deploy something look for the tags in our cmdb application is ha wordpress look for all of that infrastructure and look for that infrastructure with an empty customer name and that's just not a blank customer name what empty actually means in this case is any customer name so i want to dynamically map any customer wordpress environment that gets deployed um and pushed into my cmdb so this is this is part of what i said we need to manually run those jobs because they only run once a day i believe it's a system property you could probably change it so i'm going to manually update the candidates that's going to run the job to see if i have any new service mapping candidates and i should so if i view my service candidates we actually already have one and i'm not going to map it yet because i know the infrastructure hasn't completed deploying this is why when you have all this set up on a schedule it actually works very nicely but this one i deployed um you know a couple hours ago before the webinar this is that step that i showed you what i'm going to do is i'm going to click map selected so now if we refresh here we're gonna see a new aha wordpress for my in focus systems and there's one more thing i need to do i need to open this record this is another job that runs right on a schedule or we can recalculate the service so if i hit recalculate it's now going to map that application so if i just go back one level and now i hit view map so here is my aha wordpress environment for my in in focus systems customer here's that that ec2 instance here's that relational database here's the gateway that we use to access this thing right so it's a web security gateway group as well as just the generic stack data now this is specific to servicenow if i hadn't provisioned this thing through servicenow's provisioning system we wouldn't see this here but what you can see is we've dynamically mapped this application just by the tag data that's within the service now cmdba obviously if i click on any of these all of the information comes in it's available um for example this is running uh on a my sql database so i know what version of my sql is installed maybe there's a vulnerability against this version i need to remediate and now i can have a report that can proactively tell me that let's take a look at this in one more place last thing i'm going to do if you remember i mentioned this you see how some of these are operational and non-operational we make a service operational when we want to start running our idle process against it incident problem change or our health processes like event and alert management so if i take my aha wordpress for any focus systems best policy at this point probably assign an owner to it because maybe that's the person or the group that needs to get updated when there's an issue within this service so let's say it belongs to alfonso actually you know i like abe lincoln if you see my other demos you'll know why so go ahead and update that right so now this service is owned by abe lincoln so when there's an issue honest babe is going to get a push notification to his phone i'm going to say this is actually a customer wordpress environment i'm hosting it for them so this is a critical business service for me and i want to make it in the operational state as soon as we do that this service shows up on our operator operator dashboard operator workspace dashboard excuse me so you could actually group these by service group and we could actually show customer wordpress services i only have a couple of tagged in there um this is just service grouping but here are all my customer wordpress environments right so we know that they're in pretty good health right now i'm actually going to open one up and i'm going to simulate an event uh actually an event that's crazy it's basically simulating the crashing of that ec2 instance that's running these virtual servers in the cloud and we'll actually watch how we take that event and we light up the operator dashboard so let me show you that service map and let me pull up my little simulator here so cloud watch this is a really common tool used by cloud teams engineering teams sre teams to monitor their cloud resources we natively integrate with cloud it's part of itom help so now i'm going to simulate an alarm actually on the ec2 instance that's hosting this linux server and because of the relationships in our cmdb what it should do is actually light up this dashboard it's going to take about five or ten seconds all right so we've now simulated an event about against the ec2 instance that's what that's actually virtualizing this linux server and we've provided business context right so now we can let the stakeholder of our aha wordpress for creative labs maybe we have to call creative labs or we have to send them a notification that their environment has been impacted because of whatever cloud event came in here to see the same way it's also depicted and we might miss it it's also depicted on the operator workspace dashboard so in review right we spun up an application in the public cloud we pushed that data into the cmdb in near real time using our event based discovery technology right we then part of pushing that data in came the tag data to deploy the info to map the infrastructure we took that tag data we analyzed it and we proposed a business service map based off of that tag data we mapped that application we showed it on our operator dashboard after we operationalized it and we consumed help data and we were able to show that an event very low down in that application stack the virtual machine crashing has actually impacted our aha wordpress our customer wordpress environment thank you for viewing our previously recorded webinar on cloud visibility this concludes the demo portion of today's session if you have questions please feel free to reach out to your servicenow account team thank you
https://www.youtube.com/watch?v=xadjD1VluIQ