Does your company transfer files across local and remote servers all day long? Do you maintain scripts to manage those file transfers? Automate Schedule makes it easy to automate this process.

Simply define your FTP servers, and you're ready to start scheduling! Use our built-in file transfer function to manage secure FTP transfers and execute them based on other server events. In less than 15 minutes, we'll show you how to:

  • Define File Transfer Systems
  • Schedule a job to run the transfer command
  • Make that job dependent on receiving a new file



Welcome to today's Tip Clip on how Skybot Scheduler can help you make file transfers easy in your IT department. My name is Pat Cameron. I'm the Director of Automation Technology here at Skybotîhappy to be with you today. And it seems like every customer that I talk to is managing file transfers somehow. They're getting files from customers, sending files to them, from and to vendors and regulators sometimes, as well as managing those file transfers within their organization. So let's see how we can help automate those file transfers as well as include security and auditing for those file transfers.

Overview of Skybot Scheduler

Quick overview of what Skybot Scheduler is. Skybot Scheduler is an enterprise scheduler that you can use in your Windows, Unix, and Linux environment. You install an enterprise scheduler which is kind of the hub or the central console that is used for managing all of your servers. The enterprise server then communicates with your Windows serversîthere's an agent software that's installed on those Windows servers, or agents, HP-Unix or Linux servers. And that then allows clear communications between the central server and all of the different agents.

Let's take a look at how file transfers are supported by Skybot. Skybot supports three different protocols for FTP files, a file transfer, just plain old FTP, secure FTP that uses secure sockets and then also secure FTP using a secure shell. So if your file transfers need to be encrypted, we can also support that as well and then we'll store the key for you.

In Skybot Scheduler, you define those systems that you're going to be using FTP on. So we define the type of protocol, the remote system name, and these FTP servers can be anywhere in the world. If necessary, we also will define the user, the password, and then the port that we will be using for those file transfers. And our passwords are always stored encrypted. So you don't have to worry about breaking any of your security rules.

So here's what you would do in order to set up a file transfer within Skybot. We would, again, define that FTP system and then we could take and create a Skybot job that would either push or pull that file to or from the agent to the remote system. And the Skybot job can be scheduled any time that you need to have that file transferred. It can also be reactive to another process. So you can set up a dependent job stream so that as soon as one job finishes on your system you can trigger that transfer to occur. Or you can use that file transfer as a prerequisite: as soon as it completes, you can trigger another process. So it's really easy to set up dependent job streams using Skybot Scheduler.

I'm going to go online and we're going to take a look at how you can set up those FTP systems. We'll take a look at the command line we use in Skybot for actually running the file transfer and then we'll take a look at the job log where we have great information as far as exactly what occurred with the transfer and the security that's involved.

Setting Up FTP Systems in Skybot Scheduler

So this is our Skybot dashboard. This kind of gives you a quick overview or a snapshot of all the servers in your system and how they are running and how those Skybot jobs are running. I'm going to go to our scheduling object. So this is where you would schedule jobs et cetera and we have a number of different scheduling objects that you would set up to assist you with your automation. We're going to take a look at the file transfer system. There's a number of them out there, so this is one of our test systems, so we've got lots of different servers that we play with. So I'm going to bring up our FTP support. So this is an FTP server that we use with our customers. They send in files to us and we can put files on a server that they can pick up. It's just a straight FTP server. So when you define the FTP server, again, you define the protocol that you're going to be using. This is the remote system name and thid can either be the IP address or the system's name. This is the user that signs on. To complete that file transfer, again we start the password encrypted and we also define the port that we're going to be using for those file transfers.

Got another one out there, let's see if it's set up a little differently. This is one of my other AIX systems that's got an FTP server running on it. Again, this is just straight FTP. If you were using secure FTP, again, you would set up to accept an unknown host and the first time that you would run a transfer you would do that and then we will store that key on a directory on the server for you so going forward you don't have to set that up again.

