我正在AWS EC2实例上设置我的solr实例:
EC2_Instance(:SolrInstance) {
KeyName key_name
...
'AWS::CloudFormation::Init' => {
"configSets": {
"InstallAndRun": [ "Install", "Configure" ]
},
"Install": {
sources: {
"/opt/solr-6.2.1/server/solr/lib": solr_jar,
"/opt/solr-6.2.1/server/solr/configsets/data_driven_schema_configs/conf": solr_confs,
"/opt/solr-6.2.1/server/resources": log4jproperties
},
},
"Configure": {
commands: {
"010_start_app": {
"command": "/opt/solr-6.2.1/bin/solr start -c && sleep 40"
}
}
})
UserData FnBase64(FnFormat(File.read('cfn_scripts/install_solr.sh')))
}
solr_confs和solr_confs是S3上的一些zip文件。
然后在install_solr.sh中,我有以下内容:
#!/bin/bash -x
set -e
/opt/aws/bin/cfn-init -v --stack %{AWS::StackName} --resource SolrInstance --configsets InstallAndRun --region %{AWS::Region}
适用于第一次部署。
现在我需要更新solr_confs文件中的一个文件。
我更新了文件并将其压缩,但是,当我部署到已创建的现有堆栈时,堆栈未检测到任何更改,并且我的文件未更新。
看起来AWS :: CloudFormation :: Init和Install只工作一次?
我应该如何更新甚至添加新文件?
答案 0 :(得分:2)