Google Cloud Memorystore Memcached 操作符¶
Cloud Memorystore for Memcached 是 Google Cloud 的完全托管的 Memcached 服务。运行在 Google Cloud 上的应用程序可以通过利用高度可扩展、可用、安全的 Memcached 服务来实现极致性能,而无需承担管理复杂 Memcached 部署的负担。
先决条件任务¶
要使用这些操作符,您必须执行以下几项操作
使用 Cloud Console 选择或创建一个云平台项目。
如 Google Cloud 文档中所述,为您的项目启用结算。
如 Cloud Console 文档中所述,启用 API。
通过 pip 安装 API 库。
pip install 'apache-airflow[google]'详细信息请参考 安装。
实例¶
操作符使用 Instance
来表示实例。该对象也可以表示为兼容的字典。
以下是一个实例示例
MEMCACHED_INSTANCE = {
"name": "",
"node_count": 1,
"node_config": {"cpu_count": 1, "memory_size_mb": 1024},
"zones": [LOCATION + "-a"],
}
创建实例¶
使用 CloudMemorystoreMemcachedCreateInstanceOperator
操作符执行创建实例。
create_memcached_instance = CloudMemorystoreMemcachedCreateInstanceOperator(
task_id="create-instance",
location=LOCATION,
instance_id=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
instance=MEMCACHED_INSTANCE,
project_id=PROJECT_ID,
)
删除实例¶
使用 CloudMemorystoreMemcachedDeleteInstanceOperator
操作符执行删除实例。
delete_memcached_instance = CloudMemorystoreMemcachedDeleteInstanceOperator(
task_id="delete-instance",
location=LOCATION,
instance=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
)
获取实例¶
使用 CloudMemorystoreMemcachedGetInstanceOperator
操作符执行获取实例。
get_memcached_instance = CloudMemorystoreMemcachedGetInstanceOperator(
task_id="get-instance",
location=LOCATION,
instance=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
)
列出实例¶
使用 CloudMemorystoreMemcachedListInstancesOperator
操作符执行列出实例。
list_memcached_instances = CloudMemorystoreMemcachedListInstancesOperator(
task_id="list-instances", location="-", project_id=PROJECT_ID
)
更新实例¶
使用 CloudMemorystoreMemcachedUpdateInstanceOperator
操作符执行更新实例。
update_memcached_instance = CloudMemorystoreMemcachedUpdateInstanceOperator(
task_id="update-instance",
location=LOCATION,
instance_id=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
update_mask=FieldMask(paths=["node_count"]),
instance={"node_count": 2}, # 2
)
更新实例并应用参数¶
要更新实例并应用 Memcached 参数,请使用 CloudMemorystoreMemcachedUpdateParametersOperator
和 CloudMemorystoreMemcachedApplyParametersOperator
操作符。
update_memcached_parameters = CloudMemorystoreMemcachedUpdateParametersOperator(
task_id="update-parameters",
location=LOCATION,
instance_id=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
update_mask={"paths": ["params"]},
parameters={"params": {"protocol": "ascii", "hash_algorithm": "jenkins"}},
)
apply_memcached_parameters = CloudMemorystoreMemcachedApplyParametersOperator(
task_id="apply-parameters",
location=LOCATION,
instance_id=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
node_ids=["node-a-1"],
apply_all=False,
)