logo

NJP

Creating a CMDB integration tutorial using IH-ETL : Part 1 of 5

Import · Sep 05, 2023 · video

hello my name is Nick Ryan I'm a product manager and the data foundations business unit at servicenow and this is going to be the first in a multi-part series of short videos on how to build a cmdb integration and this process is going to be very similar to how servicenow goes about building service graph connectors so if you've ever been curious about how to build a service graph connector hopefully this series will also help you on your journey to building out those Integrations as well in this series we're actually going to take an example of building and integration into Kong's API Gateway and so we're going to use that as our example as we walk through so let's get to it so what are we going to do in this uh five part series that we're about to embark on well very simply we're going to build a cmdb integration but how are we going to do that so these five high level areas are what we will cover there will be a short video on each one and we will walk through the details uh that are behind each one of these so let's get to it part one we're going to do the source analysis process so what is the source analysis uh it's pretty self-explanatory hopefully in that we're going to analyze the source technology that we are going to build the integration with these few bullet points here about understanding protocols authentication and payloads are really the output of that process as we go through it though really what we're doing is becoming familiar with that technology maybe you're a subject matter expert in that technology or maybe your company has a subject matter in that technology but if they don't and you're still tasked with building this integration what are the things that you need to know so first around the protocols it's going to be important to know what we're dealing with from a communication perspective so um do I just have a file like an Excel spreadsheet that I need to load in or is there a source that I can repeatedly query and get updated information so it's important that you understand all the possibilities in terms of how to communicate with that Source system second once you know what type of protocol that system speaks then you need to also understand all right how do I authenticate into that environment maybe I just need a username and password maybe I have to set up certificates obviously there's a lot of options when it comes to authentication so it's important to understand how your company has implemented the authentication requirements for that particular technology and third it's important to understand the output of the various data sets that you need to get back from that Source technology and this is important for what will be in part two when we get to analyzing the mapping and how to map this data into the cmdb so whether you're you've got a postman environment or just doing some command line jdbc queries however you can go about understanding that response data it will help us as we move into the second step of this process so let's take the example that we're going to use throughout in the Kong API Gateway so here if I navigate to the Kong documentation site they have a multiple products but we're going to focus on Kong Gateway for now and so I go to the overview page and start to explore and I can quickly see all right well I can understand how Kong Works what are the key Concepts one of probably the most important pieces of information that I'll be using is the API reference so right away I can start to go through understand a bit about Kong but one of the most important things is you would read down through all of this documentation as we get to it is here with the Kong API Gateway or Kong admin API sorry this calling admin API is going to be our mechanism for the integration point so this is what we're going to use to get the data out of column Gateway and into service now and so um I can go to that directly now it opens up a long list of all the endpoints that I can use but one one of the important pieces of information remember the protocol so this is obviously going to be a rest API integration but here you can start to see all right default ports for the API is 8001 but if you want to secure it with https then it will be using 844. and beyond that we can also see how you your company may have secured uh the admin API because it's a very powerful API and not Wide Open Access is desirable so your organization would probably have it locked down in different ways and so you can see this extra link here which I already have open so it talks about how what are some of the options for securing this so it helps you get familiar with possible implementations that you may be working with to know what that authentication requirement is for getting into it so we've got the protocol we've got the authentication mechanism and now we need to just really understand what the apis are about before we do that though the key concepts are going to be important as we get into this because what we're really after with this integration is we want to populate the apis that this Gateway serves and we want to populate those in service now and pick your favorite workflow that may use this type of data but it might be anything from understanding vulnerabilities on apis to being able to perform change management on apis so whatever it might be the point is we're trying to get the apis into servicenow so in out of these key Concepts let's just click on the first one of services the services are going to represent a couple of things in terms of our data mapping but these are the primary way that apis are represented in Kong Gateway so you can read through the documentation see that that's the case but this is obviously going to be our key area that we focus on in terms of saying all right what are my apis and then how do I map them so you can see there's related links on how to request data about it from the admin API but before we do that I'm going to keep going through the key Concepts so there's this our services next will be our routes let's see what routes are all about the routes uh if you redo this they appear to be really the front end parts that clients interact with that then talks to the service that's the back end API part of the the data flow so routes are really kind of a front-end client facing URL the services are the back end fulfilling aspect of the API and so then there's other concepts of upstreams so let's see what that is real quick upstreams um really are a load balancer at the end of the day so under the hood um Gateway uses an nginx load balancer and so you can see here that the Upstream is used for load balancing incoming requests and we'll dive into that more as we start to build this out and the last one and the key concepts are plugins so plugins in different Gateway Technologies may be different things and but most commonly they're enforcing a policy of some sort on a particular part of the Gateway whether it's on the API itself maybe it's across everything in the Gateway but it may be uh authentication requirements like a certain API can use basic off whereas a different API may require oauth there might be rate limiting that you want to implement on apis and so on but that's really what the plugins are it might be called a policy or something different in in other systems so now we've got a general understanding that the services are really our back-end API the routes are the client-facing front ends we've got a load balancer option and we've got different plugins and policies that we can implement so I'm going to go down and just jump into the admin API itself so here takes us back to this overview I'm going to go to the first one information route so it'll start to let us understand what the endpoint is that we're going to use and then to that part about understanding the output here we start to get some sample payloads so without even having to go and set up a whole environment we can already begin to understand some of the output here and and get some some of that initial insights about it and so we can see there's other options for understanding what uh the Kong Gateway has in terms of data we can query but I'm gonna skip past that and let's go to what we saw and the key Concepts around services so we can again start to see what we what we can query here and start to get an idea of some of the data so we can get the the name of the API we can get the protocols that it speaks maybe some hosts that it's on ports the path names and so on so important information there and really for the purposes of our integration we're just worried about getting data so doing things like adding services and other we don't need to worry about because we're not aiming to manage this Gateway we just want to get data from it to use within servicenow likewise I can look at the route the route data and again see that it's really getting data from the slash routes path and so here I can again see you some of the initial data points that we'll use in our mapping so keep exploring hopefully your technology you're integrating with has similar useful documentation for understanding it again if you're not a subject matter expert on the technology look for you know some of the free learning options like in the case of Kong they have a an academy that has some really great classes that are you know they're just self-paced but have Labs that walk you through the technology to get familiar with so again look for opportunities to learn about the technology that you're interacting with and hopefully it gives you a better feel for what your integration is going to look like and so with that that concludes the first parts of doing the source analysis take some time get familiar with what you might be looking to integrate with collect some of these data points and then you'll be ready to jump in for part two of this series on doing the mapping and the data modeling thank you

View original source

https://www.youtube.com/watch?v=smS2ldZTMks