pytho脚本通过boto3访问radosgw提供的对象存储
来源:互联网 发布:身份证识别软件app 编辑:程序博客网 时间:2024/06/06 14:04
经常我们需要测试Ceph的RadosGW是否访问正常,s3cmd是一种方法,另一个就是用各种s3的SDK了,这里介绍python的boto3 SDK;
脚本如下:
$ cat bucketops.py
#!/usr/bin/env python
# coding=utf-8
import boto3
def main():
access_key = 'IYZ800MD*******'
secret_key = '05HfpRrrh1Gs1p8bx********'
s3_host = 'http://<ip>'
bucket_name = 'bruins'
object_key = 'hello.txt'
s3client = boto3.client('s3',
aws_secret_access_key = secret_key,
aws_access_key_id = access_key,
endpoint_url = s3_host)
response = s3client.list_buckets()
for bucket in response['Buckets']:
print "Listing owned buckets returns => {0} was created on {1}\n".format(bucket['Name'], bucket['CreationDate'])
# creating a bucket
response = s3client.create_bucket(Bucket = bucket_name)
print "Creating bucket {0} returns => {1}\n".format(bucket_name, response)
# creating an object
response = s3client.put_object(Bucket = bucket_name, Key = object_key, Body = 'Hello World!')
print "Creating object {0} returns => {1}\n".format(object_key, response)
hello_url = s3client.generate_presigned_url('get_object', Params={'Bucket': bucket_name, 'Key': object_key}, ExpiresIn= 3600)
print hello_url
if __name__ == '__main__':
main()
注意的问题:
最后一步生成的object url,通过wget访问时需要把一些特殊字符进行转义;
0 0
- pytho脚本通过boto3访问radosgw提供的对象存储
- 用pytho写的分割pdb文件一个脚本
- Boto3 操作AWS的SQS
- ceph 对象存储网关radosgw和S3接口详细安装配置测试文档
- 通过MySQL提供的C API访问MySQL数据库
- Windows ApplicationData提供对应用程序数据存储区的访问
- pytho gtk的安装
- 使用hiredis提供的接口访问redis中的ZSeT对象
- 8 面向对象(制作帮助文档,通过JDK提供的API学习了Math类,代码块,继承(继承子父成员访问特点,super关键字,方法重写))
- aws java sdk 访问ceph radosgw (hammer)
- 7.22通过指向对象的指针访问对象中的成员
- 7.22通过对象的引用访问对象中的成员
- 通过存储控制器访问外设
- Java通过代理访问互联网平台提供的WebService接口的一种方法
- iOS 通过协议提供匿名对象
- 不区分不行的弱类型脚本中的有类型对象-iFrame通过document.getElementById方法访问和document.nameIframe的差异
- 浏览器提供的对象
- 通过MySQL C API界面(mysql自己提供的API方式访问mysql数据库)
- 【CSS3】用纯CSS实现加载中动画效果
- Chronometer快速开发计时器
- mysql提示错误代码1045什么问题原因怎么办?解决方法
- Windows,Linux文件夹相关操作
- 任意切换线程的工具类
- pytho脚本通过boto3访问radosgw提供的对象存储
- 上传文件失败 Failed to load resource: the server responded with a status of 413 (Request Entity Too Large)
- 蓝桥杯 波动数列
- JavaScript小项目——2048数字游戏
- 下面说说unset的用处,与为什么
- 打印沙漏
- ajax 上传文件
- 图解Android View的scrollTo(),scrollBy()
- ExpandableListView的使用和理解