zoukankan      html  css  js  c++  java
  • day1-存储

    存储技术与实现

    ISCSI技术应用

    udev配置管理

    IP SAN构建

         

    存储就是根据不丗的应用环境通过采取合理、安全、有效的方式将数据保存到某些介质上并能保证有效的访问

    一方面它是数据临时或长期驻留的物理媒介

    另一方面,它是保证数据完整安全存放的方式或行为

    存储就是把这两个方面结合起来,向客户提供一套数据存放解决方案

         

    应用》》文件系统》》存储方式》》存储介质

         

    文件级        远程访问是一个文件夹

    块级别        远程访问是一块磁盘

         

         

    SCSI小型计算机系统接口

    Small Computer SystemInterface

    作为输入/出接口,主要用于硬盘、光盘等设备

         

    DAS直连式存储

    Direct-Attached Storage

    将存储设备通过SCSI接口或光纤通道直接连接到计算机上

    不能实现数据与其他主机的共享

    占用服务器操作系统资源,如CPU、IO等

    数据量越大,性能越差

         

    NAS网络技术存储

    Network-Attached Storage

    通过网络交换机连接存储系统和服务器,建立专门用于数据存储的私有网络

    用户通过TCP/IP协议访问数据,采用标准的NFS/HTTP/CIFS等

         

    SAN存储区域网络

    Storage Area Network

    通过光纤交换机、光纤路由器、光纤集线器等设备将磁盘阵列、磁带等存储设备与相关服务器连接起来,形成专网网络

    组成部分

    连接设备。如路由器、光纤交换机

    接口。如SCSI、FC

    通信协议。如IP、SCSI

         

    FC光纤通道

    Fibre Channel

    一种适合于千兆数据传输的、成熟而安全解决方案

    与传统的SCSI相比,FC提供更高的数据传输速率、更远的传输距离、更多的设备连接支持以及更稳定的性能、更简易的安装

         

    FC主要组件

    光纤

    HBA(主机总线适配置器)

    用于连接主机到光纤通道网络

    主机中显示为SCSI适配器

    减轻IO数据对处理器的负载

    支持多路径

    FC交换机

    提供高速、无阻塞的设备连接

    为扩展性提供更多端口

         

    FC交换机交换拓扑

    点到点:point-to-point

    简单将两个设备互连

    忆裁定的环路:arbitrated loop

    可多达126个设备共享一段信道或环路

    交换式拓扑:switched fabric

    所有设备通过光纤交换机互连

         

    ISCSI

    Internet SCSI

    IETF制定的标准,用于将SCSI数据块映射为以太网数据包

    是一种基于IP Storage理论的新型存储技术

    将存储行业广泛应用的SCSI接口技术与IP网络相结合

    可以IP网络上构建SAN

    最好初由Cisco和IBM开发

         

    ISCSI优势

    基于IP协议技术的标准

    允许网络在TCP/IP协议上传输SCSI命令

    相对FC SAN,ISCSI实现的IP SAN 投资更低

    解决了传输效率、存储容量、性、开放性、安全性等方面的问题

    没有距离限制

         

    ISCSI组成

    客户端

    ISCSI Initiator:软件实现,成本低、性能较低

    ISCSI HBA:硬件实现,性能好,成本较高

    存储设备端    ISCSI Target

    以太网交换机

         

    ISCSI工作原理

    当ISCSI主机应用程序发出数据读写请求后,操作系统会生成一个相应的SCSI命令

    SCSI命令在ISCSI initiator层被封装成ISCSI消息包并通过TCP/IP传送

    设备侧的ISCSI target层解开ISCSI消息包,得到SCSI命令的内容,然后传送给SCSI设备执行

       

    ISCSI配置步骤

    Target端

    选择target名称

    安装ISCSI target

    准备用于target的存储

    配置target

    启用服务

    Initiator端

    安装initiator

    配置initiator并启动服务

       

    ISCSI target命名

    建议采用IQN(ISCSI限定名称)

    全称必须全局唯一

    ISN格式:iqn.<date_code>.<reversed_domain>.<string>[:<substring>]

    命名示例:

    iqn.2013-01.com.tarena.tech:sata.rack2.disk1

       

    查询yum仓库    yum list |grep target

    安装    yum install –y scsi-target-utils

    查看ISCSI target信息    yum info scsi-target-utils

    配置临时生产,命令复杂

    创建target    #tgtadm --lld iscsi --op new --mode target --tid 1 -T iqn.2016-10.com:disk1

    导入本地块设备 #tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 --b /dev/vol0/iscsi1

    配置ACL #tgtadm --lld iscsi --op bind --mode target --tid 1 -I 192.168.100.100

       

    配置永久生效,配置相对简单

    <target iqn.2016-10.com:disk1>

    /dev/vol0/iscsi1

    initiator-address 192.168.100.100

       

    控制服务 #service tgtd start

    设置服务开机运行 #chkconfig tgtd on

    查看生效信息 #tgt-admin –s

       

    udev配置管理

    设备文件管理方法

    devfs

    linux早期采用的静态管理方法

    /dev目录下有大量静态文件

    绝大多数文件没有对应的硬件连接

    内核版本2.6.13开始被完全取代

    udev

    只有连到系统上来的设备才在/dev下创建设备文件

    与主、次设备编号无关

    为设备提供持久、一致的名字

       

    接入设备事件

    内核发现设备并导入设备状态到sysfs

    udev接到事件通知

    udev创建设备节点或是运行指定程序

    udev通知hald守护进程

    HAL探测设备信息

    HAL创建设备对象结构

    HAL通过系统消息总线广播该事件

    用户程序也可以监控该事件

       

    udev事件监控 #udevadm monitor

       

    udev

    从内核收到添加/移除硬件事件时,udev将会分析:

    /etc/udev/rules.d目录中的规则

    根据规则中的命令产生哪些输出

    /sys目录下信息

    基于分析结果,udev会:

    处理设备命名

    决定要创建哪些设备文件或链接

    决定如何设备属性

    决定触发哪些事件

       

    配置udev

    主配置文件/etc/udev/udev.conf

    udev_root:创建设备文件位置,默认为/dev

    udev_rules:udev规则文件位置,默认为/etc/udev/rules.d

    udev_log:syslog优先级,缺省为err

       

    udev规则

    文件位置及格式    /dev/udev/rules.d/<rule_name>.rules

    例:75-custom.rules

    规则格式

    <match-key><op><value>[,..]<assianment-key><op>value[,..]

    BUS=="usb",SYSFS{serial}=="20161010111111d11111",NAME="udisk"

       

    udev匹配操作

    操作符

    ==:表示匹配

    !=:表示不匹配

       

    匹配示例

    ACTION=="add"

    KERNEL=="ad[a-z]1"

    KERNEL=="scsi"

    BUS=="scsi"

    DRIVER!="ide-cdrom"

    PROGRAM=="myapp.pl",RESULT=="test"

       

    udev赋值操作

    操作符

    =:指定赋予的值

    +=:添加新值

    =:指定值,且不允许被替换

    示例

    NAME="udisk"

    SYMLINK+="data1"

    OWNER="student"

    MODE="0600"

       

    udev规则替换

    可以简化或缩写规则

    例:KERNEL=="sda*",SYMLINK="iscsi%n"

    常用替代变量

    %k:内核所识别出来的设备名,如sdb1

    %n:设备的内核编号,如sda3中的3

    %p:设备路径,如/sys/block/sdb/sdb1

    %%:%符号本身

       

    IP SAN概述

    SAN是一种将存储设备、连接设备和连接集成在一个高速网络中的技术

    早期的SAN采用的是光纤通道(FC,Fiber Channel)技术

    到了ISCSI协议出现以后,为了区分,业界就把SAN分为FC SAN和IP SAN

    借助IP SAN,基于ISCSI流高速交换平台,运行带内(in-band)虚拟化存储管理软件,将各种存储设备(包括磁盘、磁带等)联接起来

       

    IP SAN优点

    共享了昂贵的存储资源,提高了存储设备的利用率

    集中化的虚拟存储池方式所提供的存储资源分配与管理,节省了传统的直连式存储设备多路并行管理费用

    由于支持存储子系统的IP SAN存储区域网与通信子系统构建的应用网是丗一种网络架构,管理人员可以将原来在应用网络通信技术方面积累的知识和经验,充分应用于存储子系统

       

    FreeNAS

    FreeNAS是IP SAN的一种解决方案

    FreeNAS是一套免费的NAS服务器,它能将一部普通PC变成网络存储服务器

    该软件基于FreeBSD,Samba及PHP

    支持CSFI(samba),FTP,NFS,SoftwareRAID(0,1,5)及web界面的设定工具

    用户可通过Windows、Macs、FTP、SSH及网络文件系统(NFS)来访问存储服务器

       

    FreeNAS配置步骤

    下载镜像并安装

    配置FreeNAS的网络参数

    通过WEB页面管理FreeNAS

    设备管理员密码

    创建用户

    添加数据盘

    配置网络共享服务

    客户端连接验证

       

    准备共享存储

    文件共享存储

    文件系统格式

    UFS:Unix文件系统。不支持卷管理、RAID等

    ZFS:Zettabyte文件系统,最初由SUN公司为solaris 10开发。拥有自优化,自动校验数据完整性,存储池/卷系统易管理等诸多优点

    FreeNAS支持的共享方法

    CIFS/SAMBA

    NFS

    AFP:Apple Filling Protocol

     

    实验

    配置ISCSI服务

    yum install -y scsi-target-utils

    service tgtd start

    创建target

    # tgtadm --lld iscsi --op new --mode target --tid 1 -T iqn.2016.10.com.test.www.iscsi

    为target导入本地磁盘    将/dev/myvg/iscsi lv导入

    # tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/myvg/iscsi

    配置ACL

    # tgtadm --lld iscsi --op bind --mode target --tid 1 -I 192.168.100.0/24

    将三条命令加入开机启动文件

    客户端安装软件

    # yum -y install iscsi-initiator-utils

    客户端探测服务器共享

    iscsiadm -m node -T iqn.2016.10.com.test.www:iscsi -p 192.168.100.100:3260 -l

    iscsiadm -m node -T iqn.2016.10.com.test.www:iscsi2 -p 192.168.100.100:3260-l

    parted /dev/sdb mklabel gpt

    parted /dev/sdb mkpart primary 1 500

    parted /dev/sdc mklabel gpt

    parted /dev/sdc mkpart primary 1 200

    每一次需格式化

    mkfs -t ext4 /dev/sdb1

    mkfs -t ext4 /dev/sdc1

     

    编写udev规则

    vim /etc/udev/rules.d/70-usb.rules

    SUBSYSTEM=="block",ENV{DEVTYPE}="disk",KERNEL=="sdb",ENV{ID_VENDOR}=="TOSHIBA",SYMLINK="udisk",RUN+="/usr/bin/wall udisk plugged in"

    SUBSYSTEM=="block",ACTION=="add",KERNEL=="sdb[0-9]",ENV{ID_VENDOR_ID}=="0930",ENV{DEVTYPE}=="partition",NAME="udisk%n"

     

  • 相关阅读:
    Oracle 按一行里某个字段里的值分割成多行进行展示
    Property or method "openPageOffice" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by
    SpringBoot 项目启动 Failed to convert value of type 'java.lang.String' to required type 'cn.com.goldenwater.dcproj.dao.TacPageOfficePblmListDao';
    Maven 设置阿里镜像
    JS 日期格式化,留作参考
    JS 过滤数组里对象的某个属性
    原生JS实现简单富文本编辑器2
    Chrome控制台使用详解
    android权限(permission)大全
    不借助第三方网站四步实现手机网站转安卓APP
  • 原文地址:https://www.cnblogs.com/fina/p/5949987.html
Copyright © 2011-2022 走看看