TechTalk - CMDB Workshop
thank you all for joining today's cmdb workshop we're going to have a great interactive session here today everyone audio has been muted if you have a question in the zoom you'll see a q a link at the bottom of your screen please use that and we have lots and lots of gurus on our call today to help answer any questions that you may have any questions that we see that are very common we will stop the session and we will answer those live as well and of course since this is a virtual meeting right of course you can take a break whenever you need to but of course don't be gone for too long because we have a lot of great material to cover everyone will be receiving a copy of the presentation that we're doing today as well as a recording and those who are just joining who didn't hear me earlier the lab guide is available at either of these two urls which are case sensitive by the way as well as here is the link that you can register for your lab instance um any questions that you may have once again please put into the q a um as we go throughout today you know please do the same so uh with that said let's get started so the first thing we want to do is just give a brief introduction for all three of our speakers today uh so rico if you could you know um can you please introduce yourself absolutely uh good uh good morning uh to everybody my name is rico centeno i'm a senior advisory solution consultant for servicenow uh primarily focused around all of the it operations technologies forest service now i've been in the space probably for well over 20 years in the software industry uh focusing a lot of my time in the network performance monitoring system performance monitoring and uh and hardware performance monitoring um so i've been with servicenow about four and a half years or so um i am married have three kids i'm based out of michigan i do cover all of the great lakes region as well as the southeast region of the us and uh you know it's a little tidbit about myself i am a certified pyrotechnician i do like working on cars and vehicles and i like to fly drones so thank you very much great thanks rico and mike please let me make sure i'm not on mute so uh my name is mike gallagher i am an advisory solution consultant here at uh servicenow i'm working again on the i.t transformation team my background you know i've done 20 plus years in the technology industry and i've worn just about every hat you could possibly wear over that time i love to tell everyone i have an invisible propeller i love to solve business problems with technology and again another little tidbit about me um i trained brazilian jiu jitsu with all four of my children so we we never have a dull moment around my house awesome thanks mike and last but not least um so i'm steve emerson i am an advisory solution architect on our i.t transformation team i focus primarily on in the areas of it operations management and iit asset management um i've been i have worked in the technology industry for over 20 years i've been in the servicenow industry for about seven years as a customer a partner and an employee so i own the platform i'm responsible for a lot of you know processes there including things like building out a cmdb it operations management as well as managing hardware and software licenses um my passion really is making the world of work work better for people with service now i fell in love with the platform back in 2013 and i've been passionate about it ever since and um i just love spending time with my family i've got you know a wife and i've got two kids who are in college basically um and one interesting tidbit about me is that i once was a credentialed media member for the national hot rod association so i love drag racing our agenda for today is really to cover these key areas we're going to talk about an overview basically what is a cmdb we're going to talk about some governance right why it's important to have a governance structure in place to maintain the data that's in the cmdb to make it trustworthy and produce the outcomes that is going to drive you know better decisions for your business we're going to talk about ways to populate the cmdb as well as some of the newer technologies that we have to make sure that it is populated accurately we're going to talk about how we manage the health of the cmdb right you know if you put data in there it needs to be managed right and it needs to be trustworthy so we need to make sure that we manage that properly and you know just like we monitor our health we need to monitor the health of the cmdb we're going to talk about how we can help you drive better reporting as well as making those data-driven decisions off the data that you have in there and then finally we'll cover some great resources that we have available for free to customers that you can take advantage of so that's just a little bit more details on on what we do today but let's start with the cmdb overview and we're going to kick off today's session with a poll we want to understand where you guys are on your cmdb journey so those of you who are using the zoom client will see a poll pop up those on the web i understand that you may or may not see it depending on if you have pop-ups enabled or if you have a certain plugin enabled so basically we you know we want to understand where you are with your cmdb today you know on your journey right what does it seem to be right or are you in your planning processes are you in your initial steps or are you full speed ahead right so we're trying to better understand just you know get you know to um get a gauge because we do a lot of obviously um we do a lot of deep dive scans of customer instances to you know to understand where you are from a technology perspective right but we're talking about kind of the people process and technology perspective here as well so i'm going to end the poll now and we're going to talk about the results and what we see here is um about 27 of you i'm sorry seven percent of you say what does cmdb right so that's good you'll learn a lot here today uh about 23 are in planning uh about 33 of you are in the initial steps right and then finally we see a lot of you are in full speed ahead which is great um so what you're going to learn here today is you know it doesn't matter if you're just beginning or if you're full speed ahead what you're going to learn here today what can be can be taken and then applied to your cmdb efforts great thank you everyone so let's first start out with what is a cfdb um first i'll give you the generic definition but then i'll talk about what it is right so it's really that you know that central repository that acts as a data warehouse for it right so it basically holds configuration data right you've got a bunch of servers you've got a bunch of network devices as well as many other infrastructure and application components in your environment and you need to understand what is the configuration of those things as well as more importantly what are the relationships between them but more importantly the cmdb really is your digital foundation right it's your digital foundation for your organization but also of course for servicenow right so it is a critical component to making sure that you can drive better decisions across all of the different disciplines that you see here as well as many more that you don't see here so for example the cmdb holds configuration data that will help drive decisions for it operations management right so we find that most of our customers can realize better business value from a seem to be if it has business context as well so understanding what how does this operational component relate back to the business right so when you have that level of of cmdb maturity you can easily more understand well how do i prioritize my response to operational issues based upon the business impact when it comes to the most basic thing of it service management it's you know when if i'm if i'm planning a change how do i more accurately plan that change to reduce risk but also i want to be able to notify individuals who are impacted by this change more easily both stakeholders as well as end users for devops right a lot of folks have this battle where do we need a scene to be for devops you absolutely do right you need to be able to track everything that is happening from a traceability perspective um when you're standing up new you know new applications when you're standing up new you know infrastructure as code for example you've got to track all that in the cmdb right maybe you don't have a change process that has to have a manual approval for that but you want to have that traceability a certificate management and firewall workflows how do we eliminate outages you know for expired certificates which is a huge problem across you know the industry right now as well as how do we have visibility into any misconfigured firewall policies right expiration dates for certificates are a huge thing and we can give you visibility into that from a cloud perspective a lot of organizations are moving from on-prem to cloud right so how do we gain visibility of all those cloud resources more easily and then align that spend to any kind of business initiative and of course security right security is very interested in to seem to be and oftentimes can help fund a cmdb project right how do we you know be on better prioritize response based on business impact of security incidents vulnerabilities and so forth right so those are just some of the areas that i want to call out here today right there's a lot of things you see here on the screen that will provide tremendous value if you have a great cmdb from a basic uh from from a fundamental perspective on it service management our business unit for the cmdb has done some research across customer instances and um as well as speaking just you know to to a lot of our customers and they've determined that with a healthy seem to be so far on average our customers are seeing a 38 faster incident resolution uh 82 fewer failed changes right i talked about how we can better plan changes with the cmdb that's more effective as well as uh 25 fewer incidents per user then the one on the end there is really crucial um it's around making sure that you have a healthy cmdb that that a healthy steamdb has less duplicate ci's right if somebody goes to create a change request and they see two two things in there with the same name right i want to you know make a change to server or abc but maybe there's two in there right you have a duplicate right so having all those duplicates really drives down the you know the adoption of the cmdb because people say that it's untrustworthy so first we're going to focus on the common services data model right where does stuff go in the cmdb so so we're going to talk about here what is the csdm and what it is not and for those of you who are familiar with our csdm it continues to iterate uh we started out with csdm 1.0 i think back in the new york release and we just released our csd our csdm 3.0 guidance uh just back in september for paris so i'll talk about what it is first which is it's really a cmdb framework it's not a product right so it is a it's a set of standard terms and definitions it is best practices for cmdb data modeling as well as data management it has got it provides guidance for the out of the box core tables as well as guidance on how we model services and recommended mappings or also recommended relationships as well but what it is not is it's not a final solution right so we say that it continues to iterate um we'll be you know coming out with version four at some point as well version five etc right but it's not a process or implementation guide for any of our servicenow products right it is not a set of reports either although you can build some reports uh for you know with against your cmdb to make sure that you're aligned with the csdm it's not a piece of code to install necessarily right although with our new paris release we do have a csdm application module it is also not a product sku or something we sell right so you can't just go to servicenow and say i want to buy the csdm um it's also not an automatic fix for past implementations right so oftentimes we find that you know customers who have been on the platform for quite some time have had their own determinations of what a service is what an application is and have kind of aligned their thinking right so the csdm obviously is the guidance that we want you to use but it's just no automatic fix to go from what you've done to uh what is you know then you know now in the csdm so we'll talk about how we with the csdm we have these things called domains which are essentially functions right um first of all the blue area is for design right this is really around thinking about the digital products so it's around designing and planning think about from an enterprise architecture perspective capabilities and applications that are going to be consumed by the business right so these are not the things that you would tie to an incident a problem or a change this is more high-level architecture functions think that way when it comes to the orange section that is the managed technical services so these are really the deployed instances of those products right they are discoverable right they have relationships between um the all the infrastructure and application components that make up those services and then you can tie it back to that the business applications as well as the business capabilities that are in the in in the design phase right so this is the more if you think about you know traditional cmdb where you're discovering all your components you're relating them back to the business with some kind of service mapping as well as creating some technical services as well on the sell consume side of the business right think this is really like the customer focused uh or you know who's going to be it's how we offer up the services that we've built out to our end users essentially whether it's our customers or of you know of service of your organization or your internal employees and then we've introduced this new domain in version 4 i'm sorry in version 3 call foundation right and if you're familiar with servicenow and building out um the instance in general right this is your foundational data these are things like your user table your groups your locations your cost centers your departments these are things like product models that that will support it asset management in the future so when you think about it right the foundation sits around the design manage and consume areas expanding that out a little bit more we see that um we have some more details here right and i'll talk about this at a high level this is not meant to be a csdm course or anything like that we have a free online training course you could take as well as you'll see you'll start to see some csdm workshops on the table as well uh so when you think about it right from a foundational perspective right we talked about it already these are the things where we have your users groups locations company business unit department all basic servicenow core locate core foundational data then we also have this concept of cmdb groups which are essentially dynamic based groupings of cis that are like so start to think about how you want to group things together start to understand what are your product models that you have to support things like it asset management as well as core contracts data domain right these are your business capabilities these are your business applications um and i'll show you an example of what this looks like in the real world to get a better understanding information objects are things like okay show me which applications use which pieces of information right does this application use credit card data for example when we get to manage technical services you can see that we have this application service all right this is the service that are deployed instances right so maybe you have something here for epic for for for healthcare maybe this is epic prod epic dev epic qa or you could have regions you know region based and you know you know deployments or you could have version based deployments and then these are all of the resources that make that up your servers your applications your network gear and so forth the concept of technical services are essentially groupings of like-kind technical things together right so show me all the windows servers right show me all of the database servers um and that dynamic ci group is introduced in paris that's a way to do that more easily and in in prior um you know releases the technical service used to be something tied only to event management we're happy to say that this is now available to anybody to use starting in cstm 3.0 or with the paris release and then finally this i'll consume right think about the service catalog right how is somebody going to request something that is being offered and the offerings are essentially different iterations of that service being offered maybe you're offering one version to the us maybe you're offering another version to emea or apac etc and it all ties back together right there's no as you can see here there's no lines to any of these other areas because this is all foundational data that service now relies on whereas these have relationships between them a lot of customers like to ask us well okay what tables do i put things in and what relationships do we set up right so with the csdm we have a white paper that provides the specific guidance that you're looking for you'll get a copy of this deck like i said so um you'll get to see some of this in more detail when you get it but just think that you know if you create a capability right you want to understand how do i relate that capability to an to an application right so it's you know it's essentially provided by right so we give you all the different types of relationships if you use products like servicenow discovery or service mapping the application service relationships are a little bit more automated for you we don't need to worry about thinking about what those should be so the healthcare use case example like i talked about earlier with epic um business capability patient management or medication management right if you're a user you know if you're a patient of you know of any hospital these are the types of things that you would be accessing as a doctor but also as a customer right so my you know my chart right i have an app on my phone called my chart right that's the application that i'm accessing right and then that's provided by this epic production you also have epic qa and dev as well as the application uh cachet right that makes up you know part of epic as well as all these these servers and and things that support it so again you'll get a copy of this well and with the csdm training there's actually details in there around um modeling some of the more common things that you would see out there in the world as well hey steve there were a couple questions uh about giving some examples of business capabilities is that something that you could touch on really quickly yeah um so the thing about a capability is something that you know that allows an organization to function right it's a core capability that we provide to our customers or to our business right so i talked about let me go back to that uh screen here so in the healthcare right we have a capability for managing patients or for managing medication right maybe it's managing financials um you know from you know for most organizations who have a you know a general ledger you're you have to be able to manage your financials right so managing financials could possibly be here right and the su and then the application that you use for that maybe it's um you know you know sap financials would be the application thanks mike okay we're going to move on to cmdb governance and why it's important to have a governance model in place and a governance team to properly manage your cmdb before we get into talking about why it's important uh we want to or i should say how we want to talk about why it's so important and it's really tied to making sure your cmdb doesn't fail so most cmdbs right they are deployed with a lack of formality and implementation and governance right so you haven't formalized yet a like a team or a process or you know to manage the data that's in there secondly right unreliable data sources and lack of automation maybe it's just doing manual imports of data which gets stale pretty quickly or maybe it's ingesting data into the cmdb but not going through the proper channels to make sure that it remains accurate right this bit this next one here in yellow is huge right it's not driven by goals of the organization so when you build out a cmdb uh it must be aligned to goals and we'll talk about that during this section here as well it's customized without understanding what is supported out of the box right and this this issue here can be alleviated today with the csdm we understand that in the past a lot of things we didn't have support for a lot of areas so now the cstm will help with that maybe there's too much or too little data right so people tend to put way too much data in the cmdb and then it becomes unmanageable very quickly right so we'll talk about how we should only be putting in there the critical few right instead of the trivial menu inaccurate data right which always starts to generate a lack of trust in the configuration management process as well as the data in the cmdb uh and then finally right it's not tied to other processes like asset change and um release management for managing of the data so in in the next few minutes or so we're going to talk about the five steps to successfully deploying a healthy cmdb right keyword there is healthy and at a high level right the five steps are setting your direction building a team and governance model designing your data model operationalizing the and creating ongoing strategic alignment and we're going to dive into each of these uh here go you know right now so step one is what we call set your direction right and it's really any healthy scene db starts with clear goals in mind actionable objectives as well as measurable business outcomes so when you're starting to um look at your cmdb you start to you've got to document your approach but while you're doing that you need to start to ask yourself what right what are we trying to accomplish with our scene db how so what is our approach and do we have any uh constraints or assumptions and then why right what business outcomes is the cmdb going to support which is really the most important question and then of course any transformational initiative you need to measure you know to measure it constantly right you need to set kpis so that you're measuring it to understand your progress so that you can always continuously improve right so measurement is critical to the effectiveness of making sure that your cmdb drives value um so one of the things we like to say here is that if you're if you're just turning on a cmdb right think about if you're building a plane right you're essentially building that plane while it's flying if you haven't set direction up front right the cmdb is very much the same you have to set your direction and then that is the first key step or else you're just going to have a a big pile of data that may or may not provide any value to your organization so as part of this first step we need to identify both strategic company and i.t initiatives and some of those business initiatives right that are aligned with your company level might be things like digitally transforming the business or enabling our employees to seamlessly work remotely you know think of today right that was a huge thing when covet hit and also ensuring business continuity for our customers those are just three examples obviously each organization has their own things secondarily you also need to factor in what are some of its you know um strategic initiatives so that might be something like i want to better align i.t with the business i want to understand how how all of these components that i'm you know putting out there how to name that back to a business initiative uh for example um maybe it is looking at a cloud-first strategy right to shift from on-prem to the cloud or maybe it is also looking at improving information security right so when you think about it right make sure that you use the same language that your stakeholders use so that you'll get faster buy in from them and they better understand what you're trying to do so you're probably asking yourselves by now well how if i define a strategic initiative right how does that actually map back to a cmdb so there's actually this this three-step process um that we follow to help you do that or that you can follow yourselves as well so let's talk about two um examples um and these are still you know pretty relevant in today's world so let's say you have a strategic initiative to enable your employees to seamlessly work remotely right any organization any any government agency any student education any hospital any you know really any large company anywhere right so we basically essentially create some use cases about how we you know for that strategic initiative right so things like all right well do my employees have the vpn client on their laptops right how do we know that um is the hardware and software that powers my vpn up to date from a security perspective right and also if i have an issue with with a vpn outage how can i quickly determine where the root cause lies right so taking that back to the cmdb essentially what we need there is an inventory and so accurate and current right that's very important inventory of of the hardware and software for all the end user devices right and the entire operational estate right so so laptops um both you know whether it's windows or mac whether it's an ios device for example but also from a infrastructure side you need to have all of your servers in there you need to understand this you know and the second thing is how those infrastructure and application components you know how do they support each other in the business second example uh we want to talk about here is for a retail company for example right when when covet hit stores were closed everybody had to work i'm sorry everybody had to buy stuff online for the most part right so as a retail organization how do i continue to serve our customers right so ensuring business continuity so the use cases here could be you know because we have such an increased volume in you know in online shopping so we need to understand how we can prevent outages from occurring also how will we know when we need to add additional capacity before our customers are impacted right so maybe you're running low on performance but you need to understand how all the systems relate back to the performance i'm sorry to the to the system that is powering the online store and also how can we ensure dci i'm sorry pci dss compliance for any new infrastructure being stood up to support you know the additional capacity right so so those who don't know what that is that's making sure that we are in compliance if systems are have credit card data on them or have access to credit card data right so italian back to the cmdb we need to be able to track performance over time against the infrastructure and application components that power the online store now i'm not saying that cmdb is tracking performance but if you're tying everything back together you know i'm relating all those components back up to an application service you can more easily track that performance over time through a monitoring system for example and also which components have access to that consumer credit card information right so for each strategic initiative you're going to see that there's lots of different use cases um you know one-to-many and these are just two examples right so when you start to think about what are my company's strategic initiatives right once you define those you start defining some of the use cases that are going to be aligned with that you know strategic initiative and then you can more easily determine well what type of data do we need in the seam to be to support that all right well not now that we set our direction right we need to build a team and governance model essentially what we need to do here is we need to set up a cmdb steering committee right to ensure that the cmdb continues to deliver continuous value so this you know so this steering committee should have it leaders that have a strategic decision-making responsibility but are also they'll have accountability for the business so these are not the day-to-day folks who are actually configuring the systems and you know and making them run these are leaders who are close enough to the day-to-day operations but also have a responsibility back to the business right so this is the team that's going to help articulate how the seem to be will support the strategic initiatives of your business and it's extremely important to get early buy-in from any executives so you can create credibility and trust in the efforts that you're building but also you need to give your team the support it needs to drive that change right what's the sense of putting a cmdb in place if no one is going to you you know if if if no one in the organization is going to use it this was a huge challenge when i was a customer was trying to get the buy-in for the it organization to use that they you know to use the cmdb to use the change management process and so on so you know really that executive buy-in is so key right because if you don't have that you're going to struggle to get people to use it which is going to have that low adoption rate and you don't want that right you want to make sure that it's used step three is really around designing your cmdb data model and we talked earlier about the concept of the csdm this is so this is where that comes into play excuse me one second so what we need to do here is we need to make sure that we're only putting data in the same db right away that supports our use cases right we also want to make sure that we don't boil the ocean and just start to build a comprehensive scene to be right away right just don't turn on discovery and have it start discovering everything in your network every you know every single device type every single attribute right think about what you need in there you want to use out-of-the-box ci classes you want to try to avoid adding things to the cmdb because every time you add something new you have to manage that data so think carefully about when you're when you're creating attributes or when you're building relationships you want to make sure that those things are important to manage because everything that's in there right you know like i said has to be managed um so for example right so earlier we talked about the use case of ensuring that our our firewall systems are up to date right as part of that effort to make sure that people can work seamlessly from home right so in the cmdb you're going to need things like the firewall devices maybe the firewall managers um all the servers and applications that that that support the firewall system right and then you also need to pull in the software versions to make sure that they're up to date as well as any patches right and then you also need to have those dependency relationships between them right so at a base level i know there's probably a few more things but that is what you would need to effectively be able to meet that use case we're going to pause here um and take our next poll and it's really uh you know it it's aligned to the csdm adoption we want to understand where you are with you know with your csdm adoption today um so you'll see the poll pop you know on pop up again and like i said if you have if you are using um a like a web browser you may not see this so what is the csdn right we understand what the cstm is but we aren't using it or we've completed a few models we've completed some business services modeled and tied to application services and then the final choice is we have business applications application services and business services all created and we'll give it a few more seconds and then we'll end the poll all right brenda you can go ahead and and that so some of the results that we have here about 30 of you say what is the csdm right so this is something that we are trying to educate our customers on as much as possible we'll see some resources here at the end that will help you take that training about 38 of you say we understand it but we aren't using it yet okay well this is a great opportunity to get started we've got you know we've completed a few models about fourteen percent uh we've completed some business services modeled and tied to application services thirteen percent and then at the very end about four percent of you said that we have business applications application services and business services all created right and that makes sense because if we see if we're seeing that you aren't really using it yet um you're not going to be at that high level of maturity down here so good information but certainly there's a lot of training that you guys can participate in to get better up to speed on the cstm okay now that we have our data model created uh we want to operationalize the cmdb right and this is really around accurately populating cmdb managing its health and creating reports to drive data-driven decisions so one of the most important things to to note here is that if you improperly populate your seem to be it's going to lead to inaccurate and unreliable data some of the things that we don't like are duplicates or misclassified cis unclassified or incomplete cis and we'll talk more about that as we go throughout so the you know after i finish the rest of the day is going to be you know um populating the cmdb topics with ricoh and then mike is going to help you better understand how to manage health and also report against it so uh because if you have inaccurate data right it's going to that's going to result in poor decision making people go to create a change request they may put in the name of a server maybe that server you don't have all the relationships built out yet so they schedule the change to occur during maybe an operational window that they shouldn't be doing it or there could be a conflict with something else that's happening on the same server right so if you don't have that data in there correctly right it's gonna gonna be you could cause an outage you could cause increased risk right when you're to have rework right people can have to go back and fix things that were done in error because of inaccurate data a recent study uh by the institute of process excellence found that when work is performed from information that is not clear concise and valid a an organization will spend 40 percent of their resources on that corrective action or or you know what we call rework right so so in this case here having no data is actually better than having bad data so keep that in mind all right the last step uh step five here is to create ongoing strategic alignment so this is essentially where your steering committee has that effective two-way communication with the business stakeholders so that they understand what you're doing as to try and meet their needs right but also how you plan to support their future needs you want to make sure that you tailor your cmdb to align with major projects we see organizations putting a cmdb team member for every new major project that comes up for example if you have a cloud first initiative project right is a person who who has a cmdb role will sit on that project to make sure that the cmdb can support that new effort as an example if you're with a cloud first initiative if you are if you have a need to to go cloud first you're going to need visibility of all those cloud resources in the cmdb right so an example decision that the steering committee might make is well we need to have a automated discovery capability for cloud resources right you don't want to find out last minute um that you have to have a you know a solution in place you want to be better prepared for that new effort coming in so always understanding where the business is going tying that back to how can my cmdb or our seem to be support that initiative is really going to help you guys go a long way with making sure that your seem to be continues to drive value for the organization overall and it's really important to make sure that you don't consider the cmdb as a project the cmdb is never going to be complete um it's not necessarily that typical go live right because you're always you're always building a cmdb to meet the use cases of the business not just use cases but the strategic initiatives so as there is a new strategic initiative that pops up you will define what are the use cases that i need to support that initiative and you'll iterate putting the data in the scene to be that you need for that initiative perhaps you already have the data in there great right but do you need to enrich that data to further support that initiative right so those are the types of things you need to think of right the cmdb is not necessarily a product either right it it it's it's a platform capability right if you think about a house you've got the basement i'm sorry the foundation right the foundation of the house is critical to making sure that the house doesn't fall down right like a weak foundation is going to make the house fall down or worse if you're building a tall building the last thing you need is a weak foundation so if you're investing in a transformational platform like servicenow you want to make sure that you have a solid foundation and that exactly what that that is exactly what the cmdb is right so it's never really done right and it's not just that data model but it's it's the relationships that really drive the you know the value right because you have all these different servers for example sitting in the same db and those are not related back to a business service or application right what value why is that data in the cmdb to begin with right so and and why are you investing time and effort to manage that data right so if you have those relationships it's going to be more valuable right and the last bullet here right is extremely um prevalent right perfection is the enemy of progress don't let you know perfect be the enemy of good get the data in there you need for each use case continue to iterate right um so when you think about this this chart over here on the right or this flow right step one you have all this chaos right but then you think all right if i just get the servers and networks and software in there right now i've got my inventory now i can start to do asset management and i've got a gold in cmdb right but that is not the case right it's it's an iterative process right so once you have the data in there for each use case right you may think that you're in chaos up front but you put budget but you're really not there's no need to panic just get the data in there that you need to build out the use cases for example asset management and then you now have a star for that specific use case go back do it again right so just make sure that when you're doing this right you're documenting it along the way you're making sure that the right people are involved right of course but follow the five steps right make sure that you are building that healthy seam to be in in the right way and and the last thing i'll say here is that those five steps are not necessarily they're not sequential you could do pieces of those five steps altogether at the same time but make sure that you do all the five steps to make sure that you have a healthy cmdb all right i think that is the last slide that i had so at this point i'm going to turn it now over to rico to talk about cmdb population rico over to you yep i couldn't get off a mute there so again thank you for uh for joining today i am going to be sharing my screen here in a moment give me a second let me know when you can see this please i can see it all right sounds good all right so what we're going to talk about today um for probably the next half hour or so it's going to be more from the cmdb population perspective all right um now keep in mind it's all about junking and junkout um there are some of you folks that have mentioned that you have millions and millions of ci's within your cmdb and that's a fantastic thing depending on whether that data and information is being managed or not um as steve had mentioned earlier it's going to be important from a governance perspective is to make sure that the data is being managed there is a use case behind having that data within the cmdb and so forth and so on but the thing is is that we want to be able to understand how we can populate that cmdb as well so one of the things that's going to be important to understand and we need to make sure we set the groundwork for the data and seem to be is what is the difference between an asset and a ci all right now they are definitely some differences there is definitely some overlapping and we're going to talk a little bit around that um so let's take a look at real quickly what a configuration item is or what aci so when i say ci it's going to be configuration item so it's any component that needs to be managed in order to deliver some sort of support to a service all right so things that normally are going to be discoverable um and so forth is more of an asset but in this case here it's going to be anything within the infrastructure so you know within your cmdb obviously an application is a ci anything that's part of the infrastructure or a service to the business is going to be aci um so we have a series of lists here based on that you know hardware software applications databases even database instances um and some of the specific attributes can be cis as well all right so just keep that in mind so when we start talking about the differences between an asset and a ci obviously there is going to be a specific nomenclature for every single company in business that you maybe work with an asset is something that has a beginning middle and an end it has some sort of intrinsic value to that person that group or the enterprise itself and again a configuration item is any component that needs to be managed in order to deliver or support a service now as as i just mentioned from a configuration on a perspective that can have some sort of meaning into an asset as well but like i mentioned there is definitely going to be some overlap and we are going to be talking about that as well but one of the mission critical things that's going to be important especially from a cmdb perspective is that the cmdb has relationships as well um one of the questions i got earlier was more from an application performance monitoring perspective there's a lot of technologies for monitoring uh systems and network devices and so forth and so on the help of having relationships is that you can understand business analysis and business impact based on relationships so down the road as you mature further into cmdb and you start getting further into the event management space i'll keep in mind is that we're able to bring in those events and because of those relationships between cis you're able to provide additional content such as business impact back to the business that's something that a configuration item and cmdb can do but from a just an asset perspective there is there is no relationship right so again an asset is very often going to be a ci probably close to 99.99 of time it is going to be a ci and ci's are not necessarily assets as well and we will get into a bit of that uh are some examples around that so looking at that overlap as we talked about it before um some of the things that we are focusing in on that are really related or have some sort of overlap is going to be from what is discoverable all right some of the servers uh some of the routers switches network devices storage environments and so forth they're definitely assets they have a life cycle but they're also configuration items because they're unmanaged type of devices within our environment some of the things that are that are assets that are not a ci is going to be like let's say a license a software license all right they are based on entitlements they're based on contracts and so forth and so it's definitely an asset but is not really a configuration item or you don't configure licenses in any way all right so they are managed from an asset management perspective but not from a cmdb perspective but then looking at it from configuration item side of things websites you know your your urls into your environment for instance um you know that there are definitely configuration items it's an application service or a business service or a transaction um you know url into a service um they are configuration items they can be monitored they can be discovered as well but they're not really an asset all right so it's something where you know you your it doesn't have a beginning middle and end and so forth for a specific website all right so technically um so again uh showing you that assets definitely have some sort of financial value um and cis often deliver that financial value but you know not not all the time so so just keep that in mind so what differs throughout the some a lot of the various different organizations is really going to be based on that overlap um which is going to be your servers routers and anything that's going to be discoverable to be focused around a configuration item as well as an asset in your environment so looking at it from a uh an asset perspective um again this can be really focused around any asset whether that will be a software asset or a hardware asset it has a start from a request perspective all right so again it goes into the whole financial aspect life cycle around an asset i'm looking at the procurement processes uh resources um with that there's going to be a request there is a can be a procurement phase for that device per se and then you also then you receive that device at that point in time is really when the that device gets a serial number for instance or some sort of asset tag number in which it gets thrown into the cmdb all right and that in that case you start having a lot of support capabilities who's going to be assigned to this ci um again that that that's definitely a field within that record um how is it going to be monitored um who and and there's going to be a change process around this specific asset uh there's a deployment um or an execution of that specific device in your environment and all this type of stuff is really functions of the cmdb hence now that asset still an asset is going to become a ci within that cmdb so now it gets thrown into service for instance and then once we dispose of it again that ci can typically theoretically still be within the cmdb but now it's going to be in retired mode um or non-operational and so forth so it will not impact the to say slas it would not impact orphan type of parameters within your cmdb health dashboard which we'll get into down the road here today uh but again keep in mind is that this just gives you a good idea based around the life cycle of an asset um with respect to when it actually becomes a ci within this cmdb and the specific governance model around that ci when it is there and then once you dispose or retire that device then now it actually is is in a different phase of its within its life cycle all right um so again um as we talked about from an identification and reconciliation side this is just a process that we'll get into a bit more um understanding um how that data is actually imported into the cmdb as well as we have many different mechanisms on how data is actually populating the cmdb and which which is going to be the next step of what our discussions are going to be about all right so population meth methods can be vast and wide all right um so ci or cmdb aggregation aggregates all the information about all your i.t resources um and that you know is called pretty much your ci's so from all of the various providers into one single rationalized source of truth uh to that it you know it really is really focused around um you know what is being stored within that cmdb all the data and information you sort of want to populate it from a near or real-time perspective you have a lot of technologies today it is you know very very uh critical to have some sort of common identification process for all of those devices or ci's within your environment um you want to be able to have your cmdb be your central and single system of record for all of your i.t technical resources all right um so we have mult i'm sorry rico sorry to sorry to interrupt but i just wanted to interject something really quickly since we're getting a lot of questions around kind of the difference between assets and cis at least for me the quickest and easiest way to sort of differentiate and remember the difference between an asset and a ci is that an asset intrinsically has value right if you fell on hard times you could go out and sell it on the black market in some way right but a ci provides value to the organization right by fulfilling some capability or doing something like that so assets have value cis provide value sorry for interrupting yeah and it's also it's operational so the uh the the ci is what you would relate to a record in servicenow like an incident a problem or a change right the asset is something that you're managing kind of behind the scenes perfect thanks guys no that's a good point um so i mean but but again that just keep in mind is that uh that diagram that i showed there uh in the last is is going to be focused around um again that there's definitely overlapping as well even though that there's value in aci um you know it could be an asset um you can have also a ci that is not an asset but still have value as well so just keep that in mind so when you have multiple import sources uh referring to the same it resource um and this is really focused around having these multiple sources of data um again from application performance monitored monitored technologies uh from utilizing our discovery service mapping capability there's also importing data from you know cloud environments api cloud resources event sources as well as if you have developed devops stories within your environment again these are just all sources of data and information and when you start bringing in multiple sources into one it it environment you need to definitely address the different aspects of that individual resource you know but sometimes they provide different value for the same specific attribute um the second responsibility you know one of the main responsibilities of this team to be is going to be what we call the ire which will get into more detail the ire stands for identification and reconciliation engine all right it is the engine that all the data needs to run through in order for it to populate the cmdb with the correct stuff that you are interested in as we talked about with the many many different sources that is populating the cmdb there's there is a technology that you may have that you rely on most for to have the most accurate data on the most trustworthy types of information and so it needs to run to through that to identify the correct device in its correct fashion whether that would be a serial number or a cis id or a mac address or whatever that may be um and so if we deem that hey solar winds or maybe our discovery has that data and we rely on that information then that discovery source that has authoritative capability to populate the san diego is our discovery if we deem that solar winds has the authority to to create the host name because we rely on that data then you can do that just that that's what the ire does all right and it actually makes sure that we identify the ci correctly based on its uniqueness at the same time we need to determine whether that is a duplicate or not um and so be able to populate it with the correct date and information all right so so so the ira really is a blend of the best of all the sources of inputs to produce and up-to-date and comprehensive view of your entire i.t estate but keep in mind is when i say your entire ita state don't go out and start boiling the ocean this is one of the things that steve talked about earlier on why cmdbs fail um if you're at the beginning stages of populating your cmdb don't boil the ocean by all means um focus on the critical few as opposed to the trivial many um and so making sure that you are providing value back to your business right from the get-go um and so and make sure that the data that's populating your cmdb has is managed by something and there is a use case behind it and there's a goal associated with populating scm your cmdb so you know we covered you know why you need it and and and and now let's talk about how you create uh that data all right so today obviously and this is going to be more of a shameless type of plug-in um but servicenow has its own specific capabilities uh some of the customers already utilize some of these technologies from a discovery and cmdb population perspective um we do have uh servicenow's discovery and servicenow capability to help you in the near real-time discovery of in devices within your environment um both from a data center side of things whether that will be specific hard rack mounted type systems um specifically you know virtualized type of environments understanding what is out there within your environment and populating the cmdb with specific data the nice thing about using our discovery is that is a native application to our platform um everything that we talk about within our service now environment is based around the platform and discovering service mapping our platform-based capabilities as for the data center we it also is able to capture devices and information from a public and private cloud perspective um so providing that that you have the correct credentials and authoritative capabilities you can still populate your cmdb with that data there's also a byod all right you're bring your own data to the party per se um so in this case here there are a lot of investments that you have already made i'll get into more detail here in a bit but there is a capability to have your own information we have a lot of customers that do import of data and information from either spreadsheets or from other technologies that you may be utilizing by all means use that capability but keep in mind is that there's got to be some sort of governance behind that data and there's got to be approval processes in place to make sure that that data is accurately populating that cmdb all right so today from a discovery perspective we have an agentless capability all right hls meaning that we utilize what we call a mid server within your environment that is a conduit to the servicenow platform all right so what happens is that there is a commun constant communication from the mid server to the platform to indicate hey do you want me to discover something within my environment all right so there's a one-way conversation secure conversation back to the mid server the mid server says yeah artists the servicenow platform says i need something for you to do i need you to go out and discover an environment and so it tells the mid server discover this environment the mid server goes out and starts discovering stuff in your environment all right so as it pings date for data and information and attributes and so forth it it collects the data and sends the information back to the servicenow instance so from a continuous fashion or from a scheduled perspective um you're able to look at all the data and information or what is being discovered within your environment utilizing that mid server within your environment all right it's the same type of capability for a cloud environment also so if they're if you are starting to move a lot of your applications a lot of your business functions out into the cloud by all means we have the capability to discover that as well um so cloud technologies as well as we talked about earlier both my public and private perspective um providing ability to go out and understand hey these are are my providers these are my subscriptions that i currently have uh private clouds from these various different types of technologies also understanding and discovering containers and past providers um for your capab for your specific cmdb building uh initiatives as well um but keep in mind is that there are and there will always will be you know out-of-band type of capabilities as well you know there's a lot of capabilities out there a lot of technologies that maybe we just don't have support for but we have partners and we have customers that are consistently working on providing capabilities to discover that and so we have embedded some of that within our capability as well all right so keep in mind is that though you if you want to run out to the servicenow app store um the app store provides a lot of content of of specific things that are of course supported but also things that are not supported but we have capabilities to help bring in that data into the and to the cmdb as well all right all right so of course um there you know there's there's there's no use having visibility of the information you know from a days or weeks or even out of date especially since change in the cloud is measured in hours minutes or even seconds um if the data isn't up to date accurate and complete it means that your people your folks your teammates will make you know the wrong decisions um and once they are you know burned they'll no longer trust or use that cmdb so you want to make sure that the resources and information is up to date the problem with traditional discovery tools is that they can't keep up with the cloud um we know that cloud as well as vm environments change on an ongoing basis usually every hour every 30 minutes and so forth so they periodically pull for changes which means that you have to wait for the next scheduled pass to find out what has changed and that same goes same thing goes for our discovery it's based on schedules so the schedule kicks off once a day we're going to look at that change once a day but if changes happen every hour you're definitely going to miss some things so we have direct integrations into our into our real-time discovery for these cloud types of environments so servicenow discovery on the other hand is built for specifically the cloud um it's it triggers targeted discovery automatically when it receives some sort of change event um and so you know from the cloud interfaces such as like aws config or even azure monitor um this gives you near-time real-time visibility into that type of environment it also provides support for both your i or iaas or even past infrastructure as well as container and serverless technologies um such as kubernetes docker aws lambda and you know you can easily extend the these out-of-the-box capabilities support additional cloud technologies as and and other vendors as well um so by getting value from your cmdb starts with you know the data quality um as we talked about earlier it's all about junk and junk out right um and so you know we have various different types of capabilities um to bring in data and information um but we also actually embedded some capabilities within our service graph connectors all right um this helps answer some of these questions you know how do i leverage ci's from qualis you know which is our vulnerability type of capabilities um to supplement the same to be or can you know i'm concerned about creating duplicate cis um when bringing in my solarwinds data you know what do i really do um and so we've extended the capability of bringing in data and information our discovery does a fantastic job when it brings in information from these capabilities but keep in mind it's not going to bring in everything it's going to bring stuff that's going to be pertinent to populating specific fields within the cmdb so service graph connectors provide the capability to bring in additional data and information from these other technologies so again with this data information helps you improve experience as well as a time to value for your cmdb and providing value back to your business um it also maintains your trust in your system of record um hence hey you know there's specific things a specific vulnerability type of information we need to bring in from qualis that discovery doesn't provide so we trust the data that qualis really has so let's utilize service graph connectors to bring in the data that we need and but at the same time also we want to reduce that risk um obviously any technology that goes out and does discovery there's always some sort of risk involved you know it just happens with any technology um but with the service grass service graph connectors helps you reduce that risk by providing the right data from the right source so enhancing your cmdb we talked about earlier about the ire all right the identification and reconciliation engine it is an api that's built on your cmdb not a skillable item not a chargeable item it's something that comes with your cmdb already anything that is discovered is actually pop that populates your cmdb um it goes in because it's a native application it already runs all data and information through that rre identifies that ci by this correct capability whether that will be your serial number or that will be your host name or whatever that is um and it creates a new ci and inserts it into the what we call the reconciliation engine the reconciliation engine determines what data needs to populate what field with what information and before it actually gets thrown into the cmdb so if we are also bringing in data from a finance perspective or if we are importing assets or other database type of information or whatever all that information and all the technologies that do get brought in still needs to run through the identification engine or the ire all right this helps us to make sure that we have the right data the first time before we populate the cmdb the last thing we want to do is rework which what steve mentioned earlier reworking costs money it takes time and it's just a waste of a cmdb honestly so do it the right time the first time another view from that perspective is bringing in from this multiple data sources as we talked about earlier servicenow discovery is one source that runs to identification and reconciliation but also third-party sources as well um so again whether that will be uh importing nagios or solarwinds data or secm data and information or import sets based on what you've already created maybe spreadsheets or what have you make sure that the ire api is involved so that it runs it through this it's its api layer before it gets populated into that cmdb hey i wanted to jump in again really quickly rico since we're getting a lot of questions around the service graph connectors and whether or not they're a separate license above and beyond visibility um or if there's a separate capability so um i i wanted to clarify really structurally service graph is not really a product it's just a new architectural direction that we are moving the way that we do third-party connections and data ingestion into the platform it is not an additional cost however you do have to be on one of the newer itom visibility skus that are subscription unit based as opposed to the older node-based licenses because that's the newer architectural direction and that's the the way that we're moving the platform right and the service grass connectors is not just has not just been developed by servicenow um it's actually developed by both partners as well as servicenow for a lot of those popular third-party uh data sources um so and this helps just helps to improve the health of your cmdb and support you know definitely your your your customer or your your outcomes all right so that's a good point thanks mike all right um one of the things that that's going to be definitely important especially from from a ci perspective is is how we identify specific ci's all right there are very various different mechanisms to identify that and what we normally do is be able to identify by how that ci is unique to your environment um we have already created various identifier entries for a lot of things especially from the hardware perspective all right you know computers and servers and and databases and so forth we've created identifiers already for you based on how and what the the industry is doing today from an identification perspective um today we identified a lot of things by serial number or serial number type as well as by host name or even address and mac address you know they could be unique identifiers um so that's just going to be one of the key components which we will walk through from a from a lab perspective so we are going to walk through specific labs around identification rules and so forth we want to also make sure that we uh define good identifiers all right understand what guarantees unit uniqueness of that ci especially when you don't want to create duplications in a virtual world our virtual machines virtual desktops can be a challenge um but the great thing about our servicenow platform is that we have direct integrations into let's say vcenter um so if something changes the motion kicks in starts moving things around it's automatically going to populate and update the cmdb with the correct data and information uh so it's just one of the capabilities that we currently have but keep in mind is that anything that happens within your cmdb there's got to be governance and data owners for everything and anything that happens um it just it just makes sense um it actually provides a good uh first a good step into making sure that the data in there is correct um you want to identify these rules before you start any discovery because if you start discovering without any rules then you're just going to populate with a bunch of stuff and then you're going to have to go ahead and revamp a lot of that stuff later on all the owners of that data information have to agree with what is being populated um the tools must be able to provide all the data that is populating you know all the information that you're looking for and then and what do you do if you have missing data um you want to make sure that uh you know your discovery capability your discovery logs are being monitored as well um so you don't just have a sys admin for your cmdr for your servicenow platform you also have a cmdb admin as well to make sure that the rules are set correctly the approval processes are there there uh the data streams are going to be effective but also understand whether data is missing or required or recommended which uh which mike would talk to later so this is something that's going to be important as well as you know everything that gets populated within cmdb is part a very specific class so if you're identifying a server that server is a windows server it's going to be under the server class under the windows server class all right and we'll get into that here in a second everything that gets discovered is going to get thrown into some sort of class this is our mad way to categorize everything within your cmdb all right so everything um that is a ci gets thrown into a configuration item class and that table is going to be cmdb underscore ci right makes sense cmdb underscore configuration item so when we start discovering or importing data or whatever that is it runs it through its ire it's for us to determine what it really is right based on identification rules um we see let's say for instance a a windows server all right so uh windows server comes in we're gonna say okay it's a windows server so it definitely gets thrown into a hardware class because obviously it's a hardware um it is running some sort of os um it has maybe specific attributes or whatever that is so it's definitely going to get thrown into a computer class as well as a server class so now we have a hierarchy to our madness as well so our windows server is under the server class under the computer class hardware as well as configuration item but it is a windows server so will it get thrown into the linux server class absolutely not we have a windows server class so it will not get thrown into the linux server class so just keep that in mind is that when we start talking through um the ci class manager within one are our labs um that there is a method to this specific madness for how we categorize data and how we display that within the cmdb um we want to create a service aware cmdb this is going to be very very important um the the capability that we talked about earlier from a horizontal discovery is very typical all right there's a lot of technologies out there that populate uh their databases for instance with information all right and this is really based around you know doing a what we call a horizontal discovery go out and discover just a bunch of stuff right identify all my load balancers identify all my windows servers applications my vm environment whatever that is and populate it with stuff all right and as well as attributes now that's not really a service aware seem to be because we really don't understand services we just understand infrastructure at that point so going forward we also have a capability to do top-down discovery so we utilize what we call our service mapping so that we use what has been discovered with our cis individual ci's and devices to help build upon the relationships um so that we create a more service aware seem to be understanding hey this is your email service or a payroll service or e-commerce service based on relationships and dependencies of a specific conversation all right i'll get into more detail here in a bit so detail and ci information from all your it assets uh capture real-time data and information based on business impact or whatever that may be especially from the cloud environment um discovering load balancers as well as your clusters and building these clusters within your cmdb is going to be important and so now we create a ti service centric context to all of your cis within your cmdb right so from a horizontal perspective obviously we talked about it there's a lot of discovery tools out there that do a great job when it goes out and discovers whatever you have and this is just that goes out discovers whatever it may be but at the same time we're also looking at uh it from a relationship perspective within our discovery capability we have what's called adm application dependency mapping which goes out and discovers who or whom you are communicating with based on let's say web server app servers or databases based on ttps open tcp connections or open udp connections so it's giving you a view based on these are all the connections that a server may have so now building on relationships into your cmdb not just your ci specifically so what we do now is that we have what's called application service mapping so based on an entry point and when i say entry point this can mean an executable or it could be some sort of task or um something that maybe an end user would perform to get their job done for instance in a medical industry i know steve talked about this earlier um where you have an application called epic and you want to do a patient look up well what what does any user need to do for a patient look up right you need to type in the patient or social security number whatever that may be they hit enter it goes out and hits a cluster or load balancer it's a cluster of web servers databases app servers vm environment whatever that is and so we're going to follow that through its multiple tiers and to determine who it may be communicating with next identifying the app and so forth so now it's building out a map based on that conversation based on that entry point all right now the entry point can be many different things when i say entry point it could be a url access into some sort of application it also could be a jdbz connection for a database conversation or an mq call for mq series or what have you um so it could be about 70 to 80 different types of ways we communicate based on your application needs so keep that in mind so not just from a discovery space from a bottom-up discovery but also from a top-down discovery as well to help us provide context to all the cis within your cmdb so with that now we have business contacts adding your individual devices and building out a map based on impact for your use later on so now it's service aware um one of the things that we've i've actually instilled within our service mapping capability is tag based discovery why did we do this well it's because a lot of the applications that are now being built and pushed out into the cloud environment are tag-based um and so we would love to be able to utilize the user-defined tags to help discover that environment and so with our tag-based discovery we can do just that so adding on specific tags um to look for from a cloud service be able to build that top-down discovery in a cloud environment far quicker and far easier and to build those maps out so that giving you a bit more value quicker and understanding changes as well that happen in your cloud environment all right all right so let's talk a little bit uh from an integration standpoint um so what we've i've also instilled within our cmdb is what we call the robust transform engine um it's new uh which is an out of the box mechanism to transfer data into the cmdb this is leveraged by what we call the integration hub etl and i get into the etl here in a minute in you know in the next slide but it's more focused around being able to seamlessly integrate data into that cndb um so unlike the service graph connectors which i talked about earlier service crack connectors are connectors built around specific technologies to make sure that we're populating it with the right data but there's technologies out there third-party sources that we want to add additional content for building a lot of the metadata using that metadata rules to run it through our robust transform engine to help before it actually runs into the ire before it populates the cm2b hopefully i'm not confusing the heck out of everybody um but it's just another mechanism and the way we do things under under the covers for these more complex type of environments um to populate the cmdb so this helps to improve cmdb data quality tremendously um but again it's something that is embedded within your cmdb as well um so just keep that in mind all right um this this is actually a good mechanism in a good way as we talked about to to bring the data into your cmdb but there's also a a let's say a quick setup guide to do just that so if we have a technology in place today that is is is something that we really don't understand um how is the data what's the data look like what's a data source look like um how do we actually prepare the data for mapping and so forth um so we have a walk through a guided setup per se to integrate the data into um you know from your sources into the cmdb um so you know keep in mind is that we have a whole learning uh process behind that as well so by all means we have a free course to help you understand more of the data transformation side of things for our integration of etl all right so at the end of the day it we want to make sure that we are identifying things correctly um we want to be able to automate a lot of the newly discovered ci's into into the cmdb but keep in mind there's got to be a specific support group for anything that's in your cmdb as well um if support does not exist if there's no use case for ci's to be discovered and populate to seem to be don't put it in there it's just going to be there sitting there with no one managing it um so keep in mind is that there needs to be a support group for anything um by all means utilize our discovery and service mapping capability um again they are natively uh native applications to our platform and they are supported processes currently um within our platform as well um they automatically keep things current and up to date um and they avoid a lot of tech depth as well so you know going out and purchasing additional technologies and so forth you know a lot of companies definitely do that um but our discovery can help with minimizing a lot of that tech debt um if you are a legacy or have a legacy cmdb or spreadsheets and so forth you definitely have to make the right decisions and tough decisions whether that data still needs to be within the cmdb or not if so how are we going to import it um and if we don't want to do import what technologies are we going to use to populate that cmdb all right so this is definitely important information important decisions that need to be made not just by the sysadmin but also but specifically the cmdb admin as well you've got to identify reconciliation strategies um so who has authoritative capability to populate that cmdb which technologies is the source of truth and then leverage your automated reconciliation as well make sure that anything get that gets brought in and populates your cmdb um has one governance behind it but do it from an automated perspective you don't want to go back and rework your seem to be and readjust it just to make it healthy again all right so um if uh if if we can continue then let's let's go in and start working on our labs um what i'm going to do is i'm going to be sharing my screen um for our lab environment or from my environment and then i'm gonna be walking through lab one two three and four um if there's any questions by all means our gurus will still be online um but they're they're pretty pretty basic and they're pretty simple to walk through um what we want to do is make sure that you have the gist of how to uh create specific rules around identification reconciliation uh data precedence and so forth um so let's take this quick minute for to make sure that everyone has a lab guide there is a couple scripts that will need to be copy and pasted um so that we can create data some of you may not have the capability to to copy a script from that uh that link or from that lab guide by all means download either download that lab guide um that way you have a hard copy on your screen um and then be able to copy and paste it that way um this lab guide is actually a great tool um so that if if you don't have the time to run to these labs today um by all means you can utilize it in your dev environment um so um so it's it's a great way to good thing to reference later on so just keep that in mind so let's let's do just that i'm going to stop sharing and then i'm going to share my instance all right so right now you should see my environment um so one of the things that we want to be familiarized right from the get-go is going to be the ci class manager um as we talked about the madness to all of our cis is going to be our class manager it's got to be organized in some way um so if uh if you folks want to dive in and just type in you know ci at the top filter navigator top left hand side uh class class you know obviously something's going to come up that says class manager you want to click on class manager and this screen populates all right you want to click on the very top button that says hierarchy and a little pop-up is gonna it's gonna push out and it's gonna have all of your classes as we talked about earlier everything is is gonna be part of a specific class anything from a configuration files from my database catalogs um and anything especially from a hardware perspective gets thrown in here the little brackets for the numbers indicates that there are that many ci's within that category right so just as a good way good view to understand what you have in each one of these specific classes starting on lab one what we are going to do is we are gonna just understand what ci identification really is especially uh creating uh rules so if i go in and type in ip phones um then if i click on ip phone it's gonna automatically sort to ip phones and so we have iphones here and we're going to select that class that class is going to have a wealth of information um especially from a basic info perspective again it's going to be the display name you can add a description and the table that it's related to as i mentioned before every class every ci is part of a specific table and if you you know down the road become a cmdb expert and you want to create a query against that um which you know mike will talk about later you know this is going to be the uh the table that is going that all the iphones are going to be a resident part of um all of the attributes that are going to be associated with that ci as well um so obviously we want to make sure that there's an assigned group maybe specific things there's about 76 or so i mean you know on your own time by all means you can navigate through those what we're going to be focusing in on are going to be identification rules um today within our ip phones that there isn't anything that is going to be there so we are going to do just that so let's create our first identification rule we're going to go in and click the little plus sign for add all right and we are going to make sure that this iphone rule is going to be independent independent meaning that that this ip phone is not going to be dependent on anything else such as a server or anything else so we're just going to say we're just going to do it just to do a clean independent ci anything that populates the cmdb that's going to be iphone based is going to be an independent device select that to active and click on save so now we've created an identification rule um based on an independent ip phone um and and then we can move on from that so now at this time what we want to do is we want to create a rule or an entry to determine how we are going to identify an iep phone all right so in this case here i'm going to click on add for identifier entries and i am going to say that i want you to use all the attributes in just the table of the ip phone remember how we see that i clicked on all attributes um or all the attributes for that ci well i want to include all of those attributes i don't want to use attributes from another table i don't want to use attributes from the from our main table or any other table meaning that it's hybrid so it's going to be just for ip phones and it's specific specific attributes and click on next all right so with that um how am i going to identify ip phones what's going to be the uniqueness for the ip phones so what i'm going to do is i'm just going to go to model i can type in model right there and click on model number and just bring that over for selected and then i'm going to select serial number all right so now i have all of the available attributes and what it's going to identify an ip phone is going to be the model number and the serial number all right and make sure it's selected to active and click on save so now the loaded identifier is going to be model number serial number oops for this iphone rule all right so because we don't have any data for iphones uh we don't we don't have any ci's we are going to create one um so within your lab guide under step nine there is going to be a script there um if you want to go ahead and copy that script go back to your instance on the top uh left hand side under your filter navigator just type in background i can spell and then something will come up saying scripts background under that i'm going to copy and paste that script directly into that field or um that canvas per se so what we're going to do with this script is that within this cmcmdb table which is the ci underscore iphone i'm going to create a user or not a user a a host name of iphone number one with a serial number of one two three four a model number of one two three four with an input source or discovery source of servicenow so we're actually manipulating our platform here by just manually creating a aci as opposed to going on discovery so this is actually a fantastic script so if you want to correct correct create some test data um you can just run this you can add additional attributes as well so the list of attributes that we have you can add additional attributes if you want to play around with it more on your own time by all means and we can click on run script so it just gives us some good information based on hey we inserted you know this row and so forth and so on so um you can read through that um so at this time what we want to see is the data that was created so go ahead and jump back to that filter neighbor navigator there in the top left hand side and we're going to jump directly to that table all right so i'm going to type in c mdb underscore ci underscore ip underscore phone dot capital r l i s t right so when i type in capital dot l i s t going to open up a new tab with the list of cis under that table if i do a lower class list it's going to open up within just this window here itself all right so but because i don't want to uh leave this view here um i want to do a capital l ist hit enter a new tab opens up and it says it cannot find it oh i spelt cmdb wrong that's convenient cmdb underscore ci underscore ip underscore phone dot list there we go so now we have an ip phone that we created i'm going to hit the little gear box on the top left hand i'm going to include model number i'm going to include serial number and i'm going to include uh source you don't have to but i'm going to or updated by i'm just going to leave it at that i'm going to grab the model number seal number i'm going to bring this closer to the top and hit okay so now i have iphone one manufacturer obviously don't have anything model number one two three four serial number one two three four all right so now um because we created that cmdb or that that ci it ran it through the identification reconciliation engine identification rule indicated to look for model number serial number as a unique ip address or not as a unique identifier for that ip and populate the cmdb with that ci under iphone all right so this is the the data and information all right i'm going to give you folks probably about a minute to complete the the lab and then we'll move forward with lab number two and rico while you're you know while we're waiting and just wanted to mention to everybody that these instances will be available until around noon eastern time tomorrow so whatever you don't finish here on the workshop you could certainly uh do on your own as well great thanks steve all right so uh let's move forward i know the first lab is pretty simple all right so it's just creating identifiers as creating an identification rule and just uh creating a new ci um so now let's quickly understand what reconciliation really is um as we talked about before we want to make sure that we're populating the the correct ci with the correct data you know all the time um this would involve making sure that we have correct data sources as well um with the correct information so what we're going to do is jump back to our instance um and we are going to go back to our our ci class manager in my instance i have created a favorite and my favorite is going to be my ci class manager so i'm going to go back to my class manager um as it populates i'm going to jump back to my hierarchy for all my ci classes and i'm going to type in computer and computer is going to be the ci class that i'm going to be focusing in on for this next couple laps as soon as it completes i'm going to type in computer and i'm not going to select computer room computer ac or that type of stuff just computer as ties class and i'm going to select computer as well so now again we have the basic information for that ci class as well as a table that it's associated with and so forth and i'm going to go down to reconciliation rules this is where you would create your rules based on data sources that are coming in um to run through reconciliations uh rules through as well as data precedence rules and so forth and so on um so let's create a reconciliation rule um so i'm gonna click on the plus here and we are going to have two data sources within our lab environment our first data source is going to be ms sms and the next one is going to be servicenow discovery all right so let's create those the first one is going to be ms mssms i'll make sure that's set to active i'm going to click next now what i'm going to do is i'm going to state that the record i wanted you to run reconciliations um for any cis that do come in within my within the cmdb that have an ip address and a serial number that are going to be of course books around our computer uh ci class so i'm going to select ip address because this is going to be my sources for data is that ms sms is going to have the data for ip address as well as serial number right and i'm going to select next and then i can add filter conditions as well so keep in mind is that i'm not going to use it today but if i want to select ssms sms for just linux servers or just for a specific ci class um then i can do that here but in this case here that it's going to be based on anything that's created under the under the computer class all ip and serial numbers are going to be part of the sms import capability so now we have one data source so now let's create another data source and it's going to be servicenow discovery i'm going to select the plus add and i'm going to select servicenow make sure it's set to active and click on next now in this case here i'm not going to select a specific attribute i'm going to select apply to all attributes all right this means that everything else that gets brought in through servicenow discovery is going to populate all of the other remaining ci's or attributes so i'm going to click next i'm not going to add in filter conditions against this and click on save so now i have these two uh data sources so now what we need to do is we need to determine um the source or the precedence so i'm going to give you another 30 seconds or so to complete this lab number two and then we'll move forward but it's pretty simple uh just for everybody's information again um in case you joined late um all the data and information that you do see here the lab guides well lab guides is available but your lab instances will be available until about was that steve tomorrow sometime correct they will have these instances that they will be available until tomorrow around noon eastern time okay for you to finish perfect and the lab guides actually is a good tool to walk through some of the configuration capabilities as well so by all means you can keep that and utilize it for your uh creation pleasure i guess for your for your rules yeah um just actually one more thing rico so we're gonna be we're planning to take a break after we finish labs one through four um there will be time allotted um during that break as well for you to you know complete some of these labs perfect all right so continue on with lab number three uh reconciliation precedence so now that we have our two data sources this really doesn't say which technology has precedence over writing which fields or which attributes so let's create data precedence rules so go ahead and click the plus add and we're going to select the first data source which is going to be ms or sms make sure it's active and click on save and if i click on add again and i'm gonna select service now and i'm gonna set priority to 200 for this one keep in mind is that our priority character categorization um within our platform if you remember it's it's a little backwards honestly so the lower the number the higher priority it has all right so 100 obviously has a higher priority um than a 200. all right so this is telling me is that if we have sms data that comes in the priority to write over ip and serial number is for ms sms anything else that comes in is going to have priority 200 which means that if we have ip address as well as serial number comes in it will not overwrite ip address and serial number because it does not have precedence all right so let's create some test data around that and that is going to be part of lab number four so i'm going to give you uh 15 seconds to probably get this ready uh to get these two rules up and running and we should be ready with that rico i just also wanted to add something else i know there's been a lot of questions around what is ms sms ms sms is the legacy name for sccm so if you're familiar with the microsoft sccm or system center configuration manager sms is the legacy name we just haven't updated the source name service now you will see with the service graph connectors though that it does have sccm in the name no thanks for clarifying that see all right so um by default within your cmdb all the ci's have a data refresh rule of a default of 60 days um in this case here we are going to set a date of refresh rule for specifically the computer ci class so if i go ahead and go to data refresh rules and click on add i'm going to set all data and information for sms for 14 days so what this is going to what this is telling me is that after 14 days if sms does not populate the ip address um or update it because it's going to have an update date every time it updates the cmdb or that ci within 14 days and then it's going to either give you a a stale ci or it will overwrite that data with that servicenow information so now i'm going to go back to my uh script my background script which i created a shortcut for as well and within your lab guide there's a another data creation script i'm going to copy i'm going to paste that here so now um i'm going to create data within my computer ci class the host name is going to be computer one with a serial number of one two three four five six seven eight and the ip address of dot 14 and the data source is going to be servicenow so because this data source is service now um and it has the capability to populate all cis then we are going to create a ci with pretty much all all of the attributes so i'm going to run that script all right so now again i can go back up to my filter navigator and dive directly into the list of ci's that we've created so i'm going to type in cmdb underscore ci underscore computer dot l i s t computer there we go all right so now i have all of these uh um all of these ci's or all of these computers that have been created but i'm going to click on the customize list and i am going to include ip address i'm going to include serial number i'm going to include discovery source as well as updated so i wanted date and when did this data was updated i'm going to select those four bring those up to the top a bit and click ok all right so now i have those ip address serial numbers data source and updated i'm going to sort under updated and this is the the box that actually was just updated via that script so we have computer one we have ip address serial number and discovery source which was just updated okay so let's go forward and uh we are going to go back to my script so if i jump back to my instance or we have this script history i can just hit the back button it's going to bring up that that canvas with the script you just entered in and i'm going to change this to computer 2 all right and i'm going to change the ip address to 15 as well as the data source is going to be changed to ms sms all right so now we have a new host name we have a new ip address and we have a new data source i'm going to hit run script we can see that it was inserted as well as there was an update to a specific ci in that class i can jump back to my list view and i can right click anywhere in this gray area and click on refresh list so now we still have the computer name that host name we have an ip address that was changed the serial number stays the same but the discovery source is now ms sms so why is it that the sms did not populate it with a new host name but did change the data source and the ip address it is because based on our reconciliation rule means that sms has precedence to populate the ip address and the serial number only all right not the host name that is the service now all right uh discovery source so that's why i p address was changed and discovery source was changed as well because we updated this record with sms all right so let's go back to my script again hit the back button for my instance and i'm going to change this um now to i'm going to leave it at computer 2 and i'm going to change this ip address to 16 and change this discovery source or the your source to back to servicenow so now that we have a new discovery source for servicenow what do you think is going to happen all right so if i run the script go back to my list of cis hit refresh list all right so now because of that name was computer 2 and the discovery source was serviced now the whole thing was changed but the ip address was not changed again servicenow has the authoritative uh capability to populate the host name but not the ip address so that's why the ip address did not change because sms has authoritative capability to to overwrite that only all right so this is a good way to test out your rules to make sure that they are functioning correctly all right we just covered uh seemed to be you know what does it seem to be we covered the governance and we also covered uh you know population and now i'm going to turn it over to mike to talk about cndb health thanks steve so really as we've mentioned a lot of times today it's it's wonderful to have all this data in your cmdb and there's a ton of value that you as an organization can derive out of handling and having that database in your cmdb however a lot of that becomes invalidated if you don't manage and maintain the health of your cmdb and ensure that the data that you have entered into the cmdb is constantly being updated and ensuring that it's sufficient for the business case that you set out at the beginning of your cmdb program so so to that end we're going to talk through some of the potential things that you can utilize that the platform provides for you to be able to manage and maintain that but first things first we're actually going to kick it off with the poll and this poll really talks about service ownership you know this is something we talked about earlier about have you started defining the services within your platform but now we really are talking about do you have people within your organization that are designated as owners over those particular services and have responsibility around the health and care and feeding of those services so you know the first is we don't even have services the second is we've talked about it but nobody's you know officially assigned then we've had you know we have service owners for those specific application services and then we have service owners for both app services and business services so we'll give folks a bit of time in order to get those that poll answered and we can kind of talk through some of the results that we're getting as part of that q a let's take a look and see if we're starting to get answers to the poll yet oh i don't see that the polls been launched let me kick that off let's try that again okay there we go so now you can actually start answering the poll and we'll give a folks probably about 30 seconds or so to get some answers in there and then we can talk about and see where everyone is along their service ownership journey and who has services defined and i'm going to take a quick drink of water while we wait for that okay so i'm gonna go ahead and in the poll we've got about fifty percent of folks voted so let's go ahead and share those results so as i said looks like the vast majority is we have service owners for the application services so that's that's really good um so that means a lot of folks are you know really down the journey of of looking at this kind of a from a service management perspective um and then you know close seconds are you know we've got some services assigned but no official owners um and then we have 25 percent so roughly a quarter of the respondents are already down the path of having application and business services with service owners which is fantastic so the the last 12 percent where we don't even really have services defined today i i recommend that you guys you know really look closely at how you can transform your operations by moving towards a more service-oriented operations management capability and that can really help progress down that maturity and that availability level so that being said let's let's shift gears now and talk about the the cmdb dashboard so i'm going to stop sharing those results and we're going to talk about what's the cmdb health dashboard what are the criteria that we're looking at and how are we utilizing that in order to ensure that the the cmdb is still meeting our organizational needs so it's really broken down across three different categories right completeness compliance and correctness and um i won't read you all of this because i'm going to really shorten it up and give you the the kind of the nugget of what it is right at its core completeness is do we have the data that we need compliance is is it built in a way that it meets our purpose and correctness is is the data that we have accurate and up-to-date so i'll dig into each of these kind of three sections and we'll walk through what that looks like how we get that oh that's quite odd let me can you see that better now yes perfect all right good catch folks so um let me uh then walk through each of those categories and um make sure that we talk through each of them talk about how it's built out and then get everyone available to start working to the lab so so let's talk about completeness how do we set it up and what does it really mean right so a ci is really only complete if we have both the required and recommended fields that are totally populated for that ci so for instance a recommended field you know it might be who the owner is or which cost center that's assigned to those kinds of things those are great fields to have on your environment but not necessarily absolutely required in order to be able to manage and maintain those ci's so the rec the required or mandatory fields are are completely global meaning that once you set it to uh to required for that ci class everywhere in the platform that is now required and so as a result any time that it's on a form it must be filled out and however we still have issues where at times uh required fields are actually empty and so we have this audit process this this completeness process to be able to point that out and that can happen due to direct updates to the table like some of the older third-party integrations that write dir data directly to the table have the capability to insert records that do not have the required field set so that's a concern and in addition to that there are inserts from script includes that can cause that problem so that being said understanding what those are and how that folds into the health of your cmd is important and then looking at compliance right compliance is really about is this ci built out in the way that meets our organizational requirements right so things like you know does it have antivirus installed on it all linux servers must be within a certain patch level right or all servers if they're in production they also have to have a matching qa server so you can go in and i'll we'll walk through at a high level during the lab explaining how to build some of these compliance rules to show that and to to explain what that audit process looks like and then from there um we'll we'll show you how to expand on that so that you can build those for your own organization and then the third is really correctness right so this is um is the data accurate right do we have duplicates in the environment um are there orphan cis meaning that there are cis that are not related to a business service or they don't have any other dependent relationships those sorts of things and then staleness which is a configurable item and we'll talk how to set that up but essentially how long has it been since we actually discovered the ci and saw it in the wild and if it's been too long chances are fairly likely that either it's been retired or the data that we have in the in the cmdb is out of date and therefore wouldn't be usable in the event of needing to do some troubleshooting with it so let's let's talk now about how do we configure the dashboard and what's the the baseline process for that so the first and foremost the key thing is to understand and build out what your health metrics are what what is really required for you as an organization to be able to give that record a thumbs up to say that has all the information that we need in order to be able to support that ci and and so we'll do that by and i'll we'll walk through this as part of the lab by configuring the health inclusion rules which ci classes get evaluated um and then we'll talk about setting your required and recommended fields looking at what is classified as old and building out these orphan rules so that you can understand what the critical relationships are for managing your infrastructure and then finally we'll kind of talk about kicking off those jobs so so let's dig into the health inclusion rules so as we've already talked about with a lot of the customers in the q and a today lots of folks have thousands if not millions of cis in their cmdbs and so building health inclusion rules that cover all of those classes is likely not going to be helpful and useful because there's a lot of data in there that while may necessarily be good for us to track and understand it may not be required for mission critical management and maintenance of your infrastructure so therefore we really want to limit the health inclusion rules to the core classes that you're interested in ensuring that you have all the necessary data on right so in this particular case we have applications and servers and vms highlighted as things that we really need to clearly have accuracy on that data and information so and then and then start to think about based on those core classes that are critical what are the required and recommended fields for those and how should we be setting this up again to ensure that we have all the data necessary in order to meet our organizational goals that we set out at the onset of our cmdb program right and and it's important to know that where you set these in the hierarchy is very very important because all of them are all inherited by all the child classes so if you set it at the cmdbci level every single ci record is going to have that and inherited by default so you want to make sure that you're setting it in the right place so that you have the right data necessary in order to have that overlap but not causing conflicts around what's actually required with other ci classes so we've talked a bit about required fields but but from a general governance perspective you we highly recommend that your required fields should be automatically populated right anything that you absolutely have to have as an organization in order to manage your infrastructure should not rely on human intervention in order to populate it appropriately and you want to have as few required fields as possible right ensure that you really truly actually need that data in order to manage your infrastructure before you make a required field recommended fields on the other hand they they don't have any real impact on the platform other than at the health metrics level right so you can say hey this we really should have who the ci class owner is and you know that's not going to prevent you from filling out aci because you don't know who the owner is but it will say hey we don't have all the information on this particular ci because this recommended field is not filled in so uh understanding where that is and how that makes sense to your organization is important and you know it could be information that might be useful for troubleshooting or communicating issues with a particular ci to the rest of the organization but again they shouldn't necessarily be mandatory and you can use it as a way to say maybe this should be a required field so let's first make it recommended and see how many ci's we're getting that information on and see what changes may be required to the process in order to ensure that we can make this a required field and get that data on every ci and then similar to the required fields you should have a process now it doesn't have to be automated but you really should have a defined process on how those fields are going to be populated in this case it's okay to have it be a manual process especially when you're thinking about that testing ground for required fields it may be let's start with making a manual process let's make it a recommended field once we're comfortable with that then we can move that into an automated process and make a required field so so now that we have kind of talked at a high level about required and recommended fields let's move on to staleness right so as we've talked about before you know that the number one way to kill a cmdb program is to have data in there that's just not useful for the rest of the organization right so ensuring that the data is up-to-date and and accurate is is absolutely critical to maintaining the health of your cmdb program so you know i i've had this conversation with lots of customers in my time here where folks say well we're manually populating these particular ci's and here's why and these kinds of things and nine times out of ten i said by the time you're done filling out that information in the cmdb once you're done populating those cis it's already changed and the data is no longer of use right so understanding how frequently your data changes how frequently your infrastructure changes and then building your staleness rules in order to match that is really really key so um by default out of the box all cis have a 60-day um staleness rule and you know you can change that on a class-by-class basis i think 60 days is is a little a little long in the tooth for as far as i'm concerned but at the very least we have a standard out-of-the-box configuration and you can dial it to meet your organization's needs the key thing is to understand how frequently that information changes and how frequently your teams are looking at that information in order to be able to manage and maintain that infrastructure so let's talk about orphan rules so when you're thinking about how you're managing your infrastructure and how that relates to the cmdb when you're thinking about things like problem incidents and changes right the understanding of what those relationships are and what the potential impact upstream and downstream of incidents and problems and changes is really really critical and is one of the great values that a cmdb can provide to an organization and so without that dependency information in the environment you're limiting some of the value of the cmdb so ensuring that we have this rule set around raising red flags when there are orphan ci's without the necessary relationships is really really important so think about what data you need to ingest and what those relationships are required in order to troubleshoot and manage issues and then how you're going to ensure that those relationships are in place so again data and data cleanliness and data health is paramount in managing your cmdb and one of those ways is by utilizing what we call the um the duplicate remediator and we'll we'll dig into it a little bit more in just a minute but there is a wizard now that walks you through remediating duplicate ci's that are found within the platform to be able to quickly and easily collapse those down without losing the data and and maintaining an audit trail on how this information was changed and why this was collapsed so we're going to jump into a couple of uh remediation options around how we're going to go through and remediate issues within the cmdb and this is something that we'll also do in some of the labs here in just a few moments to kind of walk through how to build some of these remediations and what that looks like so so first things first is are the remediation workflows that are available so there are workflows that you can have triggered uh out of the platform based on certain uh criteria that occur within the cmdb so things like you can create follow-on tasks and say hey this this this condition has occurred and so we're going to kick off a follow-on task for somebody to go and and update it or can do additional work we can also do things based on orphan data we can also do things based on whether or not recommended or required fields are are within the platform and properly filled out and then of course duplicates and staleness you can and we recommend start off with a manual execution build the workflow understand what it looks like understand what the requirements are and then set it up for a manual execution process so that you can manually remediate that and then once you've really got that process dialed in then you go through and start automating it and ensuring that no humans are required in order to keep that data up to date and healthy we talked about this a minute ago but i want to dig in a little bit deeper on the duplicate ci remediator it just shows here a little bit of the wizard itself and understanding how this is all laid out so it's it's a great little wizard that lets you it shows you here's a set of of duplicate ci's and you can actually walk through these kind of guided steps that say here's the various attributes that you want to use here's how we're going to merge what values from here to here here's how we're going to merge what relationships and then finally maintain all that audit trail and there's actually a great uh knowledge 18 lab that walks through that feature and shows you the whole process from beginning to end and that that link will be available in the slide deck that we provide out as part of the thank you email when we wrap this up next it should come to you tomorrow so just as a quick reminder you should get a thank you email with all the information from today it should have a recording of this session it should have a link excuse me it should have a copy of this slide deck with a lot of the links and information in it as well and the labs are also going to be available to you until tomorrow at noon so definitely feel free to continue to to learn and dig into the information that we're providing today so we've talked about kind of how do you remediate that information and some of the options that are available and automatically within the platform both from a manual process and from an automated process but there's also another great thing that we can do that's called data certification and really data certification is a a process that is a a scheduled process that does the on-demand validations of the data within the cmdb so this is usually done in order to maintain data that's not um ingested automatically via discovery process or via third-party integration of some kind so this is things like who the service owner should be and who you know who um you know what the purchase order was or any of that sort of ancillary information that's in you know good to know about a particular ci but not necessarily uh discoverable in any way shape or form so what that does is that kicks off a process then you can send it to specific assigned groups for them to go through and do the verification of that data and certify yes the data is still accurate and and then move on so it's a great way for you to ensure that the data again still meets the needs of the organization as it was set out at the outset of your cmdb program another great thing that the the platform has and again this is something that we're going to be showing you um as part of the labs are desired states and this really flows into um the uh the correctness excuse me the compliance health metrics within your cmdb dashboard right so you can build and we'll walk through this process you can build um desired state rule sets as part of your compliance rules to say things like all machines must have a um antivirus installed or something like that and so what that does is it will then show us here's a listing of all the laptops that don't have antivirus installed on it or here's all the servers that don't have lap that have antivirus installed on it so the capability to be able to kind of do some of that desired state and audit management is really powerful especially in organizations that have kind of higher security requirements the ability to have this as an automated process that automatically goes off in the background and gives you visibility into where things are deviating from the expected state is really really powerful okay so i'm going to go ahead and start us walking into the labs here and i'm going to pause my screen sharing for just a moment while i do that so definitely you guys have already done a great job of this so far but when we get in here and if you've run into any issues and i am not sharing my screen don't hesitate to jump in and shout out at me so we're going to start off on lab 5 which should be page 22 in the lab guide and let me get my screen re-sharing again here so so lab five right and what this is going to do and the intention of this is to walk through the process of configuring your inclusion rules and your health inclusion rules and also to ensure we understand what completeness looks like for particular ci classes uh and and we'll talk through that a bit as we go so first things first we're gonna go to the ci class manager right and give that a second to pop up and we're gonna open up the hierarchy here and because we want this to be against every single ci within our cmdb we're going to configure it at the configuration item level right that very highest point in the hierarchy so that way we know it'll get inherited by every single other class underneath that so we're going to go ahead and expand this health section and we're going to click on health inclusion rules so so we don't want to necessarily do health inclusion against every single class in the ci again because in the cmdb because again there's a lot of data but it doesn't necessarily all apply to us as an organization so what we're going to do is we're going to turn on all of these metrics however we are going to add in some specific classes so we're going to set class here is and we're going to set this to windows server okay and then because we want to have multiples we're going to do it as an or and i love that it keeps the same class so now we're going to look for linux servers great and we're also going to add in class's computer okay so what that means is we're only going to run these inclusion rules against those classes so we're going to go ahead and click save and so now we see these health inclusion rules and where it applies to and what domain it's sitting in so now we want to add in some specific things to the linux server so we're going to go back into our hierarchy here i'm going to look for linux server jump down to that okay and now we're going to go into completeness under the health setting here and in this particular case we want to set this recommended field we want to set assigned to because we want to again we this only impacts the health scores for this it does not make this a required field it doesn't change anything else in the platform it just says if assigned to is not filled out for a linux server ci we're going to call that an incomplete ci record so we'll add that into our recommended fields here and we're gonna hit save and then we're gonna go back to the attributes for this and under the added where these are the specific fields that were added by this class these are not the inherited we have this kernel release string here right and we want to ensure that the kernel release is included on every single linux server ci that gets added in so we're going to make this a mandatory field and now not only is this going to be completed in our health metrics included in our health metrics but anywhere where there's a form for a linux server ci class on the platform that will now be a mandatory field and you won't be able to populate or excuse me you won't be able to create the record without it again don't forget there are ways to circumvent that so that's why we have the rules in the health dashboard to ensure that we're we're keeping an eye on that and tracking that so we've done that and now we've we've completed lab 5. um i'll give you guys uh you know a couple of 30 seconds or so in order to finish lab lab five and i'll start prepping for lab six and i'm gonna take a drink of water because i've been talking too much okay so now what we're going to do is we're going to go and talk about um some of those those audit pieces right the compliance and we're gonna show some of those desired state things that we were talking about to ensure that again that the ci is configured the way that we expect it to be configured as an organization and this gives us the capability to to report on some of that and throw some red flags so again we're going to go back to the class manager we're going to open up the hierarchy and this time we're going to look at server okay and this time we're going to look at this particular server rule and we're going to go down to this compliance section under health and we've we've now got this you know list of different servers with these um certification filters that is essentially what groups of servers we want to look at but first we're going to build this a template which basically shows what are we going to check against right so we're going to go ahead and click new on the certification template and the name we're going to give it is running mcafee antivirus no jokes at my terrible typing and spelling while i've got an audience here all servers must run anti virus see there i go software okay and then we're gonna pick the filter again that's to limit it to which specific servers we're looking for and that's kind of interesting uh when you see it in here it says all servers dash two but we're looking for the second of the last filter all servers okay so so now we've done that um so now we're going to go ahead and click submit here ah but if i missed one important part jumping ahead myself so we need to go down to this certification related list conditions and double click in here in order to insert a new row and so what we need is software installed and the name name contains mcafee virus scan okay all right and i always have to double check my spelling all right so we got that so now we'll click update so so now that we've created the certification template now we're going to create an audit rule that uses that certification template in order to build our report so we'll go into audit and we will create a new audit that is going to use that template that we just built out so we will call it verify cathy the template we'll use this lovely search field here running max antivirus okay and again we want to make sure we're looking at the cmdbci server table and we are going to want to create tasks for that so any server that does not meet the audit criteria is going to kick off a task that we can have assigned to specific groups in order to say hey go solve this problem so the assignment type we're going to set to assign to and then we're going to create an unassigned task all right and then of course you know we'll we'll be nice and give it a description here okay so we've got that and now we're going to go ahead and hit submit and it says you can run the audit from here but i like to just make sure it gets saved and then i go back in and run the audit maybe there we go now give it a second to finish loading there okay click run audit all right so it's going through and it's kicking that off so now we've got that completed we can now go in here and we will start to see audit results so you'll see that we have 179 servers that hey you guys not following your compliance properly not running macv antivirus and we've created follow-on tasks for each of those that can then be assigned to the appropriate folks to be able to go and remediate those issues all right so that brings us to the end of lab six where we've talked about how to build out those compliance rules how to set up your audits in order to ensure that all of your cis are meeting the criteria that you've set forth as an organization in order to ensure that it's built the way that you expect it to be built again that can be very very good for folks who have you know actual compliance requirements pci dss those kinds of things so you can trigger some specific warnings for specific things that could be an issue for you so so now what we're going to do um is we're going to go and we're going to just kind of walk through some of the correctness pieces and look at things like staleness and some of those other configurations in lab 7. so we'll jump into that we'll open up this hierarchy again and we're going to look for linux server okay and then from there this is a quick and short lab we're going to go into the correctness section here in health and you'll see here we've got our staleness rule and it by default by default is configured for a 60-day stillness that's out of the box um if you if we wanted to we could configure it here um and make some changes to that we're not going to do that today this is just to show you here's where you can view the sales settings and if you have any questions about that we can change it elsewhere all right let's jump into lab 8 which is our last lab for this section and then we'll talk about some reporting and then we'll jump back into the final lab which is going to be lab 9. so this one's a little bit more involved because we're going to actually build some remediation workflows based on the staleness rule so as ci's become stale we'll build this workflow that we can first autumn first manually trigger and then eventually automatically trigger to ensure that we can build some remediation workflows around those stale ci's so we're going to go into health preferences from this the navigator here right and then over here on the right hand side we're going to look at health metrics and then in this metric drop down we're going to look at staleness okay and from here we right now are not configured to create tasks for these but we're going to change that now so we're going to click this to us to enable that and we're going to have those tasks set to the change management assignee group and then we'll go ahead and click save okay so now as that occurs we'll be able to see these tasks that are going to go ahead and get assigned to the change management group but the next thing that we're going to do is we're going to actually build the remediation workflow that we're going to be working with in order to do the work on those ci's once they're stale so we're going to start by opening up the workflow editor okay and you can see all you know the various workflows that are already here on the platform but we're going to create a new workflow and we're going to just call it remediate steel stale ci and the table is going to be stale ci okay and i'm going to say remediate ci that is stale all right so and then we're going to go ahead and click submit so that's kind of built the shell of the workflow right we now have a start and end and on the right hand side here we're going to click on this core piece right and we're going to look for run script which will be under utilities run script and we're just going to drag it out here all right and at this point um we'll call the script remediate stay lci and we're not going to worry about stage we're going to copy and paste in the script from the pdf and it it always does this to me not quite sure why but this ci update should be on a new line okay so once that's completed uh just double check it make sure that everything's good we're gonna go ahead and hit submit and now we have this capability however the script goes straight from start to end the workflow does which is not quite what we want so we're going to go ahead and click on that line and delete that and then we're going to drag this over to here so it'll go from begin to run script and i'm going to drag this over to end right so now we have the flow so that it will flow all the way through our run script so we'll do that and then we will ensure that it's published so we'll go ahead and click publish so that it'll be available to run on the rest of the platform all right and now that state has changed to published so excellent now we're going to do because this opened in a new tab we can just close this tab which is great and we can go to cmdb remediations all right so this is where you can actually build cmdb remediation rules within the platform for managing these kinds of issues that pop up so we're going to go ahead and click new here and we're going to call this remediate sale ci and task type is going to be stale ci remediation and then we're just going to give it this workflow that we've already built which is going to be remediate stale ci okay and right now we have it set to manual execution so we'll go ahead and we'll click submit on that all right and now that is set but we don't have any jobs that are running to check the health we've configured how those health jobs should be set but they're not actually set to run yet so we have to go and get those kicked off and make sure that they're actually running and can provide data and and give us the ability to trigger some workflows so we're going to go back to the health preference section and this time we're going to click on the scheduled job section and then it says to start off with correctness but it doesn't really matter because we're going to go through and we're going to execute all of them so execute now completeness execute now and compliance i should all i said all of them but i'm not correct um we're only going to do correctness completeness and compliance okay so now what we can do here is let's give us our a way to check the status of those and see how they are progressing so we're going to do cmdb health metric underscore status underscore or dot capital list to open that up into a new tab and then we are going to just just keep refreshing this until all of these in-progress ones show complete okay and actually let's just do this filter out the false records okay so all of our currently active uh processes are now completed so we should have some data now in our cmdb dashboard so we'll go ahead and we'll close this new tab because that opened it in a new tab when you you do list in all caps it opens it out into a new tab handy dandy so we're going to go cmdb view right type cmdb view all right and now we're going to take a look at the cmdb.health dashboard and um it's going to differ slightly from the lab guide however it's roughly accurate and that our health is overall is 58 our completeness is actually quite good our correctness is doing all right um but our compliance is really where we're falling down because in particular um though there's a large number of those servers that are not running antivirus that are failing the audit records that we have set up in order to show where whether or not those cis are configured in the way that we expect them to be configured as an organization um and i do want to just mention that we are going to have another break um after i'm done with this lab um to ensure that everybody has time to sort of catch up a little bit get some of those pieces completed ask some additional questions so i apologize if i'm zipping through this a little too quickly but we'll give you some time to catch up and ask more questions also uh hey let me jump in here mike um if if you are not caught up and uh you haven't are struggling to watch what mike is doing and what you're doing as well we i would recommend that you stop you doing your lab and watch what mike may be doing that way you understand the concept and then go to the labs when we have it at the small break okay good idea okay so so now um what we're going to do we've got all this data in here we we have some great information about the health of our cndb and how it's all working so now what we're going to do is we're going to go and look at in particular some of those stale ci's and the tasks that were created based on our based on our process so um when we click on those stale cis let me go back that seems i seem to have missed something here let's go back to our dashboard okay so when we look at the stale ci's now there we go so now we've got all of these stale ci's when the last time they were evaluated right and then it's going to show um what those individual underlying tasks are that were actually assigned to and build based out of that so we've got this task it was been it's been generated says hey this was not updated in the last 60 days uh and and you can actually look at um the individual ci um that it was assigned to here but we can now click this remediate button it mediates the lci and now it's kicked off so what we can do is now we can open this record for this macbook pro 17-inch and we we can't see it yet so i'm going to go ahead and i'm going to configure this form layout so we can see the field properly but once we've got this configured we should be able to see we should be able to see the field that shows the operational status of that not operating system operational status let's go ahead and add it to the very end there so because this field this ci is now listed as stale we ran the remediation workflow against that that remediation workflow went in and automatically set the operational status to that as non-operational so that way our team can can know to be wary of that information in that because we haven't we haven't discovered it in quite some time and it's likely that it's not operational or the data is dramatically out of date and and not useful so you can now see you know some of the pieces around managing the data that's being put into the cmdb being able to turn on those health inclusion rules configure which classes those health conclusion rules are run against how to build some audits uh and some audit templates in order to check against is the ci configured in a way that meets our organizational requirements also how to configure the staleness and to even build a workflow around some remediation for ci's that are stale and and that same process can be used with almost every state for a ci around generating workflows and assigning tasks to folks in order to remedy remediate common issues this next section that we're going to talk about is it's really going to cover um a lot around the cmdb and and getting inventory and reporting right so again it's great you've ingested a ton of data around um what's uh in you know in your entire technology portfolio um you're managing it with discovery and you're ingesting all of that data using various resources and you're staying on top of the health using the health dashboard but now somebody comes running down to you and says oh my gosh we need to know how many web servers we have in the environment and we need to know what what linux servers they're running on you say i got you covered so that's really where the cmdb reporting comes into play so um the cmdb reporting has this what we call the cmdb query builder which is incredibly powerful to be able to do queries based on what the relationships are within your cmdb what types of cis what various classes they are and then really be able to get down into what those relationships look like and see the whole full stack of visibility in your environment it's a great way to look at things like you know change management and understanding potential impacts of change management and also understanding you know incident and problem management around what those larger impacts are so visibility is actually key and then there's another capability called the cmdb browse feature and and the great thing about that is it actually gives you a really nice kind of one-stop shop for all the information that you might need out of a particular ci and so it's got a ton of different ways to kind of slice and dice the data things like health widgets you know timeline views around what things are occurring when and where lists of incidents and problems and other things me personally i actually really like the cmdb dashboard which is what i'm going to show you next that has a lot of these very similar things so um the cmdb dashboard once you've once you've got a ci record and you're looking at a specific ci record um at the top there you can ordinarily by default it opens to form you can click that dashboard button and it's going to give you a ton of great little widgets around you know the staleness any duplicates a great mapping all of the various relationships that are related to that particular ci and and one of my favorites is that that the timeline of events down there that's highlighted in red which can actually show changes it shows changes to that ci and updates to the data in the ci and if it's done outside of an approved change window it'll actually show that this was an unapproved change and he and it shows you which fields were changed and when so it's a great way for you to look at um some of those capabilities uh and and what the status is and what that kind of like audit trail is on a ci so um that's a lot of great information around the query builder itself but the next thing that we're going to do is we're actually going to dive into a lab walking through the the cmdb query builder kind of peeling apart a little bit how we build one of those queries out and then run it and and talk about how you can kind of build those as a repeatable query that you can be used on a regular basis so to that end i'm going to go ahead and stop sharing this and i'm gonna get back to sharing my lab instance give me one second okay so lab instance here so you can see where we ended off with the ci in the last lab but for this particular lab what we're going to do is we're going to start off by going to and again don't don't forget we're on lab 9 if you're following along in your lab guides we are i'm going to start off by going to the cmdb query builder all right and again this opens in a new tab which is great when we're done with this we can just close it out and go back to the the primary platform and what you'll see is if if there were queries that i knew were going to be running on a regular basis like you know how many microsoft sql instances do we have in the in our environment and what versions are they running and look at the relationships around those if i were going to run that on a regular basis i could save this as a saved query and just continually run it over and again on a regular basis in order to report on that as needed but in this particular case because we don't have any saved queries we're going to go ahead and click this create new button here and we're going to do a cmdb query we don't we're not talking about service mapping today so we're just going to specify a cmdb query so we're going to go and go ahead and enter web servers to my autocomplete because i've done this a few times so web servers we're going to create and now that gives us again an empty canvas similar to what we're seeing in in the workflow creation and you'll notice on the left hand side here there are the cmdb classes that you can utilize and look at but there are also some non seem to be tables that you could potentially look at like you might want to look for all servers that have currently open um you know changes on them or uh with you know anything that's got an instance excuse me an incident open against it those kinds of things we can use that here and then there are also some particular saved service queries that we can look at in this particular case though we're going to start by going to we're going to look for server and you'll know there's multiple of these right so we're going to want to look for the one that's under the hardware tree right hardware computer server this is it here so what we're going to do is we're going to drag that out onto the canvas here okay so we're saying hey we want server one and then now we're gonna look for web server so same thing web server and again that's under infrastructure service so we want to make sure we drag that out here as well and now from here now we need to understand what the relationship is and understand um and and build out the mapping to show what relationship we want more so first we're going to click on this web server one and when we do that it gives us this little box on the right hand side so we're going to click on that and then we're going to click on server 1 on the left hand side here right and so now it draws that relationship in between the two and we want to ensure that we click on this add relationships types here and we want to say runs on runs right so so web the parent is going to be web server one the child is going to be server one we're going to look specifically for first level relationships that are showing the runs on runs type of relationship so now we've got that built out we can see what that map looks like we're going to go ahead and save it because we may want to run this in the future and now we should see no not quite yet now we want to run it oh yes i have to pick a starting node okay and hit run web server one all right so as a result here we now have this web server apache linux den200 and it is running on linux 100 server so we now have a report that shows us here's the web servers we may potentially have more web servers um but in this particular case we just have this one and we can see which server it's running on and we can see those relationships and understand kind of how to report on that how to filter it and how to show there so a very quick very short lab there you can kind of tinker with it more if you'd like because there's those query results open up in a new window you can close that out you can go back into here you can look for specific databases you can look for database servers those kinds of um of infrastructure pieces and really get to the ability to map that down and show a lot of the value around how we can tie things together from a cmdb query perspective i wanted to you know kind of wrap up here today we wanted to share with you some additional resources that you can leverage following this meeting this was really meant to give you an introduction to cmdb best practices but we have plenty of resources aligned with the cmdb as well as the common service model that you can take advantage of that are free of charge one of the first things you want to do is visit our customer success center and inside of this deck here you see on the bottom i have a link to each of these things this customer success center has lots of great resources across servicenow regardless of what topic you're interested in you can find anything here from best practices for implementation of you know up servicenow products to um you know you know on how to create a center of excellence to manage your servicenow environment and really just and just anything you can imagine is really in here we talked earlier in in this course about there being a seem to be fundamentals course this is a what we call a learning path which consists of several different courses um i think it says it's about 12 hours long but you can uh sorry it's 22 hours long but you can finish that in a much shorter period of time some of the same labs that you took today you'll find in this section as well if you wanted a refresher after tomorrow's lab instances expire and that's on now learning which is a a you know where we've transitioned all of our learning courses to next we have a now learning course on the csdm 3.0 fundamentals this course is was just updated for 3.0 uh recently and you know some of the things that it goes into here is what is the service data model but it also includes things like product views which are essentially how each of the servicenow solutions leverages the csdm ricoh had talked about integration hub etl as part of his section today and this is a way to import data from third-party systems into servicenow uh specifically uh into the cmdb the right way we talked about service graph connectors that are certified connectors for that are that are available to you if you have the right subscription model um the integration hub etl is another way of doing it think of it as a build versus buy scenario where you could use integration hub etl for we have a course and a lab available for you on through our knowledge 20 system we we created a a configuration management and cmdb for dummies ebook um you did as part of your registration gift you'll be receiving a copy of this um i have a copy here um this will be sent to your address so when you get the email you'll be sent to a link to register for your address right so don't worry about if your service now registered address is your work you'll you can put in your home address as well uh the csdm uh we have a forum on our servicenow community right so the community for servicenow in general is a way for it's a it's a curated knowledge base of customers and partners asking questions and people answering questions whether and they could be smes from servicenow partners or other customers you know answering those questions we have a specific common service data model forum where you can get the white paper from as well as look through the content to see what kind of questions were asked as well as ask your own questions we oftentimes are asked as i see is how do i model out this specific scenario right well this is a great resource to ask that as well within the community we have additional best practice resources cmd cmdb 101 it's a best practice series as well as best practice series if you're using discovery and service mapping we recently conducted over the summer we connected our knowledge conference virtually this year and we have a big on-demand library uh for it operations management solutions um i the cmdb is is where is where um if you if you just search for the word seem to be you'll find it there but you'll find a lot of things from customers from servicenow ourselves about how to bet you know create you know seem to be best practices one of the things we just released recently with paris is is a set of dashboards you can download from the servicenow store free of charge these will these are what we call data foundation dashboards the cmdb one looks at things like how many ci's were processed through the ire it looks at other health metrics as well like around duplicates for example right it's a think of it as a condensed version of the health metrics but also including some other areas that will help you understand the health of your cmdb and the csdm side of the house looks at if you take the csdm course you'll notice that the course walks you through a crawl walk run fly approach this dashboard has four tabs on it so that you could see how your data is modeled in this in the seem to be aligning with the cstn methodology and finally uh we we also wanted to mention to you some of the service offerings that are available to you these are things where you would reach out to your servicenow account team to discuss further one would be a cmdb health scan so that looks at specifically scanning your cmdb for any customizations you've made and you'll see recommendations on how to you know fix those i tune up your cmdb engagement it's a very very low cost engagement that you could you know buy from our from the servicenow store as well as certainly working with one of our great partners uh for them to come in and do a seem to be assessment and get and put a plan in place for you get to get back on the right track the key takeaways from today um we talked about this um in multiple sections of today's workshop right the critical few versus the trivial many only put data in the cmdb that you're going to manage data that is going to drive value for an outcome for your business right don't boil the ocean don't just throw a bunch of data in there that you don't need um automate the cmdb population as much as possible right ninety percent of the attributes in your seem to be should be automated uh you know they should be discovered through some type of discovery tool right because you want as real as a as near real-time updates as possible from what exists in your environment and then finally we talked just now about managing the health right you want to make sure that your cmdb data remains accurate and trustworthy and one of the best ways to do that is to look at um at the health right so what mike went through with you know managing the cmdb health right you want to make sure that you turn that on that's core platform functionality that even if you're not using servicenow discovery you can start to leverage and manage your cmdb health and with that we wanted to really say a huge thank you uh for for coming today i know it was a huge chunk of time today we hope you found this valuable one of the things we also wanted to mention is we are looking to revise this workshop for 2021 um so start to look for invites to a you know those sessions starting next year right it'll be a revised workshop you know focusing on more of our you know latest technologies as we continue to evolve right but also learning from from you know best practices from our customers as well as from industry best practices and letting you all know about that uh with that said we know we have about one minute left i wanted to thank you guys uh and once again um you you will be receiving an email to register uh your address to you know to um get this book as well as some other uh swag you know coming your way we'd love to do this in person but you know these days we have to do this remotely so we cannot wait to get back in front of you guys again and talk to you in person and have a great conversation about the same db so with that said thank you everyone and we will see you soon
https://www.youtube.com/watch?v=J7MJb6yJwiI