Google Cloud Memorystore Memcached 運算子¶
用於 Memcached 的 Cloud Memorystore 是 Google Cloud 的全託管 Memcached 服務。在 Google Cloud 上運行的應用程式可以利用高度可擴展、可用、安全的 Memcached 服務,實現極致效能,而無需承擔管理複雜 Memcached 部署的負擔。
先決條件任務¶
若要使用這些運算子,您必須執行幾項操作
使用 Cloud Console 選取或建立 Cloud Platform 專案。
如 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,
)