CentOS 7上搭建Spark3.0.1+ Hadoop3.2.1分布式集群

CentOS 7上搭建Spark3.0.1+ Hadoop3.2.1分布式集群

      • VMWare 安装CentOS 7
      • 使用Xshell连接虚拟机
      • 集群设置
      • 安装JDK 1.8
      • SSH 免密登陆
      • 安装hadoop 3.2
      • 安装Spark 3.0.1
      • 总结

 

VMWare 安装CentOS 7

  1. 推荐使用VMware Workstation Pro 16,下载安装即可。
  2. 下载最新的CentOS 7 Minimal-2009.iso,在虚拟机安装。推荐1G运存和20G存储。
  3. 在CentOS 7的安装过程中,需要设置root用户的密码,还可以根据需要创建单独的用户。
  4. 安装完成后,使用命令行进行更新,然后安装net-tools.x86_64,以方便查看ip地址。
    # 如果在安装时没有连接网络vi /etc/sysconfig/network-scripts/ifcfg-ens33# 将ONBOOT=no修改为yes# 重启网络服务service network restart# 更新系统yum update# 安装net-toolsyum install net-tools.x86_64# 查看ip地址ifconfig
    
    ip地址为:192.168.92.137

使用Xshell连接虚拟机

  1. 这里可以下载Xshell家庭/学校免费版,但是您需要申请才行。
  2. 文件->新建会话,信息配置可以参考如下,连接即可。
    名称主机端口用户名
    CentOS 7192.168.92.13722root
    表格中的信息,具体需要更换成您自己的。

集群设置

  1. 节点设置。
    hostname(主机名)ip地址namenode(主节点)datanode(从节点)
    master192.168.92.137TrueFalse
    slave1192.168.92.138FalseTrue
    slave2192.168.92.139FalseTrue
    slave3192.168.92.140FalseTrue
    为什么上面的ip地址是连续的呢? 这其实跟DHCP有关,下一步我们会使用克隆主机的方式来创建多个slave机器,大家可以去验证,但是可能出现与表中不一直的ip,我们根据需要修改即可。

安装JDK 1.8

  1. 在进行下一步的克隆前,我们先安装jdk-8u271-linux-x64.tar.gz,目前1.8版本的下载需要注册Oracle的账号才能够下载,有点麻烦呢。
  2. 使用SCP命令上传到master主机上,scp命令使用参考如下。
    scp local_file remote_username@remote_ip:remote_folder 
    
    参数依次是本地文件,远程用户名和远程ip,以及保存的文件夹。在PowerShell中使用如下。
    	PS E:\XunLeiDownload> scp .\jdk-8u271-linux-x64.tar.gz root@192.168.92.137:/usr/local>>> # 这是输出The authenticity of host '192.168.92.137 (192.168.92.137)' can't be established.ECDSA key fingerprint is SHA256:DjkK5V/chVHAD1SsaosqdxfH4wClmH8S6M8kxw7X/RQ.Are you sure you want to continue connecting (yes/no)?Warning: Permanently added '192.168.92.137' (ECDSA) to the list of known hosts.root@192.168.92.137's password:jdk-8u271-linux-x64.tar.gz                                                            100%  137MB  91.5MB/s   00:01    # 上传成功
    
  3. 解压jdk1.8到/usr/local路径下,
    tar -xvf jdk-8u271-linux-x64.tar.gz 
    mv jdk1.8.0_271 jdk1.8    # 重命名文件夹
    
    安装vim,编辑/etc/profile,
    yum install vim # 安装vim
    vim /etc/profile
    
    添加两行内容如下,
    export JAVA_HOME=/usr/local/jdk1.8
    export PATH=$PATH:$JAVA_HOME/bin
    
    执行source /etc/profile使环境生效,$JAVA_HOME查看是否配置成功,或者,
    java -version   
    >>>   
    java version "1.8.0_271"
    Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
    Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
    
    表示配置成功。

