You are using the system cron
to trigger a function hooked into the AJAX API, not, as your title reads, using “admin-ajax.php
to run a real cron
job”. You are doing exactly the opposite of what you wrote in the title (I’d advise editing that).
Yes, that is perfectly fine. I have advised using the same technique in fact. All you are doing is making a request to the server on an accurately timed schedule, instead of waiting for a random request from the web. It is no different from any other request to the server.