BesClient
更新时间:2021-01-18
新建BesClient
通过AK/SK方式访问BES
BesClient是BES服务的Python客户端,为调用者与BES服务进行交互提供了一系列的方法。
1.在新建BesClient之前,需要先创建配置文件对BesClient进行配置,以下将此配置文件命名为bes_sample_conf.py,具体配置信息如下所示:
import logging
from baidubce.auth.bce_credentials import BceCredentials
from baidubce.bce_client_configuration import BceClientConfiguration
endpoint = b'domain-name' # 用户指定的域名;替换时需要保留b修饰符
AK = b'ak' # 用户的Access Key ID;替换时需要保留b修饰符
SK = b'sk' # 用户的Secret Access Key;替换时需要保留b修饰符
region = b'region' # 域名对应的区域;替换时需要保留b修饰符
logger = logging.getLogger('baidubce.http.bce_http_client')
fh = logging.FileHandler('sample.log')
fh.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.DEBUG)
logger.addHandler(fh)
config = BceClientConfiguration(credentials=BceCredentials(AK, SK), endpoint=endpoint, region=region)
在上面代码中,变量ACCESS_KEY_ID
与SECRET_ACCESS_KEY
是由系统分配给用户的,均为字符串,用于标识用户,为访问BES做签名验证。 其中ACCESS_KEY_ID
对应控制台中的“Access Key ID”,SECRET_ACCESS_KEY
对应控制台中的“Access Key Secret”,获取方式请参考《操作指南 获取ACCESSKEY》。
endpoint参数是=表示访问BES服务的域名,region参数表示对应的区域
注意: ENDPOINT参数只能用指定的包含区域的域名来进行定义。百度智能云目前开放了多区域支持,请参考区域选择说明。
目前BES支持的区域及其对应endpoint参数、region参数如下所示:
区域 | endpoint | region |
---|---|---|
华北-北京 | http://bes.bj.baidubce.com | bj |
华北-保定 | http://bes.bd.baidubce.com | bd |
华南-广州 | http://bes.gz.baidubce.com | gz |
华东-苏州 | http://bes.su.baidubce.com | su |
中国-香港 | http://bes.hkg.baidubce.com | hkg |
新加坡 | http://bes.sin.baidubce.com | sin |
度小满金融专区 | http://bes.hb-fsg.baidubce.com | hb-fsg |
2.在完成上述配置之后,参考如下代码新建一个BesClient。
#导入BesClient配置文件
import bes_sample_conf
#导入BES相关模块
from baidubce.exception import BceHttpClientError
from baidubce.exception import BceServerError
from baidubce.services.bes.bes_client import BesClient
from baidubce.services.bes.bes_model import Billing
from baidubce.services.bes.bes_model import Module
from baidubce.services.bes.bes_model import DiskSlotInfo
# 创建 bes client
bes_client = BesClient(bes_sample_conf.config)