如何在GCE中永久设置实例的主机名?我可以通过主机名进行设置,但是重启后它又消失了。
我想输入元数据(主机名:fqdn),但这没有完成。但它应该通过元数据(https://github.com/GoogleCloudPlatform/compute-image-packages/tree/master/google-startup-scripts)工作。
有人有主意吗?
实现它的最简单方法是创建一个简单的脚本,这就是我所做的。
我已将主机名存储在实例元数据中,然后每次系统重新启动时都检索它,以便使用cron作业设置主机名。
$ gcloud compute instances add-metadata <instance> --metadata hostname=<new_hostname>
$ sudo crontab -e
这是必须在crontab中添加的行
@reboot hostname $(curl --silent "http://metadata.google.internal/computeMetadata/v1/instance/attributes/hostname" -H "Metadata-Flavor: Google")
完成这些步骤后,每次重新启动实例时,它将具有主机名<new_hostname>
。你可以在提示符下或使用以下命令检查它:hostname
似乎是一个可行的解决方案。但是我同意不要更改主机名的建议,因为这是没有必要的。可以/应该在相应的应用程序中设置所有外部出现的主机名。
好的解决方案@Adrián,谢谢!但是对我不起作用。看来Google在启动cron守护程序之后设置了主机名...
受此解决方案的启发,我编写了一个补丁,该补丁可以保留您的主机名,以免被Google覆盖。stackoverflow.com/a/38344684/1325832
这对我不起作用-这里的另一个解决方案做了:stackoverflow.com/a/53607475/8177355