GCP Compute Engine
Google Cloud Platform (GCP) 的 Compute Engine 是一个可扩展的云计算平台,可以让您快速启动虚拟机实例来运行您的应用程序。它提供了一种灵活的方式来管理您的计算资源,并支持多种操作系统、应用程序框架和开发工具。以下是一些基本的 Compute Engine 服务和使用方法:
1. 创建实例
在 GCP 控制台上创建 Compute Engine 实例非常容易。只需要指定实例的名称、类型、操作系统和其他一些配置选项即可。
下面是一个示例 Python 代码片段,可以使用 Google Cloud Python 客户端库来创建 Compute Engine 实例
from google.cloud import compute_v1
client = compute_v1.InstancesClient()
project_id = 'your-project-id'
zone = 'us-central1-a'
config = {
"name": "instance-1",
"machine_type": f"zones/{zone}/machineTypes/n1-standard-1",
"disks": [
{
"boot": True,
"auto_delete": True,
"initialize_params": {
"source_image": "projects/debian-cloud/global/images/family/debian-9"
}
}
],
"network_interfaces": [
{
"network": "global/networks/default"
}
]
}
operation = client.insert(project=project_id, zone=zone, body=config)
print(f"Instance created: {operation.name}")
2. 管理实例
一旦您创建了 Compute Engine 实例,您可以使用 GCP 控制台或 API 来管理它们。这包括启动、停止、重新启动、删除等操作。
以下是一个示例 Python 代码片段,可以使用 Google Cloud Python 客户端库来停止 Compute Engine 实例:
from google.cloud import compute_v1
client = compute_v1.InstancesClient()
project_id = 'your-project-id'
zone = 'us-central1-a'
instance_name = 'instance-1'
instance_path = client.instance_path(project_id, zone, instance_name)
client.stop(instance_path)
print(f"Instance {instance_name} stopped")
. 网络设置
Compute Engine 还提供了一种灵活的方式来管理您的网络设置。您可以创建自定义 VPC 网络、子网、防火墙规则等,以确保您的实例得到最佳的网络连接。
以下是一个示例 Python 代码片段,可以使用 Google Cloud Python 客户端库来创建 VPC 网络:
from google.cloud import compute_v1
client = compute_v1.VirtualNetworksClient()
project_id = 'your-project-id'
region = 'us-central1'
network_name = 'my-network'
config = {
"name": network_name,
"auto_create_subnetworks": True
}
operation = client.insert(project=project_id, region=region, body=config)
print(f"Network created: {operation.name}")
GCP Cloud Storage
Google Cloud Storage 是 GCP 提供的一个高可用性、持久性
GCP 的 Compute Engine 是一种虚拟机实例,可以在其中运行应用程序。Cloud Storage 是 GCP 提供的对象存储服务。下面是它们的基本使用方法和示例代码:
Compute Engine
创建 VM 实例
可以通过以下步骤在 Compute Engine 中创建一个 VM 实例:
- 在 GCP 控制台中导航到 Compute Engine 页面。
- 单击“创建实例”按钮。
- 在“实例详细信息”页面上,填写实例名称、所需的机器类型、区域和区域,以及其他设置。
- 单击“创建”按钮。
以下是使用 Python SDK 创建 VM 实例的示例代码:
from googleapiclient import discovery
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default()
compute = discovery.build('compute', 'v1', credentials=credentials)
project = 'my-project' # 改为自己的项目 ID
zone = 'us-central1-a' # 改为自己想要的区域和区域
instance_name = 'my-instance' # 改为自己想要的实例名称
config = {
'name': instance_name,
'machineType': f'zones/{zone}/machineTypes/n1-standard-1',
'disks': [
{
'boot': True,
'autoDelete': True,
'initializeParams': {
'sourceImage': 'projects/debian-cloud/global/images/family/debian-10',
}
}
],
'networkInterfaces': [
{
'network': 'global/networks/default',
'accessConfigs': [
{
'type': 'ONE_TO_ONE_NAT',
'name': 'External NAT'
}
]
}
],
'serviceAccounts': [
{
'email': 'default',
'scopes': [
'https://www.googleapis.com/auth/cloud-platform'
]
}
]
}
compute.instances().insert(project=project, zone=zone, body=config).execute()
print(f'VM instance {instance_name} was created.')
启动和停
from googleapiclient import discovery
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default()
compute = discovery.build('compute', 'v1', credentials=credentials)
project = 'my-project' # 改为自己的项目 ID
zone = 'us-central1-a' # 改为自己想要的区域和区域
instance_name = 'my-instance' # 改为自己想要的实例名称
# 启动 VM 实例
compute.instances().start(project=project, zone=zone, instance=instance_name).execute()
print(f'VM instance {instance_name} was started.')
# 停止 VM 实例
compute.instances().stop(project=project, zone=zone, instance=instance_name).execute()
print(f'VM instance {instance_name} was stopped
用 Python SDK 启动和停止 VM 实例的示例代码: