{ "AWSTemplateFormatVersion": "2010-09-09", "Parameters": { "myPublicSubnet1": { "Type": "String" }, "myBastionSecGrp": { "Type": "String" }, "myBastionInstProf": { "Type": "String" }, "myDBOracleSecGrp": { "Type": "String" }, "myRDSParamGroup": { "Type": "String" }, "parEc2KeyPair": { "Type": "String" }, "parS3Bucket": { "Type": "String" }, "parRDSMonitoringRoleARN": { "Type": "String" }, "parLambdaRoleARN": { "Type": "String" }, "parDbPassword": { "Type": "String" } }, "Resources": { "myBastion": { "Type": "AWS::EC2::Instance", "Properties": { "DisableApiTermination": "false", "InstanceInitiatedShutdownBehavior": "stop", "ImageId": "ami-035be7bafff33b6b6", "InstanceType": "t2.micro", "KeyName": { "Ref" : "parEc2KeyPair" }, "Monitoring": "true", "SecurityGroupIds" : [ { "Ref" : "myBastionSecGrp" } ], "SubnetId": { "Ref": "myPublicSubnet1" }, "IamInstanceProfile": { "Ref": "myBastionInstProf" }, "UserData" : {"Fn::Base64" : { "Fn::Join" : ["",[ "#!/bin/bash","\n", "yum install -y jq","\n", "yum install -y mysql","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/binaries/oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm .","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/binaries/oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm .","\n", "rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm","\n", "rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/scripts/bash_profile.txt .","\n", "mv -f bash_profile.txt /home/ec2-user/.bash_profile","\n", "chown ec2-user:ec2-user /home/ec2-user/.bash_profile","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/scripts/oracle_tablespaceusage.sql /home/ec2-user/","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/scripts/oracle_statusdb.sql /home/ec2-user/","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/scripts/mysql_statusdb.sql /home/ec2-user/","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/scripts/oracle_checkparameter.sql /home/ec2-user/","\n", "aws s3 cp s3://alexards-virginia-bucket-2019/scripts/oracle_show_top_session_by_cpu.sql /home/ec2-user/","\n", "chown ec2-user:ec2-user /home/ec2-user/*.sql","\n", "#End UserData"]]} } } }, "myDBOracle": { "Type" : "AWS::RDS::DBInstance", "Properties" : { "AllocatedStorage" : "20", "BackupRetentionPeriod" : "1", "CharacterSetName" : "AL32UTF8", "CopyTagsToSnapshot" : true, "DBInstanceClass" : "db.r4.xlarge", "DBInstanceIdentifier" : "db12201j", "DBName" : "DB12201J", "DBParameterGroupName" : { "Ref" : "myRDSParamGroup" }, "DBSubnetGroupName" : "alexardsdbsubnetgrp", "EnableIAMDatabaseAuthentication" : false, "EnablePerformanceInsights" : true, "Engine" : "oracle-ee", "EngineVersion" : "12.2.0.1.ru-2018-10.rur-2018-10.r1", "LicenseModel" : "bring-your-own-license", "MasterUsername" : "orclsys", "MasterUserPassword" : { "Ref" : "parDbPassword" }, "MonitoringRoleArn" : { "Ref" : "parRDSMonitoringRoleARN" }, "MonitoringInterval" : 60, "MultiAZ" : true, "OptionGroupName" : "default:oracle-ee-12-2", "Port" : "1521", "PreferredBackupWindow" : "22:00-22:30", "PreferredMaintenanceWindow" : "tue:20:00-tue:20:30", "PubliclyAccessible" : false, "StorageEncrypted" : false, "StorageType" : "gp2", "VPCSecurityGroups" : [ { "Ref" : "myDBOracleSecGrp" } ], } }, "myLambda": { "Type": "AWS::Lambda::Function", "Properties": { "Code": { "S3Bucket": { "Ref" : "parS3Bucket" }, "S3Key": "scripts/lambda_function.zip" }, "FunctionName" : "alexardsdemo", "Environment": { "Variables": { "Notifications":"off" }, }, "Role": { "Ref" : "parLambdaRoleARN" }, "Timeout": 60, "Handler": "lambda_function.lambda_handler", "Runtime": "python3.6", "MemorySize": 128 } } }, "Description": "alexards_compute" }