SSH 免密登陆

  1. 在配置ssh免密登陆之前,将master克隆3份slaves出来,然后验证其ip是否和上面所述一致,并使用Xshell连接,这样我们可以得到额外的三台机器,且都安装好Java的。
    注意:在使用克隆时,不太推荐使用链接克隆。
    使用ifconfig查看ip地址后,如下,下面将按照这个ip地址进行配置。
    hostname(主机名)ip地址namenode(主节点)datanode(从节点)
    master192.168.92.137TrueFalse
    slave1192.168.92.134FalseTrue
    slave2192.168.92.135FalseTrue
    slave3192.168.92.146FalseTrue
  2. 在master节点上更改hosts文件如下。
    vim /etc/hosts编辑,在后面添加以下行。
    192.168.92.137 master
    192.168.92.134 slave1
    192.168.92.135 slave2
    192.168.92.136 slave3
    
    其他的slave节点也应该如此。
  3. 使用以下命令,分别更改4台机器的主机名,以master节点为例。
    hostnamectl set-hostname master
    
    其他节点是slave1-3,更改完成后在Xshell中重启会话就可以发现主机名已经改变啦。
  4. 要使master和3台slave免密登陆,需先在本地机器使用ssh-keygen一个公私钥对。
    ssh-keygen -t rsa    # 生成公私钥对
    >>>
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa): 
    Created directory '/root/.ssh'.
    Enter passphrase (empty for no passphrase):   # 不用输入 
    Enter same passphrase again: 
    Your identification has been saved in /root/.ssh/id_rsa.    # 存放位置
    Your public key has been saved in /root/.ssh/id_rsa.pub.      # 公钥
    The key fingerprint is:
    SHA256:vGAdZV8QBkGYgbyAj4OkQ9GrYEEiilX5QLmL97CcFeg root@master
    The key's randomart image is:
    +---[RSA 2048]----+
    |+o++o+ ..=*o+o.  |
    |==..= o oo o .   |
    |*..o.* ..   .    |
    |=.o.+ +o .       |
    |o..+ .o.S        |
    | .. E... .       |
    |   o *  .        |
    |    + .          |
    |                 |
    +----[SHA256]-----+
    
    其他三台机器也是这样生成。
  5. 将slaves生成的所有id_rsa.pub公钥文件通过scp上传到master的/root/.ssh/目录下。
    scp id_rsa.pub root@master:/root/.ssh/id_rsa.pub.1    # slave2 对应于.2
    scp id_rsa.pub root@master:/root/.ssh/id_rsa.pub.2    # 依此类推
    # master上也要这样处理,否则就不能从slaves登陆到master,如下
    scp id_rsa.pub root@master:/root/.ssh/
    
    在master节点上,将所有的公钥文件写入authorized_keys文件中。
    cat id_rsa.pub* >> authorized_keys
    rm -rf id_rsa.pub.*     # 删除
    
    分发authorized_keys文件给slaves机器。
    scp authorized_keys root@slave1:/root/.ssh/
    scp authorized_keys root@slave2:/root/.ssh/
    scp authorized_keys root@slave3:/root/.ssh/
    
    分发known_hosts文件给slaves机器。
    scp known_hosts root@slave3:/root/.ssh/  # 其他同上
    
    这样就可以实现免密登陆啦,查看known_hosts文件如下。
    	master,192.168.92.137 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBG4pcNSq4jQmGY3JRlYoU/IssJ8gfjTZhCcqBmLlviFismkti27xJHbd0s1rcaO/MX4ORK6eUdGr2ALE/r36otk=slave1,192.168.92.134 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBG4pcNSq4jQmGY3JRlYoU/IssJ8gfjTZhCcqBmLlviFismkti27xJHbd0s1rcaO/MX4ORK6eUdGr2ALE/r36otk=slave2,192.168.92.135 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBG4pcNSq4jQmGY3JRlYoU/IssJ8gfjTZhCcqBmLlviFismkti27xJHbd0s1rcaO/MX4ORK6eUdGr2ALE/r36otk=slave3,192.168.92.136 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBG4pcNSq4jQmGY3JRlYoU/IssJ8gfjTZhCcqBmLlviFismkti27xJHbd0s1rcaO/MX4ORK6eUdGr2ALE/r36otk=
    
    符合这样的格式才可以呢。

安装hadoop 3.2

  1. 下载hadoop-3.2.1.tar.gz,通过scp上传之master节点,然后解压。
    PS E:\XunLeiDownload> scp .\jdk-8u271-linux-x64.tar.gz root@192.168.92.137:/usr/local
    tar -xvf hadoop-3.2.1.tar.gz   # 解压在/usr/local/hadoop-3.2.1
    
  2. 添加环境变量,vim /etc/profile,在最后添加以下两行。
    export HADOOP_HOME=/usr/local/hadoop-3.2.1
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME:/sbin
    
    执行以下命令source /etc/profile,使配置文件生效,并查看是否成功。
    hadoop version
    >>>
    Hadoop 3.2.1
    Source code repository https://gitbox.apache.org/repos/asf/hadoop.git -r b3cbbb467e22ea829b3808f4b7b01d07e0bf3842
    Compiled by rohithsharmaks on 2019-09-10T15:56Z
    Compiled with protoc 2.5.0
    From source with checksum 776eaf9eee9c0ffc370bcbc1888737
    This command was run using /usr/local/hadoop-3.2.1/share/hadoop/common/hadoop-common-3.2.1.jar
    
  3. 在hadoop安装目录下建立以下目录:
    mkdir tmp  # 即hadoop-3.2.1/tmp, 存储临时文件
    mkdir -p hdfs/name  # namenode的数据目录
    mkdir -p hdfs/data # datanode的数据目录
    
  4. 配置相关配置文件,在etc/hadoop目录下。
    文件介绍
    core-site.xml核心配置文件
    dfs-site.xmlhdfs存储相关配置
    apred-site.xmlMapReduce相关的配置
    arn-site.xmlyarn相关的一些配置
    workers用来指定从节点,文件中默认是localhost
    hadoop-env.sh配置hadoop相关变量
    在core-site.xml文件中指定默认文件系统和临时文件目录。
    <configuration><property><name>fs.defaultFS</name><value>hdfs://master:9000</value></property><property><name>hadoop.tmp.dir</name><value>/usr/local/hadoop-3.2.1/tmp</value></property>
    </configuration>
    
    在hdfs-site.xml中配置复制份数,datanode和namenode的目录。
    <configuration><property><name>dfs.namenode.secondary.http-address</name><value>master:50090</value></property><property><name>dfs.replication</name><value>3</value></property><property><name>dfs.namenode.name.dir</name><value>file:/usr/local/hadoop-3.2.1/hdfs/name</value><final>true</final></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop-3.2.1/hdfs/data</value><final>true</final></property><property><name>dfs.webhdfs.enabled</name><value>true</value></property><property><name>dfs.permissions.enabled</name><value>false</value></property>
    </configuration>
    
    在mapred-site.xml中指定主节点和添加classpath。
    <configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>master:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>master:19888</value></property><property><name>mapreduce.application.classpath</name><value>/usr/local/hadoop-3.2.1/etc/hadoop,/usr/local/hadoop-3.2.1/share/hadoop/common/*,/usr/local/hadoop-3.2.1/share/hadoop/common/lib/*,/usr/local/hadoop-3.2.1/share/hadoop/hdfs/*,/usr/local/hadoop-3.2.1/share/hadoop/hdfs/lib/*,/usr/local/hadoop-3.2.1/share/hadoop/mapreduce/*,/usr/local/hadoop-3.2.1/share/hadoop/mapreduce/lib/*,/usr/local/hadoop-3.2.1/share/hadoop/yarn/*,/usr/local/hadoop-3.2.1/share/hadoop/yarn/lib/*</value></property>
    </configuration>
    
    yarn-site.xml中都需要指向主节点。
    <configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.resourcemanager.address</name><value>master:8032</value></property><property><name>yarn.resourcemanager.scheduler.address</name><value>master:8030</value></property><property><name>yarn.log-aggregation-enable</name><value>true</value></property><property><name>yarn.resourcemanager.resource-tracker.address</name><value>master:8031</value></property><property><name>yarn.resourcemanager.admin.address</name><value>master:8033</value></property><property><name>yarn.resourcemanager.webapp.address</name><value>master:8088</value></property>
    </configuration>
    
    workers中指定datanode节点。
    localhost
    slave1
    slave2
    slave3
    
    在hadoop-env.sh中指定用户。
    export HADOOP_HOME=/usr/local/jdk1.8
    export HDFS_NAMENODE_USER=root
    export HDFS_DATANODE_USER=root
    export HDFS_SECONDARYNAMENODE_USER=root
    export YARN_RESOURCEMANAGER_USER=root
    export YARN_NODEMANAGER_USER=root
    
  5. 将配置好的hadoop分发到其他机器,在其他slaves机器上也要执行步骤2添加环境变量哦。
    scp -r hadoop-3.2.1 slave1:/usr/local/
    scp -r hadoop-3.2.1 slave2:/usr/local/
    scp -r hadoop-3.2.1 slave3:/usr/local/
    
  6. 格式化namenode,在master执行。
    hdfs name -format
    >> 
    2020-11-25 23:58:07,593 INFO common.Storage: Storage directory /usr/local/hadoop-3.2.1/hdfs/name has been successfully formatted.
    2020-11-25 23:58:07,640 INFO namenode.FSImageFormatProtobuf: Saving image file /usr/local/hadoop-3.2.1/hdfs/name/current/fsimage.ckpt_0000000000000000000 using no compression
    2020-11-25 23:58:07,792 INFO namenode.FSImageFormatProtobuf: Image file /usr/local/hadoop-3.2.1/hdfs/name/current/fsimage.ckpt_0000000000000000000 of size 396 bytes saved in 0 seconds .
    2020-11-25 23:58:07,807 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
    2020-11-25 23:58:07,825 INFO namenode.FSImage: FSImageSaver clean checkpoint: txid=0 when meet shutdown.
    2020-11-25 23:58:07,826 INFO namenode.NameNode: SHUTDOWN_MSG: 
    /************************************************************
    SHUTDOWN_MSG: Shutting down NameNode at master/192.168.92.137
    ************************************************************/
    
    在输出中看到Storage: Storage directory /usr/local/hadoop-3.2.1/hdfs/name has been successfully formatted.,说明格式话成功了,在下一次格式化前,需要删除hdfs和tmp目录下的所有文件,否则会运行不起来。
  7. 启动hadoop,在sbin下。
    ./start-all.sh
    >>>./start-all.sh
    Starting namenodes on [master]
    上一次登录:四 11月 26 00:08:30 CST 2020pts/5 上
    master: namenode is running as process 14328.  Stop it first.
    Starting datanodes
    上一次登录:四 11月 26 00:14:03 CST 2020pts/5 上
    slave1: WARNING: /usr/local/hadoop-3.2.1/logs does not exist. Creating.
    slave3: WARNING: /usr/local/hadoop-3.2.1/logs does not exist. Creating.
    slave2: WARNING: /usr/local/hadoop-3.2.1/logs does not exist. Creating.
    localhost: datanode is running as process 14468.  Stop it first.
    Starting secondary namenodes [master]
    上一次登录:四 11月 26 00:14:04 CST 2020pts/5 上
    Starting resourcemanager
    上一次登录:四 11月 26 00:14:09 CST 2020pts/5 上
    resourcemanager is running as process 13272.  Stop it first.
    Starting nodemanagers
    上一次登录:四 11月 26 00:14:19 CST 2020pts/5 上
    
    使用jps查看。
    jps
    >>>
    15586 Jps
    14468 DataNode
    14087 GetConf
    13272 ResourceManager
    14328 NameNode
    15096 SecondaryNameNode
    15449 NodeManager
    
    这上面显示的master节点的信息slaves节点则少了一些,可以自行查看哦。
  8. 验证,访问namenod主节点端口9870。
    service firewalld stop  # 需要关闭防火墙哦
    
    webui地址在:http://192.168.92.137:9870/
    namenode
  9. 在下面的摘要如下,可以看到确实有4个节点。
    在这里插入图片描述
  10. 查看yarn管理界面,在http://192.168.92.137:8088/cluster
    yarn
  11. 测试,向hdfs文件系统中写入一个文件。
    PS E:\XunLeiDownload> scp .\TwitterSecurity.csv root@192.168.92.137:/root
    # 这里上传一个40多兆的csv文件
    hdfs dfs -put TwitterSecurity.csv /
    
    put data可以看到确实在是三个节点上复制保存。

安装Spark 3.0.1

  1. 下载预编译hadoop3.2的版本,spark-3.0.1-bin-hadoop3.2.tgz。

  2. 使用scp上传到master节点上,然后解压,并加入相应的环境变量。

    PS E:\XunLeiDownload> scp .\spark-3.0.1-bin-hadoop3.2.tgz root@192.168.92.137:/usr/local     # 上传
    tar -xvf spark-3.0.1-bin-hadoop3.2.tgz  # 解压
    mv spark-3.0.1-bin-hadoop3.2 spark-3.0.1
    

    vim /etc/profile添加以下两行。

    export SPARK_HOME=/usr/local/spark-3.0.1
    export PATH=$PATH:$SPARK_HOME:/bin:$SPARK_HOME:/sbin
    

    source /etc/profile使配置文件生效。

  3. 进入conf文件夹,复制配置文件模板。
    cp spark-env.sh.template spark-env.sh
    在spark-env.sh后面添加以下行。

     export JAVA_HOME=/usr/local/jdk1.8
    export HADOOP_CONF_DIR=/usr/local/hadoop-3.2.1/etc/hadoop
    export SPARK_MASTER_HOST=master
    export SPARK_LOCAL_DIRS=/usr/local/spark-3.0.1
    

    cp slaves.template slaves编辑如下。

    localhost
    slave1
    slave2
    slave3
    
  4. 将spark分发给slaves机器,同时不要忘记环境变量。

    scp -r spark-3.0.1 slave1:/usr/local/
    scp -r spark-3.0.1 slave2:/usr/local/
    scp -r spark-3.0.1 slave3:/usr/local/
    
  5. 运行,进入sbin目录。

     ./start-all.sh >>>
    org.apache.spark.deploy.master.Master running as process 16859.  Stop it first.
    slave1: starting org.apache.spark.deploy.worker.Worker, logging to /usr/local/spark-3.0.1/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-slave1.out
    slave3: starting org.apache.spark.deploy.worker.Worker, logging to /usr/local/spark-3.0.1/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-slave3.out
    localhost: org.apache.spark.deploy.worker.Worker running as process 17975.  Stop it first.
    slave2: starting org.apache.spark.deploy.worker.Worker, logging to /usr/local/spark-3.0.1/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-slave2.out
    
  6. 查看,地址在:http://192.168.92.137:8080/
    spark

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/547462.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微软的SQLHelper类(含完整中文注释)