So if we take a look at one of these servers... I'm going to right click on it and it will show us what jobs are using these servers. And I've got five jobs that are set up out there using this server. So I'm going to take a look at my FTP example. This is how you set up a job in Skybot. So we give the job a name and we tell it the server. So this is a local agent server. This job is on schedule, I just run it when I want to play with it. Again we set up an environment to log in to that server to actually run the job. And if we take a look at the command that it's running, when you create a Skybot job you've got a number of different options that you can select for what process you want to execute. So you can execute just a shell script or some command that you're running, an executable, but one of the options you see here is the file transfer. So I'm going to prompt the file transfer that I've got set up.

So the first option here is select the server. So this is the server that I'm going to either push or pull a file from. Am I going to push or pull it? And then this is going to be the file name on the remote system. So I'm pulling from the remote system. So on my FTP server, I've got a file out there called thisisafile and I am pulling it down to my agent, down to my local system. When I'm doing that file transfer I change the name of the file and I also have a variable included in my process that's going to append today's date onto the end of that file. Options for replacing an existing file, and I go ahead and overwrite that every day and then the transfer type that I want to perform.

So you don't have to do any scripting. You just set that up and you let it run.

Running a File Transfer

I will go ahead and run this file transfer. So here's my FTP example, I'm going to right click on it and I'm going to go ahead and run this job right now. We've got a number of options that you can use when you run a job outside of its schedule. And then we'll take a look at the history. So you can see here that the job just completed. Now normally this job runs every day and it's reactive to some other processes. But we're tracking exactly how that job is running and you can see now that a user ran that file transfer. So here's the information and the detail about that transfer and it says that this job was started by me. So again, we're going to keep track of when those file transfers are running and who exactly is doing that.

So if we take a look at the job log... Here's a log that's created then when we run those file transfers and what we track is name of the job, the agent that that job is running on, and then we start the process by signing on and I've signed on with my user. And you can see here that that password is encrypted so it's not going to display on any of the output files or on the job log. Couple of things as we sign on: change directory, this is my date variable that I've got included in this job. So it's date.var. That's the password et cetera and then this is the command that is actually running. So in the background this is a Windows system so we've got a filetransfer.vad and this are the actually parameters that are run under the covers. So again we track- here's our user that's logged in, that's part of our FTP system. Here's our FTP system and it says that we're connected and we're setting its binary. And we're downloading. So this is a file to my local system. So this is the file that is out on the FTP system and I'm bringing it down to my local system and adding that date parm on the back.

And if we complete with a zero, that's a normal completion. If we did have some kind of an issue, our job would have failed, and we do have different notification options that you can use if that failure occurs.

Now as you can see, this job is also reactive, so let's see how we can use that... So if I take a look at the job here I can set up a prerequisite. So in my example that I've got, I've got a couple of jobs that need to complete: I've got this month end job that needs to complete and I've got an agent event. Agent events are monitoring for files to arrive or files to change, and then we're using those events to go ahead and trigger a Skybot job to go ahead and run. So it's very easy to use those file transfer jobs as our reaction to some other process on your system. One of the other ones that I have then is I've got this FTP to AIX, and this job... I think this one pushes out to the server so again, my agent is a Windows system, and this command is set up just a little bit differently. So the file transfer system that I have is user that's one of our AIX systems. So now what I'm doing is I'm pushing from my Windows out to my AIX system. And again, I have the same options for how I want that to occur. And then the other thing that I've done... This job doesn't have any prerequisites but I think it might be a prerequisite to something. If we take a look at where used... Oh, nobody's using this. So this job just runs whenever it runs.

So that's kind of the quick and easy way to set up file transfers with Skybot Scheduler.

Set up your FTP server once and you can use it many times. Secure FTP is supported so if you need to encrypt your files as they're going across, we absolutely can do that. And you don't need to write any shell scripts or any .bat files to perform those FTPs.

Thank you for joining us today. If you have any questions, I will be here for a few minutes, and I'll be happy to answer them, you can send me a chat message over on the right hand side of the screen with any of your questions. If you'd like to download a trial of Skybot, we have free 30-day trials available on our website. Also if you have any questions after this, you certainly can email me with those. So thank you very much for joining me today, and I hope to see you next time.

Still have questions? We can help. Submit a case to Technical Support.

Last Modified On: October 24, 2019