首页 > 解决方案 > 如何通过安装 yum 包告诉云形成初始化它应该使用特定的存储库

问题描述

我使用AWS::CloudFormation::Init在 AWS EC2-Instance 中部署服务和包。默认情况下,Cloud Formation 使用 AWS 的存储库,在我的例子中安装了 PHP 5.4.16 等旧版本。我告诉cfn-init安装 remi 和 epel 存储库,但它接缝我必须告诉 yum 相同。在 bash 我会这样做:

sudo yum --enablerepo=remi,remi-php71 install httpd php php-common

当然,我也可以在 UserData 部分做同样的事情,但只要在 configSets 中没有办法,我就想避免。

"install_apache2": {
"packages": {
    "rpm":{
        "remi" : "http://rpms.famillecollet.com/enterprise/remi-release-7.rpm",
        "epel" : "https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm"
    },
    "yum":  {
        "php": [],
        "php-mysql": [],
        "php-mcrypt": [],
        "php-gd": [],
        "php-pear": [],
        "httpd": [],
        "nano": [],
        "git": []
    }
},

这是我的 cfn-init-cmd.log 的捷径:

P7691 [INFO]    ===============================================================================
P7691 [INFO]     Package          Arch   Version         Repository                        Size
P7691 [INFO]    ===============================================================================
P7691 [INFO]    Installing:
P7691 [INFO]     git              x86_64 1.8.3.1-20.el7  rhui-REGION-rhel-server-releases 4.4 M
P7691 [INFO]     httpd            x86_64 2.4.6-88.el7    rhui-REGION-rhel-server-releases 1.2 M
P7691 [INFO]     nano             x86_64 2.3.1-10.el7    rhui-REGION-rhel-server-releases 440 k
P7691 [INFO]     php              x86_64 5.4.16-46.el7   rhui-REGION-rhel-server-releases 1.4 M
P7691 [INFO]     php-gd           x86_64 5.4.16-46.el7   rhui-REGION-rhel-server-releases 128 k
P7691 [INFO]     php-mcrypt       x86_64 5.4.16-7.el7    epel                              20 k
P7691 [INFO]     php-mysql        x86_64 5.4.16-46.el7   rhui-REGION-rhel-server-releases 102 k
P7691 [INFO]     php-pear         noarch 1:1.9.4-21.el7  rhui-REGION-rhel-server-releases 357 k

标签: amazon-web-servicesamazon-cloudformation

解决方案


推荐阅读