本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
属性文件
重要
这些区域有: AWS OpsWorks Stacks 该服务已于 2024 年 5 月 26 日终止,新客户和现有客户均已禁用。我们强烈建议客户尽快将其工作负载迁移到其他解决方案。如果您对迁移有疑问,请联系 AWS Support 团队开启 AWS re: post 或通过
在查看配方之前,先检查一下 Tomcat 说明书的属性文件 (该文件包含配方使用的各种配置设置) 是很有帮助的。属性不是必需的;您可以直接在您的配方或模板中对这些值进行硬编码。但是,如果您使用属性定义配置设置,则可以使用 AWS OpsWorks Stacks 控制台或通过定义自定义JSON属性API来修改值,这比每次要更改设置时都重写配方或模板代码更简单、更灵活。这种方法具有诸多好处,例如,允许您为多个堆栈使用相同的说明书,但对于每个堆栈,要为 Tomcat 服务器配置不同的值。有关属性以及如何覆盖属性的更多信息,请参阅覆盖属性。
以下示例显示了完整的属性文件 default.rb
,该文件位于 Tomcat 说明书的 attributes
目录中。
default['tomcat']['base_version'] = 6 default['tomcat']['port'] = 8080 default['tomcat']['secure_port'] = 8443 default['tomcat']['ajp_port'] = 8009 default['tomcat']['shutdown_port'] = 8005 default['tomcat']['uri_encoding'] = 'UTF-8' default['tomcat']['unpack_wars'] = true default['tomcat']['auto_deploy'] = true case node[:platform] when 'centos', 'redhat', 'fedora', 'amazon' default['tomcat']['java_opts'] = '' when 'debian', 'ubuntu' default['tomcat']['java_opts'] = '-Djava.awt.headless=true -Xmx128m -XX:+UseConcMarkSweepGC' end default['tomcat']['catalina_base_dir'] = "/etc/tomcat#{node['tomcat']['base_version']}" default['tomcat']['webapps_base_dir'] = "/var/lib/tomcat#{node['tomcat']['base_version']}/webapps" default['tomcat']['lib_dir'] = "/usr/share/tomcat#{node['tomcat']['base_version']}/lib" default['tomcat']['java_dir'] = '/usr/share/java' default['tomcat']['mysql_connector_jar'] = 'mysql-connector-java.jar' default['tomcat']['apache_tomcat_bind_mod'] = 'proxy_http' # or: 'proxy_ajp' default['tomcat']['apache_tomcat_bind_config'] = 'tomcat_bind.conf' default['tomcat']['apache_tomcat_bind_path'] = '/tc/' default['tomcat']['webapps_dir_entries_to_delete'] = %w(config log public tmp) case node[:platform] when 'centos', 'redhat', 'fedora', 'amazon' default['tomcat']['user'] = 'tomcat' default['tomcat']['group'] = 'tomcat' default['tomcat']['system_env_dir'] = '/etc/sysconfig' when 'debian', 'ubuntu' default['tomcat']['user'] = "tomcat#{node['tomcat']['base_version']}" default['tomcat']['group'] = "tomcat#{node['tomcat']['base_version']}" default['tomcat']['system_env_dir'] = '/etc/default' end
稍后将在相关部分中讨论这些设置本身。以下说明适用于一般情况:
-
所有节点定义均为
default
类型,因此您可以使用自定义JSON属性覆盖它们。 -
该文件使用
case
语句按照条件并基于实例的操作系统设置一些属性值。platform
节点由 Chef 的 Ohai 工具生成,表示实例的操作系统。