case "$1" in
start)
su - confluence -c '/opt/confluence/current-confl/bin/start-confluence.sh'
;;
stop)
su - confluence -c '/opt/confluence/current-confl/bin/stop-confluence.sh'
;;
status)
ps aux | grep confluence
;;
restart|force-reload)
su - confluence -c '/opt/confluence/current-confl/bin/stop-confluence.sh'
su - confluence -c '/opt/confluence/current-confl/bin/start-confluence.sh'
;;
try-restart|condrestart)
exit 3
;;
reload)
exit 3
;;
*)
echo $"Usage: $0 {start|stop|status|restart|try-restart|force-reload}"
exit 2
esac
/opt/confluence/current-confl/confluence/WEB-INF/classes/confluence-init.properties:
mode: 644
owner: confluence
group: confluenceadm
content: !Sub |
confluence.home=/efs/confluence/${ConfluenceEnvironment}
/opt/confluence/current-confl/conf/server.xml:
mode: 644
owner: confluence
group: confluenceadm
content: !Sub |
<Server port="8000" shutdown="SHUTDOWN" debug="0">
<Service name="Tomcat-Standalone">
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="75" minSpareThreads="25"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true"
proxyName="${ServiceURL}" proxyPort="443" scheme="https" secure="true"
relaxedQueryChars="|,[,],{,},*,^" relaxedPathChars="|,[,],{,},*,^" />
<Engine name="Standalone" defaultHost="localhost" debug="0">
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="false" startStopThreads="4">
<Context path="" docBase="../confluence" debug="0" reloadable="false" useHttpOnly="true">
<Manager pathname=""/>
<Valve className="org.apache.catalina.valves.StuckThreadDetectionValve" threshold="60"/>
</Context>
</Host>
</Engine>
</Service>
</Server>
/opt/confluence/current-confl/confluence/WEB-INF/web.xml:
mode: 644
owner: confluence
group: confluenceadm
source: !Sub
- "https://s3-${AWS::Region}.amazonaws.com/${S3Bucket}/web.xml"
- S3Bucket:
Fn::ImportValue:
!Sub "${ConfluenceFoundationStack}-confluencebucket"
/opt/confluence/current-confl/confluence/WEB-INF/lib/mysql.jar:
mode: 644
owner: confluence
group: confluenceadm
source: !Sub
- "https://s3-${AWS::Region}.amazonaws.com/${S3Bucket}/mysql/mysql-connector-java-5.1.40-bin.jar"
- S3Bucket:
Fn::ImportValue:
!Sub "${ConfluenceFoundationStack}-confluencebucket"
/opt/confluence/current-confl/confluence/WEB-INF/lib/duo.jar:
mode: 644
owner: confluence
group: confluenceadm
source: !Sub
- "https://s3-${AWS::Region}.amazonaws.com/${S3Bucket}/duo/duo.jar"
- S3Bucket:
Fn::ImportValue:
!Sub "${ConfluenceFoundationStack}-confluencebucket"
/opt/confluence/current-confl/confluence/WEB-INF/lib/duo-client.jar:
mode: 644
owner: confluence
group: confluenceadm
source: !Sub
- "https://s3-${AWS::Region}.amazonaws.com/${S3Bucket}/duo/duo-client-0.2.1.jar"
- S3Bucket:
Fn::ImportValue:
!Sub "${ConfluenceFoundationStack}-confluencebucket"
/opt/confluence/current-confl/confluence/WEB-INF/lib/duo-filter.jar:
mode: 644
owner: confluence
group: confluenceadm
source: !Sub
- "https://s3-${AWS::Region}.amazonaws.com/${S3Bucket}/duo/duo-filter-1.3.5-SNAPSHOT.jar"
- S3Bucket:
Fn::ImportValue:
!Sub "${ConfluenceFoundationStack}-confluencebucket"
configureAccess:
commands:
01setPerms:
command: "chown -R confluence /opt/confluence && chmod -R u=rwx,go-rwx /opt/confluence"
02setupHome:
command: "mkdir -p /var/confluence && chown -R confluence /var/confluence && chmod -R u=rwx,go-rwx /var/confluence"
03setupShell:
command: "/usr/bin/chsh -s /bin/bash confluence"
uninstallJava:
commands:
01remove17:
command: "yum remove -y java-1.7.0-openjdk"
configureService:
commands:
completeInstallation:
command: "/opt/confluence/current-confl/bin/version.sh > /var/log/confluenceInstallation.log"
installMysql:
commands:
completeInstallation:
command: "yum -y install mysql"
services:
sysvinit:
nginx:
enabled: "true"
ensureRunning: "true"
commands:
- completeInstallation
confluence:
enabled: "true"
ensureRunning: "true"
commands:
- completeInstallation
CreationPolicy:
ResourceSignal:
Timeout: PT20M
Properties:
Tags:
- Key: Name
Value: !Ref AWS::StackName
- Key: service
Value: !Ref ServiceTag
- Key: environment
Value: !Ref EnvironmentTag
- Key: contactnetid
Value: !Ref ContactNetidTag
- Key: accountnumber
Value: !Ref AccountNumberTag
- Key: ticketnumber
Value: !Ref TicketNumberTag
BlockDeviceMappings:
- DeviceName: /dev/xvda
Ebs:
VolumeSize: 150
InstanceType: !Ref InstanceType
IamInstanceProfile: !Ref EC2InstanceProfile
KeyName : !Ref KeyName
ImageId : !Ref AmazonLinuxAmi
UserData :
Fn::Base64: !Sub
- |
yum update -y
mkdir -p /efs/confluence
echo "${efsid}.efs.${AWS::Region}.amazonaws.com:/ /efs/confluence nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 0 0" >> /etc/fstab
mount -a -t nfs4
Confluence Application Stack CloudFormation Deployment
This CloudFormation template will deploy an application node for Confluence