When we started working with Viya a few years ago, we felt that a simple and standard tool to stage the servers in preparation for the Viya deployment would be a good thing to have.
Since Ansible was the tool used to deploy Viya, it made a lot of sense to write this "tool to stage the server(s)" as an Ansible playbook as well.
We then quickly realized that if we found it to be a time-saver and a human-error-avoider(tm), then it was likely that our customers would too.
That is the how and why of how VIRK came to be.
However, in our excitement to share our work with others, we did not necessarily think about all the longer-term implications of our design choices, and just made it available. But to be honest, we were not sure if it actually would be useful to others or not. 😊
We've now decided that given the traction that VIRK has had with our colleagues and customers, it's time for VIRK to grow up, and get a fresh new look.
That look starts with, first and foremost, a new name: Viya-ARK.
The URL for it is therefore: https://github.com/sassoftware/viya-ark
Officially, I am required by law to inform you that ARK stands for Administration Resource Kit.
Un-officially, I think of it more as the Awesome Resource Kit. (You did not hear it from me and I will deny any knowledge of this if questioned. This post will self-destruct within 10 seconds of you reading it.)
I know you are busy people, so I’ll give you what you need to know right here:
If you’ve read this far, then you know the most important points!
If you are still reading, then you probably have a few more questions. I'll try to answer them below.
If you have used VIRK before, you will see that it is quite similar.
I will write a longer "howto" guide later, but the steps below should help you get started.
Assuming that you have an Ansible Controller ready, and want to check your environment for the various pre-requisites, you can run the following commands:
## go to your home directory
cd ~
## install git and wget
sudo yum install git wget -y
## clone the latest code from github
git clone https://github.com/sassoftware/viya-ark.git
## Move into the the pre-install playbook folder
cd ~/viya-ark/playbooks/pre-install-playbook/
## execute the pre-req playbook, in check mode
ansible-playbook -i ./pre-install.inventory.ini viya_pre_install_playbook.yml --check
Of course, as a default, this will only run against the Ansible Controller itself, which is not necessarily what you want. You can start editing the pre-install.inventory.ini file, to add more of your future Viya servers.
In Viya-ARK, we are using the concept of "releases". (In my opinion, just another way of saying "version"). If you want to see which releases are available, you should head to the Releases page on Github. If you are curious, you can read about the versioning scheme we use, or see what changes occurred at which release
If you followed the steps above, you have git cloned the master branch, which essentially gives you the latest and greatest. If you want to know which version that is, you simply have to open up the file called CHANGELOG.md and the version at the top will be your current version:
cd ~/viya-ark
head -n 5 CHANGELOG.md
As of today, I get the following:
# Changelog for SAS Viya-ARK
<!-- LATEST RELEASE START -->
## Viya34-ark-1.1 - April 18, 2019
As you can see, the version I am using is Viya34-ark-1.1.
The best way to get support is to open a github issue. While you can open a ticket with SAS Tech Support (for example, if you don't have a Github account), be aware that the Support of Viya-ARK is not the same as the support for more traditional SAS Products: your questions and issues will be forwarded to the developers who have worked on Viya-ARK. Remember to include the Viya-ARK version number if ever you open a Gihub issue.
Assuming that you have a deployed a Viya environment that spans multiple machines, you will probably want to check out the Multi-Machine Services Utility. Here are the high level steps:
## Move Viya-ARK into the SAS Viya Playbook folder:
mv ~/viya-ark ~/sas_viya_playbook/
## go to the SAS Viya Playbook folder:
cd ~/sas_viya_playbook/
## Start your Viya environment
ansible-playbook ./viya-ark/playbooks/viya-mmsu/viya-services-start.yml
Have you ever wished you had a summarized report of your Viya Environment topology? No? Well, we are granting that wish anyways! You're welcome.
This is your reward for reading this far down in a pretty lengthy and technical post. Tell your friends!
First, let's look at how to run the report:
## go to the SAS Viya Playbook folder:
cd ~/sas_viya_playbook/
## Execute the Viya Deployment Report:
ansible-playbook ./viya-ark/playbooks/deployment-report/viya-deployment-report.yml
Ok, fine, but what does that do? Well, it will generate a .html and a .yml file in the Viya Playbook directory. So that you can see what that result looks like, I'm attaching the results I obtained in one of my lab environments. Scroll to the bottom of this post and download the file called "reports.zip". One you have that, check out the .html file in it and how much information it contains!
I hope this post was useful to you. Hopefully, it will make your transition from VIRK to Viya-ARK smooth and painless.
If you have further questions comment, feel free to post below. I'll do my best to answer in a timely manner. But for maximum visibility, you probably want to use your Github account and create an Issue in the Viya-ARK project.
Hi,
Thanks for this great post. It's good to see that there's an option to specify an alternate location for the hotfix data with the hotfix_url= option, but does that need to be an http(s) url or can a file url be specified if the data is downloaded locally from the ftp site?
I tried doing something like this and it didn't work
ansible-playbook viya-ark/playbooks/deployment-report/viya-deployment-report.yml
-e "hotfix_url=file:///home/sas/ftp.sas.com/techsup/download/hotfix/HF2/util01/Viya/data/"
Thanks,
Andy
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
Data Literacy is for all, even absolute beginners. Jump on board with this free e-learning and boost your career prospects.