自动化创建OSS、NAS数据卷

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 阿里云容器服务对外提供了数据卷服务,并支持第三方云存储,已经成为在集群环境中用户共享数据卷的利器; 容器服务当前支持阿里云OSS、NAS两种云存储,创建数据卷可以通过控制台或者脚本自动化完成;本文介绍如何通过脚本自动化实现数据卷的创建;

数据卷的基本介绍参考:
https://yq.aliyun.com/articles/138?spm=5176.100240.searchblog.11.dcX58H

阿里云OSS数据卷介绍:
https://yq.aliyun.com/articles/7581?spm=5176.100240.searchblog.7.SgLL9J

阿里云NAS数据卷介绍:
https://yq.aliyun.com/articles/52523?spm=5176.100240.searchblog.40.IhHWyf

控制台创建数据卷参考:
https://help.aliyun.com/document_detail/26033.html?spm=5176.doc26054.6.166.0Qcl7D

1. 获取集群ID

(OpenApi)通过API创建集群后,获得集群ID;参考:
https://help.aliyun.com/document_detail/26054.html?spm=5176.doc26060.6.203.H4azPQ

2. 获取集群介入地址

(OpenApi)通过集群ID获取集群信息,从中获取集群的接入点URL(master_url);参考:
https://help.aliyun.com/document_detail/26056.html?spm=5176.doc26057.6.205.ltOB01

3. 获取集群证书

(OpenApi)通过集群ID获取证书,参考:
https://help.aliyun.com/document_detail/26057.html?spm=5176.doc26056.6.206.O0Lf63

4. 创建NAS数据卷

实现下面HTTP请求以创建NAS数据卷:
请求:

curl -k -H "Content-Type: application/json" -X POST -d @nas.json https://master1g4.cs-cn-hangzhou.aliyun.com:14930/volumes/create -v --key key.pem --cacert ca.pem --cert cert.pem

响应:

{"Name":"docker2","Driver":"nas","Mountpoint":"/mnt/acs_mnt/nas/0a1c9498c","Labels":null,"Scope":""}

其中:/mnt/acs_mnt/nas/0a1c9498c 是生成的NAS挂载目录;
其中:master1g4.cs-cn-hangzhou.aliyun.com:14930 是通过步骤2获取的集群接入点URL;
其中:key.pem, ca.pem, cert.pem 是通过步骤3获取的集群证书;
其中:nas.json是需要创建的NAS数据卷信息文件,其内容如下:

{
    "name": "docker2",
    "driver": "nas",
    "driverOpts": {
        "diskid": "0a1c9498c",
        "host": "0a1c9498c-fjs24.cn-hangzhou.nas.aliyuncs.com",
        "opts": ""
    }
}

需要提供NAS信息:
数据卷名字(name),
NAS的磁盘ID(diskid),
NAS的挂载点地址(host);

5. 创建OSS数据卷

(HTTP)实现下面HTTP请求以创建OSS数据卷:
请求:

curl -k -H "Content-Type: application/json" -X POST -d @oss.json https://master1g4.cs-cn-hangzhou.aliyun.com:14930/volumes/create -v --key key.pem --cacert ca.pem --cert cert.pem

响应:

{"Name":"docker1","Driver":"ossfs","Mountpoint":"/mnt/acs_mnt/ossfs/aliyun-docker","Labels":null,"Scope":""}

其中:/mnt/acs_mnt/ossfs/aliyun-docker是生成的OSS挂载目录;
其中:master1g4.cs-cn-hangzhou.aliyun.com:14930是通过步骤2获取的集群接入点URL;
其中:key.pem, ca.pem, cert.pem是通过步骤3获取的集群证书;
其中:oss.json是需要创建的OSS数据卷信息文件,其内容如下:

{
    "name": "docker1",
    "driver": "ossfs",
    "driverOpts": {
        "bucket": "aliyun-docker",
        "ak_id": "****",
        "ak_secret": "*****",
        "url": "oss-cn-hangzhou.aliyuncs.com",
        "no_stat_cache": "true",
        "other_opts": "-o allow_other -o default_permission=666"
    }
}

需要提供的OSS信息:
数据卷名字(name),
OSS的Bucket名字(diskid),
用户的AK信息(ak_id, ak_secret),
OSS访问域名(url);


以上步骤中,1.2.3容器服务都有相应的SDK提供,参考:
https://help.aliyun.com/document_detail/26060.html?spm=5176.doc26057.6.231.oDUQLY
https://github.com/denverdino/aliyungo

步骤4、5未提供OpenApi、SDK,需要自己实现Client端;

相关实践学习
基于ECS和NAS搭建个人网盘
本场景主要介绍如何基于ECS和NAS快速搭建个人网盘。
阿里云文件存储 NAS 使用教程
阿里云文件存储(Network Attached Storage,简称NAS)是面向阿里云ECS实例、HPC和Docker的文件存储服务,提供标准的文件访问协议,用户无需对现有应用做任何修改,即可使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。 产品详情:https://www.aliyun.com/product/nas
目录
相关文章
|
21天前
|
数据采集 数据可视化 数据处理
【办公自动化】在Excel中按条件筛选数据并存入新的表2.0
【办公自动化】在Excel中按条件筛选数据并存入新的表2.0
28 1
|
1月前
|
前端开发 JavaScript Java
用Python实现高效数据记录!Web自动化技术助你告别重复劳动!
用Python实现高效数据记录!Web自动化技术助你告别重复劳动!
27 1
|
2月前
|
存储 SQL 分布式计算
数据计算MaxCompute读取外部表(数据在oss gz压缩)速度非常慢,有什么方法可以提升效率么?
数据计算MaxCompute读取外部表(数据在oss gz压缩)速度非常慢,有什么方法可以提升效率么?
38 1
|
21天前
|
存储 自然语言处理 数据可视化
【办公自动化】用Python按时间分割txt文件中的数据
【办公自动化】用Python按时间分割txt文件中的数据
27 1
|
21天前
|
存储 数据挖掘 数据库
【办公自动化】使用Python一键往Word文档的表格中填写数据
【办公自动化】使用Python一键往Word文档的表格中填写数据
21 1
|
21天前
|
数据采集 机器学习/深度学习 数据挖掘
【办公自动化】用Python在Excel中查找并替换数据
【办公自动化】用Python在Excel中查找并替换数据
23 0
|
29天前
|
Web App开发 数据采集 JavaScript
【Python爬虫】<万物可爬>Selenium+自动化测试工具 获取数据
【1月更文挑战第22天】【Python爬虫】<万物可爬>Selenium+自动化测试工具 获取数据
|
1月前
|
存储 JSON API
Python 自动化指南(繁琐工作自动化)第二版:十六、使用 CSV 文件和 JSON 数据
Python 自动化指南(繁琐工作自动化)第二版:十六、使用 CSV 文件和 JSON 数据
7 1
|
1月前
|
存储 数据建模 Shell
Python 自动化指南(繁琐工作自动化)第二版:五、字典和结构化数据
Python 自动化指南(繁琐工作自动化)第二版:五、字典和结构化数据
24 0
|
1月前
|
机器学习/深度学习 人工智能 自动驾驶

相关产品

  • 容器镜像服务
  • 容器服务Kubernetes版