using System; using System.Data; using System.Xml; using System.Data.SqlClient; using System.Collections; namespace Book.DAL { /// <summary> /// SqlServer数据访问帮助类 /// </summary> public sealed class SqlHelper { #region 私有构造函数和方法 p…

再见安卓 你好鸿蒙,安卓,再见!你好,鸿蒙系统!

今年9月份&#xff0c;华为宣布鸿蒙OS操作系统将面向手机发布&#xff0c;今年12月份正式开放开发者Beta版本。昨天&#xff0c;华为鸿蒙OS迎来里程碑式的新进展&#xff0c;开发者Beta版本如约而至&#xff0c;正式开启线上公测招募&#xff0c;我们也可以可以一睹鸿蒙系统真容…

Kubernetes 部署 Traefik Ingress 控制器 (1.7.12)

目录[-] . 一、Ingress 介绍. 二、Traefik 介绍. 三、部署 Ingress 控制器 Traefik. 1、Traefik 两种部署方式介绍. 2、创建 Traefik 配置文件. 3、将 Traefik 配置文件挂载到 ConfigMap. 4、设置 CA 证书. 5、给节点设置 Label. 6、创建 Traefik 服务账户与角色权限. 7、创建…

Android (cocos2dx 网络访问)访问权限设置

Android开发应用程序时&#xff0c;如果应用程序需要访问网络权限,需要在 AndroidManifest.xml 中加入以下代码: 同样的如果用到其它的权限&#xff0c;也需要作出声明,部分权限列表如下: android.permission.ACCESS_CHECKIN_PROPERTIES 允许读写访问”properties”表在 checki…

获取页面所有属性并生成html6,JavaScript基础练习题(三)

一、单选题1.以下关于Javascript中事件的描述中&#xff0c;不正确的是A click——鼠标单击事件B focus——获取焦点事件C mouseover——鼠标指针移动到事件源对象上时触发的事件D change——选择字段时触发的事件正确答案: D解析:change事件为input内容发生改变时触发的事件。…

Git本地缓存问题 修改密码后git无法拉取

Git本地缓存问题 修改密码后git无法拉取 问题描述&#xff1a;使用正确的用户名和密码可以登录到Git代码仓库&#xff0c;但是在本地无法使用Git bash命令行的方式拉取代码。 问题原因&#xff1a;第一次使用Git bash方式拉取代码时&#xff0c;会根据当前的用户和密码生成一串…

Ext.Net常用方法

1、js&#xff08;Ext&#xff09;操作 Ext.Msg.alert(系统提示, 未连接血站&#xff0c;该功能暂时不能使用。); Ext.getCmp("id").getValue();Ext.getCmp("id").focus();Ext.getCmp("id").selectText(); //选中修改 if (!GridPanel1.hasSelec…

表单 单击怪异事件

<input class"big" name"gohome" type"button" id"gohome" value"回到主页" οnclick"gohome()" /> 如果上面的name、ID属性跟后面的单击事件所调用的函数名一样。则无效&#xff01;&#xff01;&#xff…

Pytorch 版YOLOV5训练自己的数据集

1、环境搭建 https://github.com/ultralytics/yolov5 2、安装需要的软件 pip install -U -r requirements.txt 3、准备数据 在data文件下建立上面三个文件&#xff08;Annotations、images与ImageSets&#xff0c;labels后续我们脚本生成&#xff09;其中Annotations存放xml…

使用SQL Server作业设置定时任务

1.开启SQL Server Agent服务 使用作业需要SQL Agent服务的支持&#xff0c;并且需要设置为自动启动&#xff0c;否则你的作业不会被执行。 以下步骤开启服务:开始-->>>运行-->>>输入"services.msc"-->>>进入服务,开启SQL Server Agent服…

ListView与GridView优化

前言 ListView是Android中最常用的控件&#xff0c;通过适配器来进行数据适配然后显示出来&#xff0c;而其性能是个很值得研究的话题。本文与你一起探讨Google I/O提供的优化Adapter方案&#xff0c;欢迎大家交流。 声明 欢迎转载&#xff0c;但请保留文章原始出处:) 博客园&…

2021安徽舒城中学高考成绩查询,2021安徽省地区高考成绩排名查询,安徽省高考各高中成绩喜报榜单...

怀宁中学芜湖2017年芜湖市高考文科头名是来自于芜湖师大附中的唐逸云&#xff0c;高考成绩653分。2017年芜湖市高考理科头名是来自于芜湖师大附中的茅志鹏&#xff0c;高考成绩676分。师大附中芜湖一中淮南淮南二中文科考生最高分631(市应届生第一名)&#xff0c;理科考生最高分…

CentOS7挂载nfs盘快速指南

A服务器做服务端&#xff1a; 1、安装nfs相关软件&#xff0c;实际上是基于rpc协议的 yum install -y nfs-utils rpcbind2、设置共享目录 mkdir -p /data/vi /etc/exports/data 192.168.139.71(rw,async,no_root_squash)#rw(来访者的权限&#xff0c;rw表示可读写&#xff0…

带毫秒的字符转换成时间(DateTime)格式的通用方法

C#自身有更好的方式&#xff0c;Net任意String格式转换为DateTime类型 原文 好久没更新日志了&#xff0c;添加个方法吧&#xff0c;本身没有什么技术可言&#xff0c;为了能方便大家&#xff0c;我稍微整理一下咯~ 带毫秒的字符转换成时间&#xff08;DateTime&#xff09…

陕西省2021年高考成绩结果查询,陕西招生考试信息网:2021年陕西高考成绩查询入口、查分系统...

【摘要】为了方便陕西高考考生能及时查询到2021年高考成绩&#xff0c;高考频道特别整理了的陕西招生考试信息网2021年陕西高考成绩查询入口、查分系统&#xff0c;考生可在成绩公布时直接点击下面的链接进行查分&#xff0c;预祝大家金榜题名&#xff01;自陕西招生考试信息网…

SpringBoot 2.3.x 分层构建 Docker 镜像实践

目录[-] . 一、什么是镜像分层. 二、SpringBoot 2.3.x 新增对分层的支持. 三、创建测试的 SpringBoot 应用. 1、Maven 中引入相关依赖和插件. 2、创建测试的 Controller 类. 3、创建 SpringBoot 启动类. 四、创建两种构建镜像的 Dockerfile 脚本. 1、普通镜像构建脚本文件 doc…

Net任意String格式转换为DateTime类型

方式一&#xff1a;Convert.ToDateTime(string) Convert.ToDateTime(string) 注意&#xff1a;string格式有要求&#xff0c;必须是yyyy-MM-dd hh:mm:ss 方式二&#xff1a;Convert.ToDateTime(string, IFormatProvider) DateTimeFormatInfo dtFormat new System.Globalizatio…

jsonp的简单学习

前言&#xff1a;说到AJAX就会不可避免的面临两个问题&#xff0c;第一个是AJAX以何种格式来交换数据&#xff1f;第二个是跨域的需求如何解决&#xff1f;这两个问题目前都有不同的解决方案&#xff0c;比如数据可以用自定义字符串或者用XML来描述&#xff0c;跨域可以通过服务…

win7台式计算机怎么连热点,怎么用台式电脑开热点,电脑怎么开热点win7

导读&#xff1a;手机是每个人的随身携带之物&#xff0c;手机的功能让越来越多的人痴迷其中&#xff0c;也正是因为这个原因&#xff0c;手机流量的消耗也越来越多&#xff0c;购买流量让我们花费了很多金钱&#xff0c;我们该如何解决这个问题呢?下面我们就一起来看看电脑的…