aws s3服务


1)后台在S3那里新建 一个s3 bucket ,类似一个仓库,这个仓库默认内的对象默认 不对公网开放
每个bucket都有一个公网访问的总开关,这是一个总闸,总闸下面还有不同的策略来控制访问,需要设置权限

  1. aws IAM 那里需要新建一个可以访问s3的role,这个role会授权给ec2服务器,ec2服务器可以直接访问和操作s3


3) ec2有了某个操作s3的role后,就可以安装aws的命令行了

安装aws cli

   yum install unzip -y
		curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
		unzip awscliv2.zip
		sudo ./aws/install -i /usr/local/aws-cli -b /usr/local/bin

aws s3 ls s3://abc-buckets #查看s3的文件
aws s3 cp  /usr/local/src/test.txt s3://abc-buckets #添加文件
aws s3 cp s3://abc-buckets/my_folder/my_file.ext my_copied_file.ext # 下载文件
curl https://abc-buckets.s3.ap-southeast-1.amazonaws.com/test.txt #公网访问链接
aws s3 rm s3://abc-buckets/test.txt #删除某个文件
 aws s3 sync s3://remote_S3_bucket local_directory #同步目录到本地

安装s3fs ,挂载s3到本地

参考 https://aws.amazon.com/cn/blogs/china/s3fs-amazon-ec2-linux/

ssh -i /path/my-key-pair.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com
#b) 安装必要的软件包

sudo yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel
#c) 下载,编译并安装s3fs

git clone https://github.com/s3fs-fuse/s3fs-fuse.git
cd s3fs-fuse
./autogen.sh
./configure
make
sudo make install

ln -s /usr/local/bin/s3fs /usr/bin/
mkdir /s3mnt 
s3fs abc-buckets /s3mnt -o iam_role="abc-buckets-role" -o endpoint=ap-southeast-1
df -h
AWS