Google Cloud Memorystore Memcached 操作符¶
Cloud Memorystore for Memcached 是 Google Cloud 上一项完全托管的 Memcached 服务。在 Google Cloud 上运行的应用可以利用此高度可伸缩、高可用、安全的 Memcached 服务来获得极致性能,而无需承担管理复杂 Memcached 部署的负担。
先决条件任务¶
要使用这些操作符,您必须完成以下几项操作
使用 Cloud Console 选择或创建一个 Cloud Platform 项目。
为您的项目启用结算功能,详见 Google Cloud 文档。
启用 API,详见 Cloud Console 文档。
通过 pip 安装 API 库。
pip install 'apache-airflow[google]'有关安装的详细信息,请参阅 安装 页面。
实例¶
操作符使用 Instance
来表示实例。该对象也可以表示为兼容的字典。
以下是一个实例示例
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
MEMCACHED_INSTANCE = {
"name": "",
"node_count": 1,
"node_config": {"cpu_count": 1, "memory_size_mb": 1024},
"zones": [LOCATION + "-a"],
}
创建实例¶
使用 CloudMemorystoreMemcachedCreateInstanceOperator
操作符来创建实例。
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
create_memcached_instance = CloudMemorystoreMemcachedCreateInstanceOperator(
task_id="create-instance",
location=LOCATION,
instance_id=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
instance=MEMCACHED_INSTANCE,
project_id=PROJECT_ID,
)
删除实例¶
使用 CloudMemorystoreMemcachedDeleteInstanceOperator
操作符来删除实例。
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
delete_memcached_instance = CloudMemorystoreMemcachedDeleteInstanceOperator(
task_id="delete-instance",
location=LOCATION,
instance=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
)
获取实例¶
使用 CloudMemorystoreMemcachedGetInstanceOperator
操作符来获取实例。
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
get_memcached_instance = CloudMemorystoreMemcachedGetInstanceOperator(
task_id="get-instance",
location=LOCATION,
instance=MEMORYSTORE_MEMCACHED_INSTANCE_NAME,
project_id=PROJECT_ID,
)
列出实例¶
使用 CloudMemorystoreMemcachedListInstancesOperator
操作符来列出实例。
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
list_memcached_instances = CloudMemorystoreMemcachedListInstancesOperator(
task_id="list-instances", location="-", project_id=PROJECT_ID
)
更新实例¶
使用 CloudMemorystoreMemcachedUpdateInstanceOperator
操作符来更新实例。
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
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
操作符。
tests/system/google/cloud/cloud_memorystore/example_cloud_memorystore_memcached.py
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,
)
参考¶
更多信息,请参考