存储自动化管理存在着两个难点:一是对于自动化管理可能对存储系统管理带来的隐患的担忧,但是自动化的配置管理和状态监控确实有必要的,这块落地的比较多;而是存储系统的品牌和型号上的差异很大,自动化管理的方式也需要分类型来做。就我个人的经验来看,主要是三种方式来做:
1.可以ssh登录管理,可以通过脚本ssh登录或者python程序调用paramiko模块。比如以svc的管理为例,通过python定义登录模块:self._client = paramiko.SSHClient() , 命令执行模块self._client.exec_command(command),stdout = self._send_command('lsmdisk -bytes -delim ,')
2.可以调用rest api管理,可以通过python发起request请求,获取json格式的配置数据。VMAX或者vplex的管理都可以这样来做。登录:self._address = 'https://%s:%s/vplex' % (address, port),request:data = requests.get(url, headers=self._headers, timeout=600, verify=False),self._send_request('clusters//exports/storage-views/'),数据录入:data = json.loads(data.text)
3.通过特定的命令行工具的,比如DS8000系列的,可以先安装dscli命令行工具,再调用脚本
这几种方式中,相比于脚本方式会出现随着软件版本变化而导致原有脚本失效的情况,rest api管理更适合用于运维自动化,但是需要有一定的Python开发基础,而且部分存储系统并不支持该api接口,几种方式还是需要配合使用。
收起