gentoomaniac
Newcomer
- Joined
- Oct 29, 2015
- Messages
- 4
- Reaction score
- 1
- Points
- 0
Hi all,
I've had a look around a bit in the forums and on the Internet in general.
One thing I realised is that it's pretty easy to find answers to questions like "how do I query xyz?" but hardly anything about environment designs, tips etc to automate tsm.
What I would like to start in this thread is therefore some sharing of how you tackled certain problems / inconveniences of tsm.
@admins feel free to move this thread if you think it is misplaced.
To make a quick start here some stories from my current position.
Our server environment is completely automated by puppet.
Single servers should ideally be irrelevant and replaceable any time by just installing a new machine with the same puppet configuration.
For backups with tsm this is quite a challenge (registering nodes, setting schedules, ...).
So to get it as good as possible, we currently have the following tools in place and under active development:
1) a python wrapper for easily executing dsmadmc and retrieving the resulting data, errors parsed etc.
2) on top of this we built a REST API (django) which allows the most common operations important for clients: register/remove node, add/remove assocs, add/remove proxy node, various information gathering like query node f=d, query server sessions, processes, restores,...
For authorization we connected it to ldap and use an ssh key based challenge response system.
All requests are logged to elastic search. For statistics and taking.
3) a company specific command line client which executes all these actions and abstracts certain stuff (converts SLAs to TSM domains etc)
Problems we're facing again and again is limitations in the core as we rely on dsmadmc and so far there seems to be no api for that available.
For dsm I started working on Python wrapper for the C API which will hopefully make some progress the next weeks (https://github.com/gentoomaniac/pytivsm-api).
So much for my experience, curious to hear from some others. Pits you fell in and how you solved it.
Cheers
I've had a look around a bit in the forums and on the Internet in general.
One thing I realised is that it's pretty easy to find answers to questions like "how do I query xyz?" but hardly anything about environment designs, tips etc to automate tsm.
What I would like to start in this thread is therefore some sharing of how you tackled certain problems / inconveniences of tsm.
@admins feel free to move this thread if you think it is misplaced.
To make a quick start here some stories from my current position.
Our server environment is completely automated by puppet.
Single servers should ideally be irrelevant and replaceable any time by just installing a new machine with the same puppet configuration.
For backups with tsm this is quite a challenge (registering nodes, setting schedules, ...).
So to get it as good as possible, we currently have the following tools in place and under active development:
1) a python wrapper for easily executing dsmadmc and retrieving the resulting data, errors parsed etc.
2) on top of this we built a REST API (django) which allows the most common operations important for clients: register/remove node, add/remove assocs, add/remove proxy node, various information gathering like query node f=d, query server sessions, processes, restores,...
For authorization we connected it to ldap and use an ssh key based challenge response system.
All requests are logged to elastic search. For statistics and taking.
3) a company specific command line client which executes all these actions and abstracts certain stuff (converts SLAs to TSM domains etc)
Problems we're facing again and again is limitations in the core as we rely on dsmadmc and so far there seems to be no api for that available.
For dsm I started working on Python wrapper for the C API which will hopefully make some progress the next weeks (https://github.com/gentoomaniac/pytivsm-api).
So much for my experience, curious to hear from some others. Pits you fell in and how you solved it.
Cheers