当前位置: 首页 > news >正文

不想网站备案如何办广州城乡建设网站

不想网站备案如何办,广州城乡建设网站,网站空间怎么购买,企业信用信息公信系统官网目录 创建 Ceph 对象存储系统 RGW 接口 1、对象存储概念 2、创建 RGW 接口 //在管理节点创建一个 RGW 守护进程#xff08;生产环境下此进程一般需要高可用#xff0c;后续介绍#xff09; //开启 httphttps #xff0c;更改监听端口 //创建 RadosGW 账户 //S3 接口…目录 创建 Ceph 对象存储系统 RGW 接口 1、对象存储概念 2、创建 RGW 接口 //在管理节点创建一个 RGW 守护进程生产环境下此进程一般需要高可用后续介绍 //开启 httphttps 更改监听端口 //创建 RadosGW 账户 //S3 接口访问测试 OSD 故障模拟与恢复 1、模拟 OSD 故障 2、将坏掉的 osd 踢出集群 //方法一 //方法二 3、把原来坏掉的 osd 修复后重新加入集群 创建 Ceph 对象存储系统 RGW 接口 1、对象存储概念 对象存储object storage是非结构数据的存储方法对象存储中每一条数据都作为单独的对象存储拥有唯一的地址来识别数据对象通常用于云计算环境中。 不同于其他数据存储方法基于对象的存储不使用目录树。 虽然在设计与实现上有所区别但大多数对象存储系统对外呈现的核心资源类型大同小异。从客户端的角度来看分为以下几个逻辑单位 Amazon S3 提供了 1、用户User 2、存储桶Bucket 3、对象Object 三者的关系是 1、User将Object存储到系统上的Bucket 2、存储桶属于某个用户并可以容纳对象一个存储桶用于存储多个对象 3、同一个用户可以拥有多个存储桶不同用户允许使用相同名称的Bucket因此User名称即可做为Bucket的名称空间 OpenStack Swift 提供了user、container和object分别对应于用户、存储桶和对象不过它还额外为user提供了父级组件account用于表示一个项目或用户组因此一个account中可以包含一到多个user它们可共享使用同一组container并为container提供名称空间 RadosGW 提供了user、subuser、bucket和object其中的user对应于S3的user而subuser则对应于Swift的user不过user和subuser都不支持为bucket提供名称空间因此不同用户的存储桶不允许同名不过自jewel版本起RadosGW引入了tenant租户用于为user和bucket提供名称空间但他是个可选组件         从上可以看出大多数对象存储的核心资源类型大同小异如 Amazon S3、OpenStack Swift 与 RadosGw。其中 S3 与 Swift 互不兼容RadosGw 为了兼容 S3 与 Swift Ceph 在 RadosGW 集群的基础上提供了 RGWRadosGateway数据抽象层和管理层它可以原生兼容 S3 和 Swift 的 API。 S3和Swift它们可基于http或https完成数据交换由RadosGW内建的Civetweb提供服务它还可以支持代理服务器包括nginx、haproxy等以代理的形式接收用户请求再转发至RadosGW进程。 RGW 的功能依赖于对象网关守护进程实现负责向客户端提供 REST API 接口。出于冗余负载均衡的需求一个 Ceph 集群上通常不止一个 RadosGW 守护进程。 2、创建 RGW 接口 如果需要使用到类似 S3 或者 Swift 接口时候才需要部署/创建 RadosGW 接口RadosGW 通常作为对象存储Object Storage使用类于阿里云OSS。         //在管理节点创建一个 RGW 守护进程生产环境下此进程一般需要高可用后续介绍 cd /etc/ceph ceph-deploy rgw create node01 ceph -sservices:mon: 3 daemons, quorum node01,node02,node03 (age 3h)mgr: node01(active, since 12h), standbys: node02mds: mycephfs:1 {0node02up:active} 2 up:standbyosd: 6 osds: 6 up (since 12h), 6 in (since 25h)rgw: 1 daemon active (node01) #创建成功后默认情况下会自动创建一系列用于 RGW 的存储池 ceph osd pool ls rgw.root default.rgw.control #控制器信息 default.rgw.meta #记录元数据 default.rgw.log #日志信息 default.rgw.buckets.index #为 rgw 的 bucket 信息写入数据后生成 default.rgw.buckets.data #是实际存储的数据信息写入数据后生成 #默认情况下 RGW 监听 7480 号端口 ssh rootnode01 netstat -lntp | grep 7480 curl node01:7480 ?xml version1.0 encodingUTF-8?ListAllMyBucketsResult xmlnshttp://s3.amazonaws.com/doc/2006-03-01/ ListAllMyBucketsResult xmlnshttp://s3.amazonaws.com/doc/2006-03-01/OwnerIDanonymous/IDDisplayName//OwnerBuckets/ /ListAllMyBucketsResult //开启 httphttps 更改监听端口 RadosGW 守护进程内部由 Civetweb 实现通过对 Civetweb 的配置可以完成对 RadosGW 的基本管理。 #要在 Civetweb 上启用SSL首先需要一个证书在 rgw 节点生成证书 1生成CA证书私钥 openssl genrsa -out civetweb.key 2048 2生成CA证书公钥 openssl req -new -x509 -key civetweb.key -out civetweb.crt -days 3650 -subj /CN192.168.80.11 3、将生成的证书合并为pem cat civetweb.key civetweb.crt /etc/ceph/civetweb.pem #更改监听端口 Civetweb 默认监听在 7480 端口并提供 http 协议如果需要修改配置需要在管理节点编辑 ceph.conf 配置文件 cd /etc/cephvim ceph.conf ...... [client.rgw.node01] rgw_host node01 rgw_frontends civetweb port80443s ssl_certificate/etc/ceph/civetweb.pem num_threads500 request_timeout_ms60000 ●rgw_host对应的RadosGW名称或者IP地址 ●rgw_frontends这里配置监听的端口是否使用https以及一些常用配置     •port如果是https端口需要在端口后面加一个s。     •ssl_certificate指定证书的路径。     •num_threads最大并发连接数默认为50根据需求调整通常在生产集群环境中此值应该更大     •request_timeout_ms发送与接收超时时长以ms为单位默认为30000     •access_log_file访问日志路径默认为空     •error_log_file错误日志路径默认为空 #修改完 ceph.conf 配置文件后需要重启对应的 RadosGW 服务再推送配置文件 ceph-deploy --overwrite-conf config push node0{1..3}ssh rootnode01 systemctl restart ceph-radosgw.target #在 rgw 节点上查看端口 netstat -lntp | grep -w 80 netstat -lntp | grep 443 #在客户端访问验证 curl http://192.168.80.11:80 curl -k https://192.168.80.11:443 //创建 RadosGW 账户 在管理节点使用 radosgw-admin 命令创建 RadosGW 账户 radosgw-admin user create --uidrgwuser --display-namergw test user ......keys: [{user: rgwuser,access_key: ER0SCVRJWNRIKFGQD31H,secret_key: YKYjk7L4FfAu8GHeQarIlXodjtj1BXVaxpKv2Nna}], #创建成功后将输出用户的基本信息其中最重要的两项信息为 access_key 和 secret_key 。用户创建成后功如果忘记用户信息可以使用下面的命令查看 radosgw-admin user info --uidrgwuser//S3 接口访问测试 1在客户端安装 python3、python3-pip yum install -y python3 python3-pippython3 -V Python 3.6.8pip3 -V pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6) 2安装 boto 模块用于测试连接 S3 pip3 install boto 3测试访问 S3 接口 echo 123123 /opt/123.txt vim test.py #coding:utf-8 import ssl import boto.s3.connection from boto.s3.key import Key try:_create_unverified_https_context ssl._create_unverified_context except AttributeError:pass else:ssl._create_default_https_context _create_unverified_https_context #test用户的keys信息 access_key ER0SCVRJWNRIKFGQD31H #输入 RadosGW 账户的 access_key secret_key YKYjk7L4FfAu8GHeQarIlXodjtj1BXVaxpKv2Nna #输入 RadosGW 账户的 secret_key #rgw的ip与端口 host 192.168.80.11 #输入 RGW 接口的 public 网络地址 #如果使用443端口下述链接应设置is_secureTrue port 443 #如果使用80端口下述链接应设置is_secureFalse #port 80 conn boto.connect_s3(aws_access_key_idaccess_key,aws_secret_access_keysecret_key,hosthost,portport,is_secureTrue,validate_certsFalse,calling_formatboto.s3.connection.OrdinaryCallingFormat() ) #一:创建存储桶 #conn.create_bucket(bucket_namebucket01) #conn.create_bucket(bucket_namebucket02) #二判断是否存在不存在返回None exists conn.lookup(bucket01) print(exists) #exists conn.lookup(bucket02) #print(exists) #三获得一个存储桶 #bucket1 conn.get_bucket(bucket01) #bucket2 conn.get_bucket(bucket02) #四查看一个bucket下的文件 #print(list(bucket1.list())) #print(list(bucket2.list())) #五向s3上存储数据数据来源可以是file、stream、or string #5.1、上传文件 #bucket1 conn.get_bucket(bucket01) # name的值是数据的key #key Key(bucketbucket1, namemyfile) #key.set_contents_from_filename(/opt/123.txt) # 读取 s3 中文件的内容返回 string 即文件 123.txt 的内容 #print(key.get_contents_as_string()) #5.2、上传字符串 #如果之前已经获取过对象此处不需要重复获取 bucket2 conn.get_bucket(bucket02) key Key(bucketbucket2, namemystr) key.set_contents_from_string(hello world) print(key.get_contents_as_string()) #六删除一个存储桶在删除存储桶本身时必须删除该存储桶内的所有key bucket1 conn.get_bucket(bucket01) for key in bucket1:key.delete() bucket1.delete() 4按照以上步骤执行 python 脚本测试 python3 test.py OSD 故障模拟与恢复 1、模拟 OSD 故障 如果 ceph 集群有上千个 osd每天坏 2~3 个太正常了我们可以模拟 down 掉一个 osd #如果 osd 守护进程正常运行down 的 osd 会很快自恢复正常所以需要先关闭守护进程 ssh rootnode01 systemctl stop ceph-osd0 #down 掉 osd ceph osd down 0ceph osd tree 2、将坏掉的 osd 踢出集群 //方法一 #将 osd.0 移出集群集群会开始自动同步数据 ceph osd out osd.0 #将 osd.0 移除 crushmap ceph osd crush remove osd.0 #删除守护进程对应的账户信息 ceph auth rm osd.0ceph auth list #删掉 osd.0 ceph osd rm osd.0ceph osd stat ceph -s //方法二 ceph osd out osd.0 #使用综合步骤删除配置文件中针对坏掉的 osd 的配置 ceph osd purge osd.0 --yes-i-really-mean-it 3、把原来坏掉的 osd 修复后重新加入集群 #在 osd 节点创建 osd无需指定名会按序号自动生成 cd /etc/cephceph osd create #创建账户 ceph-authtool --create-keyring /etc/ceph/ceph.osd.0.keyring --gen-key -n osd.0 --cap mon allow profile osd --cap mgr allow profile osd --cap osd allow * #导入新的账户秘钥 ceph auth import -i /etc/ceph/ceph.osd.0.keyringceph auth list #更新对应的 osd 文件夹中的密钥环文件 ceph auth get-or-create osd.0 -o /var/lib/ceph/osd/ceph-0/keyring #加入 crushmap ceph osd crush add osd.0 0.01949 hostnode01 #0.01949代表weight权重和磁盘的容量有关容量1Tweight值为1.000500G就是0.5 注用 ceph osd tree 命令查看 ceph 集群会发现有 weight 和 reweight 两个值 weight权重和磁盘的容量有关一般1T值为1.000500G就是0.5其和磁盘的容量有关系不因磁盘可用空间的减少而变化。 reweight影响PG的到OSD的映射关系。reweight参数的目的由于ceph的CRUSH算法随机分配是概率统计意义上的数据均衡当小规模集群pg数据相对较少时会产生一些不均匀的情况可以通过调整reweight参数达到数据均衡。而当该osd out时reweight的值为0当该osd重新up时该值会恢复到1而不会保持之前修改过的值。 #加入集群 ceph osd in osd.0ceph osd tree #重启 osd 守护进程 systemctl restart ceph-osd0ceph osd tree #稍等片刻后 osd 状态为 up //如果重启失败 报错 Job for ceph-osd0.service failed because start of the service was attempted too often. See systemctl status ceph-osd0.service and journalctl -xe for details. To force a start use systemctl reset-failed ceph-osd0.service followed by systemctl start ceph-osd0.service again. #运行 systemctl reset-failed ceph-osd0.service systemctl restart ceph-osd0.service
http://www.dnsts.com.cn/news/102098.html

