Creating a CMDB integration tutorial using IH-ETL : Part 3 of 5
hello welcome to part three of building a cmdb integration my name is Nick Ryan and today we're actually going to start the actual building of this integration so hopefully you were able to get through what was outlined in part two and come up with the data modeling and mapping from The Source system that you're trying to integrate with into the cmdb data model so when we get started you're going to need to make sure that your instance has a few applications and plugins enabled in it first will be integration Commons you're going to need the integration Hub ETL you're going to need in the data stream actions that come with integration Hub so the data stream one you may or may not use but it's good to have it make sure that it's enabled and you're going to need app engine Studio this is what's going to be actually the first step that we're going to do today is using App engine Studio so this slide is really representing what we're going to capture in our application or our integration and we're going to start with creating a scoped application in the app engine studio and that's going to capture a number of these components so we're going to start down here with defining some integration Hub actions those are going to feed into our data source and those data sources are then going to feed into our integration Hub ETL definitions where we do some of the Transformations the mapping set up relationships and so on so we want to capture all of these things in a scoped application you could do this in an update set if you want and to be sure I prefer doing a scoped app so that's the way we're going to go about doing it and the reason for that is the portability and the and the ability to actually commit changes into um a source control system like GitHub so here we go there's a couple steps that we're going to do today so this is going to be pretty quick in terms of just creating the scoped app and then the first thing we're going to need to do before we get started on actually building some of the data sources and ETL components is to come up with a discovery Source specific to this integration the scoped app is going to be created within app engine Studio the IDE that will actually start that process with isn't very conducive to define the rest of the components so we're not going to really work within that IDE but we'll go there initially to create the scope tab and when it comes to your Discovery Source you'll you might notice a number of the service graph connectors start with SG Dash you know the name of the technology SG AWS or something like that because this is just a potentially a an integration that you're building for your own company you might start with the prefix of your company name followed by the technology we're not going to go through this table structure here but it is important to note and there may be a a bonus video to come later that covers some of these Advanced features but there when you install the integration Commons application there is a series of tables that become available and these are actually used by service graph connectors to define basically facilitate multiple instances of the connection so in in our case where we're working with the Kong API Gateway maybe I've got two or three or four gateways in my company and I need to have different integration to each of them well unless we adopt some of these Concepts to to use these tables it's really difficult to connect to more than one and some of that we'll see as we start to get into creating the integration Hub actions and the data sources all right so let's go ahead and hop into our instance so this cmdb Integrations dashboard doesn't have anything in it there's no applications here and so when we're done we'll this will actually start populating um with things after we've completed our integration and we'll be able to see it show up here but to start out let's go to actually we can just look for studio and here if you've enabled this and it's active on on your instance you should be able to open the app engine Studio so there's a couple things you can do once you're into the app engine Studio you can import so if you've already created an app and you've saved it in a in like GitHub or some Source repository that we support you can import that into this instance through this mechanism but we're starting from scratch so let's go ahead and create our app I'm going to call this now call Gateway can you I'm going to leave these roles as the defaults you can set up specific user or user roles as part of your scoped app if you want to take the defaults here it won't take too long and then this is the IDE that I mentioned briefly that we're really not going to stay working within here all at this point we've created our scoped app and that's really the container in which we want to to begin working I'm not going to set up the source control now but what you could do if you want at this point you can link it and if you go create a repository in your GitHub account you can specify that here these branches and you know some folks say to just use the default here but you might also want to use more commonly known mechanisms like or naming conventions like uses create a master Branch for this the credential is really can be confusing but um I've found that the what works with GitHub at least is to create a basic off credential type uh the username will be what you log into your GitHub account with or your email address for it and then you have to go create a developer token and then so you put that in as the password being the developer token and then click the link to Source control and you should have it set up there so that after you know the day's worth of work you can come back in here and and commit your changes to Source control but I said we're not going to work in this IDE so I'm going to go back into this regular View and if I refresh this page this little the icon up here that looks like a globe of sorts is going to represent the scope that we're working Within and so now you see that it's actually red and it's saying if you hover over it it's telling us now we're working in in that now Kong GW application scope so this is where you want to make sure that you're capturing things within that scope so that they're automatically saved for you in um in this application container so we've done the first part we've created that uh scoped app and so the the next part that we want to do is go and register our Discovery source and so to do that there's two things one is we really are going to want to um have this be portable so we're probably going to create this application in like a Dev environment right and then maybe move it to test and then eventually production and so we don't want to have to come in and create this discovery Source every time manually so what we can do is use a fixed script and if you're not familiar with fixed scripts what they do is like each time an application is installed that fixed script will run just the first time that it's installed so very useful for something like this where we want it to run and register our Discovery source so I'll click new here you see again the application scope is not Global it's our now Kong GW Discovery source which is what we want and so here I'm just going to say add Discovery source for bomb Gateway integration maybe the name's not long enough and so there's some utilities that are also in the integration Commons application that come with this so I'm going to say my source name is going to be now dash Kong GW it doesn't have to match your application name but that just happens to be what I'm going to use and then we can leverage this cmdb data source util and add this data source now if you're a partner and you're creating a service graph connector that will be officially certified in the service graph connector program you're going to want to also include these two lines which add it to the licensing calculations as well for something like itom licensing but if you're just your own organization you won't want to do that because you don't get the dings in terms of Licensing for your own Integrations that you create so I'm going to go ahead and save this so here's our first thing that we've added into our scoped application now at this point this actually hasn't run so we can come in here and see I've conveniently saved a quick link to the Discovery sources but these are all the out of the box Discovery sources and we can see that at this point we don't have our Kong or now dash Kong Gateway in here so to do this we can actually go to background scripts and run that same little piece of code here you might get some strange errors initially but um we'll check and see if it actually got updated so it goes ahead and says it created some cross scope Privileges and that's effectively done automatically in this case because we um we're in as an admin here so let's go back to our Discovery choices and sure enough here now is our Discovery choice so in the next well not the next session but the last section section five when we start to Define our etls uh this will be one of the first things that we have to Define and so that's going to be it for today in our next section we're actually going to dig in and do a lot more in terms of interacting with our source system so until then I hope you're able to get your app set up and your Discovery Source defined thank you
https://www.youtube.com/watch?v=_4fVx5_tsiY