我有一个Google Cloud Compute Engine项目,想要在所有实例上自动安装FFMPEG。我正在使用node.js模块https://github.com/fluent-ffmpeg/node-fluent-ffmpeg为上传到服务器的视频添加水印并生成缩略图。它在安装了ffmpeg的本地机器上运行得非常好。但是如何在google云项目中的所有虚拟机实例上安装/自动安装ffmpeg?
答案 0 :(得分:1)
以下是我想到的替代方案:
轻松方法如果您只想解决这个问题:运行脚本ssh到每个实例并使用例如apt-get
或{{1来安装包}}。不要忘记提供yum
标志以避免输入提示。这是an example of how you can do this。
如果你打算使用-y
,你可以列出你的所有实例,你也可以使用gcloud compute ssh
轻松连接它们,因为GCE使用公钥而不是密码,这使得它易于自动化。
如果您想使用普通的ssh,请保存GCE虚拟机的所有外部IP地址列表,并使用this approach连接到您的实例。
更复杂,但也允许将来扩展:use a configuration management system, such as Chef, Ansible, Puppet, Salt or others。确保在系统上安装软件包是他们每个内置的一流操作之一。
但是,其中一些是客户端 - 服务器系统,要求节点预先安装了代理,因此您将回到原点。 Ansible是一个无主的,因此可能最容易上手,但如果这是一次性问题,上面的SSH解决方案可能会更容易。
答案 1 :(得分:0)
另一种方法是使用Startup Scripts。我会把这个解决方案放在@Misha建议的方法之间。