相关文章:

  • 专业上海网站建设公司哪家好网站阵地建设
  • 列举免费域名注册的网站广告网站设计公司
  • 沈阳做网站优化托福培训一对一
  • 网站域名免费怎样在百度上发帖子
  • 深圳自适应网站开发公司wordpress多页面模板
  • 中国 网站服务器 租金甘肃张掖网站建设
  • 建设注册中心网站微信网站链接怎么做
  • 赣州做网站j北京app开发公司有哪些
  • 郑州网站建设哪家中国住建部网站查询网
  • 网站优化关键词公司广播电台网站建设方案
  • 请描述网站开发的一般流程个人网站模板素材
  • 网站建设服装项目设计书桂林做手机网站建设
  • 移动端网站建设推广方案建设部注册网站
  • 女装网站建设项目可行性分析上海专业制作网站
  • 做易经类的网站网上做家教兼职哪个网站
  • 常用网站设置如何建立自己的商城
  • 找人做的网站怎么运行外贸网站购买云服务器多少钱
  • 第一站长网厦门网站开发公
  • php网站开发招聘网络营销专业介绍及就业方向
  • 怎么更换网站模板看世界杯网址
  • 手机微网站网站图片类型
  • 企业网站模板湖南岚鸿网站建设是属现代服务吗
  • 聚美优品网站建设分析一支部一品牌一特色方案
  • 如何做自媒体网站创建设计SEO优化象客
  • 免费的网站公司网站asp后台维护
  • wordpress网站配置文件wordpress ishome
  • 绵竹网站建设天津市住房和城乡建设厅网站
  • 做企业网站哪个平台好济南建设监理协会网站
  • 网站公司做的网站被攻击南阳seo网站价格
  • 找出网站所有死链接响应式儿童网站源码