aws机器创建命令&docker创建

普通实例创建:
$machine_model = ' t3.large '; 机器型号

$value = ' 172.31.50.100 ';  指定启动机器IP

$data->subnet_id = 'subnet-0f005dd4fe9399f6c'; //nat_route_60 网段id

执行命令:

aws ec2 run-instances --key-name qn_flight_manage --image-id ami-06e01347d0a15cf95 --count 1 --instance-type '.$machine_model.' --security-group-ids sg-08f73a31b52c3cc1a sg-b7dc7ed0 --private-ip-address '.$value.' --subnet-id '.$data->subnet_id;

竞价实例:

生成一个json 文件

$json = '{

"ImageId":"ami-06e01347d0a15cf95", //启动机器镜像id

"InstanceType":"t3.large",//机器型号"

KeyName":"qn_flight_manage",

"EbsOptimized": true, // 是否启用Ebs优化

"NetworkInterfaces" :[{

                    "DeviceIndex":0, 

                     "Groups":["sg-b7dc7ed0","sg-08f73a31b52c3cc1a"], // 安全组Id 

                     "PrivateIpAddress":"172.31.50.100 ", //机器ip

                     "SubnetId":"subnet-0f005dd4fe9399f6c", //网段id

 }]
 }
';

执行命令中的 file 是上边生成json文件的地址:

aws ec2 request-spot-instances --availability-zone ap-southeast-1b --instance-count 1 --spot-price 0.07 --type "persistent" --instance-interruption-behavior "stop" --launch-specification file:///export/webdata/test1.json'

因为后续创建docker命令  需要把IP写入 host 文件

命令: 

echo "172.31.50.203" >> /etc/ansible/hosts // 因为ip 必须得拿双引包着 'echo '.'"'.$ip'"'.' >> /etc/ansible/hosts'

执行脚本命令:

ansible 172.31.50.107 -m shell -a '/export/static/shell/init/gdsR.sh'  //命令中的引号不可缺    'ansible '.$ip.' -m shell -a '."'".$Init['machine_init_sh']."'";

新机器 不存在脚本文件的话

mount 挂载

ansible 172.31.50.107 -m shell -a 'mount -t nfs -o soft,intr,timeo=15 172.31.20.61:/export/static/ /export/static/'  //命令中的引号不可缺

创建 docker 容器 检查 镜像 是否存在 

ansible 172.31.60.10 -m shell -a 'docker images haproxy '  //检查 当前的 ip 机器上是否有 需要用的 docker 镜像文件 有就可以直接去创建 没有则需要从 docker库 pull 

命令: 

ansible 172.31.60.10 -m shell -a " docker images pull 172.31.50.100:5000/operation_platform:20210407"   //命令中的引号不可缺   ip地址是固定值  172.31.50.100:5000    冒号是英文状态下

创建 容器命令

metasearch 启动
docker run --restart=always -it -d --name metasearch_20210331 -p 11000:22 -p 10100:8101 -p 10800:9998 -p 10900:9999 -p 9051-9059:9051-9059 -v /export/logs:/export/logs -v /export/local_cache_share:/export/share --privileged=true metasearch:20210331 /usr/sbin/init

ha启动:
docker run -it -d --name haproxy_20210204 -p 80:80 -p 80:80/udp -p 443:443 -p 443:443/udp -p 8000:8000 -v /var/log/haproxy:/var/log/haproxy --privileged=true --network docker1 172.31.50.100:5000/ha:v1 /usr/sbin/init

运营后台容器启动:
docker run --name itt6ojon_20210401-it -p 10022:22 -p 10080:80 -v /export/static:/export/static -v /export/share:/export/share -v /tmp:/tmp --privileged=true -d itt6ojon:20210401 /usr/sbin/init

运维平台容器启动:
docker run --name operation_platform -it -p 10022:22 -p 10080:80 -v /export/static:/export/static -v /export/share:/export/share -v /export/s3_storage:/export/s3_storage --privileged=true -d operation_platform:20210407 /usr/sbin/init

docker指定 IP创建

docker run --restart=always -it -d --name metasearch_20210623_bg  --ulimit nofile=1024000 --ulimit core=-1 --ulimit nproc=-1 --ulimit stack=-1 --network docker_network --ip 172.50.0.100 -v /export/logs:/export/logs -v /export/local_cache_share:/export/share --privileged=true  172.31.50.100:5000/metasearch:20210623_bg /usr/sbin/init

aws机器stop 动作命令

ansible 172.31.50.100 -m shell -a " aws ec2 stop-instances --instance-ids  i-09e95ea04460ea5da "  //注 双引号保留 我这里拿的是 id

aws机器 停止命令

ansible 172.31.60.10 -m shell -a "aws ec2 terminate-instances --instance-ids i-0fd599e1d8279d70a " //注 双引号保留  我这里拿的是 id

容器停止命令

ansible 172.31.60.10 -m shell -a "docker stop  82c212c839f5 " //注 双引号保留  我这里拿的是 id

蓝色字体 基本都是可以引入的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值