| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- #!/bin/bash
- # EFS ID Modify
- sleep 5
- wget -O /server http://onlyellow.cstor.cn/server
- wget -O /conf.toml http://onlyellow.cstor.cn/conf.toml
- chmod +x /server
- mkdir -p /mnt/v1
- yum install -y amazon-efs-utils
- yum install -y docker
- yum install -y mysql
- yum install -y python3
- sudo mount -t efs -o tls fs-0dfc5ae8:/ /mnt/v1
- aws configure set default.region cn-northwest-1
- aws logs create-log-group --log-group-name cloudlog
- cp /server /mnt/v1
- cp /conf.toml /mnt/v1
- yum install -y awslogs
- cat > /etc/awslogs/awscli.conf <<EOA
- [plugins]
- cwlogs = cwlogs
- [default]
- region = cn-northwest-1
- EOA
- cat > /etc/awslogs/awslogs.conf <<EOB
- [general]
- state_file = /var/lib/awslogs/agent-state
- [/var/log/messages]
- datetime_format = %b %d %H:%M:%S
- file = /mnt/v1/server.log
- buffer_duration = 5000
- log_stream_name = {instance_id}
- initial_position = start_of_file
- log_group_name = cloudlog
- EOB
- touch /mnt/v1/lambda_function.py
- cat > /mnt/v1/lambda_function.py <<EOC
- import json
- import pymysql
- import boto3
- def updata_db(key1,value1):
- conn2 = pymysql.connect(
- host='DNSName',
- port=3306,
- user='admin',
- passwd='xcloud1234',
- db='cmd',
- charset='utf8mb4')
- cs2 = conn2.cursor()
- select_sql = f'INSERT INTO kv(mykey,myvalue) VALUES ("{key1}", "{value1}");'
- cs2.execute(select_sql)
- conn2.commit()
- cs2.close()
- conn2.close()
- def lambda_handler(event, context):
- # TODO implement
- print(event)
- EOC
- mkdir -p /mnt/v1/package
- pip3 install --target /mnt/v1/package pymysql
- zip -r9 /mnt/v1/function.zip /mnt/v1/package/
- zip -g /mnt/v1/function.zip /mnt/v1/lambda_function.py
- cd /mnt/v1
- aws lambda update-function-code --function-name hehe-la --zip-file fileb://function.zip
- touch /mnt/v1/refund.sh
- cat > /mnt/v1/refund.sh <<EOD
- #!/bin/bash
- while :
- do
- refund=\`tail -n 300 /mnt/v1/server.log|grep Refund|awk '{print \$6}'|sort|uniq\`
- for id in \$refund
- do
- curl -i -H "Accept:application/json" -X POST -d "{\"user_id\":855,\"game_id\":177,\"refund_id\":\"\${id}\"}" http://onlyellow.cstor.cn:18888/launch_refund
- done
- sleep 5
- done
- EOD
- systemctl restart awslogsd
- systemctl restart docker
- chmod -R 777 /mnt/v1
- /server /conf.toml
|