- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hi experts:
I am following this article:
https://blogs.sas.com/content/sgf/2019/09/19/using-python-to-run-jobs-in-your-sas-grid/
I was able to follow all steps but I'm don't know the value of IOM Host (and what is it for?)
Is there any code way to get that host and port value? (for eg., run a proc iomhost?)
I've tried to follow other articles but they already know their host values. It's difficult to get support from admin since I am more a SAS-user but doing things proactively so sorry in advance.
Also, if it's worth I have SAS Guide, I've read that it's possible to use COM instead of IOM? I am able to run list types:
Best regards
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Ok, just had to try SMC to see where the info is. First, it looked like you have 3 app servers (like you said).
SASApp, SASAppVA, SASAppCS. If you expand those, you should see if they have Workspace servers defined on them. The Workspace server definition will show what port it's configured for. Use that for the IOMPORT.
Then look at the Object Spawners that are defined and you see the host(s) they run on; can be more than 1 and you can provide a list of them for IOMHOST (again see the saspy doc - Configuration for IOM). What you need to do is right-click on each object spawner and select properties. Then click the Server tab in the properties window and that shows which servers it spawns; this is where you match up the correct object spawner for the Workspace server you want to connect to. You can create a configuration for each one, if you want to be able to connect to all of them, or just whichever one you want.
Hopefully this all makes sense and you see this info in your SMC.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Do you have access to SAS Management Console as all of the SAS server and port definitions are available in that tool? Ask your SAS administrator if you don't have it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
You can use proc iomoperate as described in this section of the doc to query for the Object Spawner host names (IOMHOST) and the Workspace server ports (IOMPORT) for your configuration. https://sassoftware.github.io/saspy/advanced-topics.html#using-proc-iomoperate-to-find-object-spawne...
I would use the IOM access method, and Not the COM access method; they both require these values anyway, to know where SAS is that they are trying to connect to. But IOM is the fully supported and fully functional access method.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for answer. I've tried to follow this tutorial. Context: We have 3 AppServer, one of them is Grid. I connect to SAS Server (remote server) through an Azure Virtual Machine using SAS Guide (local client), and the machine name it's something like CTXDXXX.XXXXcloud.local.
According to the tutorial, I replaced the name but with no luck (timeout error).
I also tried to use the host name we use to connect through SAS Guide but as the logs says the procedure expects the IOM host name.
ERROR: The client has connected to a SAS Metadata Server (v1.0) when it intended to connect to a SAS Object Spawner. ERROR: A connection to the IOM Server cannot be established.
By reading the docs, I understand a little more about Object Spawner and see that in my company we have more than one. I have access to SAS Management Console. Is it possible to find the IOM host name in this tool?
Best regards,
Javier
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Well, the proc iomoperate attempts you show aren't what is in the doc for this. You would need to submit the code in the doc. But, having access to SMC is better; same info (it's the metadata in the metadata server), but this is a nicer GUI that you can see the information in. So yes, look at the object spawners and workspace servers for the host names and port numbers.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Ok, just had to try SMC to see where the info is. First, it looked like you have 3 app servers (like you said).
SASApp, SASAppVA, SASAppCS. If you expand those, you should see if they have Workspace servers defined on them. The Workspace server definition will show what port it's configured for. Use that for the IOMPORT.
Then look at the Object Spawners that are defined and you see the host(s) they run on; can be more than 1 and you can provide a list of them for IOMHOST (again see the saspy doc - Configuration for IOM). What you need to do is right-click on each object spawner and select properties. Then click the Server tab in the properties window and that shows which servers it spawns; this is where you match up the correct object spawner for the Workspace server you want to connect to. You can create a configuration for each one, if you want to be able to connect to all of them, or just whichever one you want.
Hopefully this all makes sense and you see this info in your SMC.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
UPDATE
The IOM host was right in the Management Console. SASPy is working. Thank you thank you @sastpw .
Hi:
According to Management Console, my IOM host is
and according to SAS Guide the value is the same
I tried this alternative (Example 2: CONNECT Example Using Credentials) due to the % character in my pass but I got another error message:
The client has connected to a SAS Workspace Server when it intented to connect to a SAS Object Spawner
The Workspace server definition will show what port it's configured for. Use that for the IOMPORT.
According to the image, the port is 8591.
Sorry if some prints are irrelevant, it's just these spawns server are difficult to understand for me.
Best regards,
Javier
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I'm not completely sure I understand. But, you do show the host and port you would need to configure SASPy to connect to that SASAppCS - Workspace Server. You showed that the Object Spawner 2 launches that workspace server, and that the object spawner is on host 'plnsascrep01.datalake.local' (If I can read that picture right); it's the one from the pic you posted. And, the workspace server is on the default port of 8591.
So just use those for the values in your your sascfg_personal.py configuration and try to connect with SASPy. Can you get into python and try to connect? Can you show your config file and the code you submit and the output it produces?
iomhost = plnsascrep01.datalake.local
iomport = 8591
Thanks,
Tom
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Great! It's easy when you know how to navigate the metadata, but complicated to tell someone how 🙂
Also, you can put your credentials in an authinfo file so that you won't get prompted and have to enter them each time you connect. See that here: https://sassoftware.github.io/saspy/configuration.html#the-authinfo-file-authinfo-on-windows
Glad you're up and running!
Tom