I am working on trying to automate some configuration, and as part of that we need to add an ODBC DSN through a script. The driver I'm trying to use is the Cloudera Impala ODBC Connector, downloaded from here. All of the machines this will run on will run Windows, most of them Windows 8.1 or 10. I've tested everything below on Windows 7 (where possible) and Windows 10, with the same results. I can create a DSN on this machine manually, so the driver seems to be installed correctly. I have also tried all of these with both user DSNs and system DSNs with no luck.
According to here, there are three ways to do this. The first is messing with the registry directly, which I'd like to avoid if possible.
The second is using odbcconf. The issue is, when I run the command below on both Windows 7 and Windows 10, it comes up with a configuration window for ODBC Administrator, but none of the values I specified are filled in. If I create a DSN for SQL Server, this does work, however, so it seems to be driver specific. I've double checked that I'm setting things right, but not even the name is getting set. See screenshot below for what it looks like.
odbcconf CONFIGSYSDSN "Cloudera ODBC Driver for Impala" "DSN=Testing|Server=server"
Screenshot of Window Which Opens
The third is to use a Powershell CmdLet, Add-OdbcDsn. When I run the following command for either SQL Server or Cloudera Impala, it just hangs, not returning even after 10 minutes. Powershell's resource usage is essentially 0, and I'm not seeing any activity on the system. No DSN shows up in ODBC Administrator.
Add-OdbcDsn -Name "testing" -Driver "SQL Server" -DsnType "System"
Any ideas on how either of these can be resolved so I can move forward?