【发布时间】:2021-01-06 21:49:00
【问题描述】:
我使用 bash 脚本在我的云基础架构中部署了一些 VM 的实例:
#!/bin/bash
instance_name="vm"
# create instance
yc compute instance create \
--name $instance_name \
--hostname reddit-app \
--memory=2 \
...
我需要以vm-DD-MM_YYYY-H-M-S 格式为实例名称添加时间戳。
对于调试,我尝试设置值 instance_name=$(date +%d-%m-%Y_%H-%M-%S) 但收到错误:
ERROR: rpc error: code = InvalidArgument desc = Request validation error: Name: invalid resource name
任何帮助将不胜感激。
【问题讨论】:
-
名称中可能不允许出现下划线、连字符或数字。尝试删除它们或查看 YC 文档。
-
@l0b0 感谢您的回复。我发现下划线可能与这个问题有关。我试过设置
instance_name=$(date +%s)。这应该只显示没有下划线、连字符的数字。但仍在寻找错误。 -
那么我只能建议查看文档。它们可能有任意数量的限制,例如长度或不包括数字。
-
假设实例名称以字母开头,请尝试:
instance_name="vm-$(date +%d-%m-%Y_%H-%M-%S)". -
@l0b0 文档说:“名称可能包含小写拉丁字母、数字和连字符。第一个字符必须是字母。最后一个字符不能是连字符。最大长度为名称为 63 个字符”。我用这些建议修改了我的脚本,它现在可以工作了。
标签: bash shell yandexcloud