【发布时间】:2020-09-25 19:43:25
【问题描述】:
我正在尝试通过云功能启动和停止现有的谷歌云计算虚拟机。
我在documentation 中找到了这个,但我不确定这将如何作为云功能发挥作用。身份验证如何工作?如何安装 Node.js 库?
// BEFORE RUNNING:
// ---------------
// 1. If not already done, enable the Compute Engine API
// and check the quota for your project at
// https://console.developers.google.com/apis/api/compute
// 2. This sample uses Application Default Credentials for authentication.
// If not already done, install the gcloud CLI from
// https://cloud.google.com/sdk and run
// `gcloud beta auth application-default login`.
// For more information, see
// https://developers.google.com/identity/protocols/application-default-credentials
// 3. Install the Node.js client library by running
// `npm install googleapis --save`
const {google} = require('googleapis');
var compute = google.compute('v1');
authorize(function(authClient) {
var request = {
// Project ID for this request.
project: 'my-project', // TODO: Update placeholder value.
// The name of the zone for this request.
zone: 'my-zone', // TODO: Update placeholder value.
// Name of the instance resource to start.
instance: 'my-instance', // TODO: Update placeholder value.
auth: authClient,
};
compute.instances.start(request, function(err, response) {
if (err) {
console.error(err);
return;
}
// TODO: Change code below to process the `response` object:
console.log(JSON.stringify(response, null, 2));
});
});
function authorize(callback) {
google.auth.getClient({
scopes: ['https://www.googleapis.com/auth/cloud-platform']
}).then(client => {
callback(client);
}).catch(err => {
console.error('authentication failed: ', err);
});
}
感谢您的帮助!
【问题讨论】:
-
您好,您想实现什么?早上启动 GCE 虚拟机,晚上停止,即?
标签: node.js google-cloud-functions google-compute-engine