This question came up in conversation recently, I was not entirely sure of the context, was it
- Im old ( well, retired from full time work), have grey hair (not much hair) and a grey beard
- Ive worked with MQ since it started
- I know quite a lot about quite a lot (but the opposite is true, there is so much I do not know about so many things in MQ)
- I can make things disappear – that pint of beer – see after half an hour it has gone!
- Im not afraid of going into strange places ( such as going from z/OS into linux)
If you want to be a wizard, here are some thoughts on how to get there.
GUIs are good in some situations
For example
- One-of requests
- for low skilled people
- people with lots of time
My approach is
- first time – use the GUI to understand the process
- second time – use the GUI to understand the input
- third time – automate it – perhaps set up a shell script with the majority of the parameters already filled in
Be brave – go and fight dragons
An easy task is to find the SSL CIPHER specs being used in a queue manager. You use runmqsc and issue dis chl(*) where(SSLCIPH,NE,”) and use your pen and paper to write down what is being used. Easy – but slow.
The dragon task – is to do this for 100 queue managers, and you have half an hour to do it! How does a dragon hunter do this on Linux?
echo “dis chl(*) sslciph” |runmqsc -c QMA | tee -a QMA.FILE
- echo “dis chl(*) sslciph” is the command to run
- | passes this to runmqsc
- the -c in runmqsc means use a client to go to the remote box
- QMA is the queue manager name (and the channel name to get there)
- | tee passes the output to the terminal and put the output in a file called QMA.FILE
The output from this is a file QMA.FILE on your local machine with the output of the command in it. Put the echo…. command in a file, and repeat it for every queue manager, and run the file
The second bit of magic is the command
grep CIPH Q*.FILE |sort -k2,2 |uniq -c -f1
- grep CIPH Q*.FILE this looks for the string CIPH in the files *.FILE and displays the file name and the line of data. For example
QMA.FILE: SSLCIPH(TLS_RSA_WITH_AES_128_CBC_SHA256)
QMA.FILE: SSLCIPH( )
QMB.FILE: SSLCIPH( )
QMB.FILE: SSLCIPH(TLS_RSA_WITH_AES_128_CBC_SHA256)
- |sort -k2,2 says sort on the second field to the second field eg SSLCIPH(TLS_RSA_WITH_AES_128_CBC_SHA256)
- |uniq -c -f1 display the count of unique values – skipping the first field (skipping the file name)
- the output is
20 QMA.FILE:SSL_CIPHER_SPEC:
4 QMA.FILE:SSL_CIPHER_SPEC: TLS_RSA_WITH_AES_128_CBC_SHA256
1 QMB.FILE:SSL_CIPHER_SPEC: TLS_RSA_WITH_AES_256_GCM_SHA384
- So there is the list of cipher spec being used and the count of them – easy !
- To finish killing the dragon find which queue managers are using the GCM spec
- grep TLS_RSA_WITH_AES_256_GCM_SHA384 *.FILE to show which files have that cipher spec.
If you want to become a person with good technical skills, these are the sorts of skills you need to develop
- learn the command line interface, and learn to automate
- explore different areas, such as shell short cuts, grep, awk, uniq
- if the command do no damage – do not be afraid of trying something.
Good luck!
One thought on “How to become a wizard?”