BUUCTF刷题记录 (0609)

删除命令:rm -rf nm-local-dir 这个是该目录下,其它目录用/ 查看目录:pwd 大数据基础环境搭建: 1,主办方提供服务器,用工具连接IP进入 2,在命令中用退图像化命令留出空间: systemctl set-default multi-user.target 3,重启: reboot 4,本地源配置(更具情况而定) 43 进入本地源目录: cd /etc/yum.repos.d/ yum.repos.d ls 下载本地源(平台提供): curl -o /etc/yum.repos.d/centos-Base.repo http://47.92.1.211/bigdata.repo 备份:curl -o /etc/yum.repos.d/centos1-Base.repo http://47.92.1.211/bigdata.repo mobaxterm报以下错误: /usr/bin/xauth: file /root/.Xauthority does not exist 解决方法: ls -al ~/.Xauthority (以下为三台机子的相同操作) 5,设置host,三台:(开始) hostnamectl set-hostname master hostnamectl set-hostname slave1 hostnamectl set-hostname slave2 -------------------------注(可不要)---------------------- 6,编写network文件(就master使用): //有的时候题目会给出条件,修改为内网的IP //hadoop免密登录:ssh hadoop vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=master ----------------------------------------------------------------------- 7,下载工具(-y表示同意): yum install -y net-tools 9,重启虚拟机看主机名是否修改成功: reboot bash 8,设置host地址:(ip改成自己的) vi /etc/hosts 192.168.229.130 master master.root 192.168.229.137 slave1 slave1.root 192.168.229.134 slave2 slave2.root scp /etc/hosts root@slave1:/etc/ scp /etc/hosts root@slave2:/etc/ 10,关闭防火墙:(三台都要用) systemctl stop firewalld systemctl status firewalld(看防火墙状态) 永久关闭防火墙 (---------要先关闭在用systemctl disable firewalld---------------) 11,修改时间(选到北京): tzselect(5,9,1,1) 12,下载ntp: yum install -y ntp 13,编辑ntp.conf: vi /etc/ntp.conf Server 127.127.1.0 Fudge 127.127.1.0 scp -r /etc/ntp.conf root@slave1:/etc/ scp -r /etc/ntp.conf root@slave2:/etc/ 14,启动ntp:(以下三台都要) /bin/systemctl restart ntpd.service 同步时间外网(slave1,2大约5分钟): ntpdate master 非外网: date -s 10:00 查看时间: date 设置定时任务,10分钟同步一此时间:(三台都要改) crontab -e 写入: */10 * * * * usr/sbin/ntpdata master 15,设置免密在.ssh目录下: (1)三台机子(root目录):(三台机子都要输入) ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa (2)master端,先进入.ssh目录下: cd .ssh cat id_dsa.pub >> authorized_keys 回显自己: ssh master 在退出: exit (3)slave1/2端,先进入.ssh目录下: cd .ssh scp master:~/.ssh/id_dsa.pub ./master_das.pub cat master_das.pub >> authorized_keys 回显自己: ssh slave1 ssh slave2 在退出: exit 注------------------------------------------------------------------------- xftp拖入工具,新建一个soft文件 ----------------------------------------------------------------------------- -------------------------------安装jdk---------------------------------------------------------------- 解压java: 创建文件: mkdir -p /usr/java 解压: tar -zxvf /opt/soft/jdk-8u171-linux-x64.tar.gz -C/usr/java/ 配置环境变量(此环境为三个工具的环境): vi /etc/profile 写入: #jdk export JAVA_HOME=/usr/java/jdk1.8.0_171 export CLASSPATH=$JAVA_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin/ export PATH JAVA_HOME CLASSPATH #zookeeper export ZOOKEEPER_HOME=/usr/zookeeper/zookeeper-3.4.10 PATH=$PATH:$ZOOKEEPER_HOME/bin #hadoop export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3 export CLASSATH=$CLASSPATH:$HADOOP_HOME/lib export PATH=$PATH:$HADOOP_HOME/bin #hbase export HBASE_HOME=/usr/hbase/hbase-1.2.4 export PATH=$PATH:$HBASE_HOME/bin #hive export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin export PATH=$PATH:$HIVE_HOME/bin #scala export SCALA_HOME=/usr/scala/scala-2.11.12 export PATH=$SCALA_HOME/bin:$PATH #spark export SPARK_HOME=/usr/spark/spark-2.4.0-bin-hadoop2.7 export PATH=$SPARK_HOME/bin:$PATH 环境资源生效: source /etc/profile 检测java: java -version (出现Open JDK则成功) 分发配置好的环境: scp -r /etc/profile slave1:/etc/profile scp -r /etc/profile slave2:/etc/profile 发送java环境: scp -r /usr/java/ slave2:/usr/java scp -r /usr/java/ slave1:/usr/java slave1,slave2环境资源生效:(三台都要) source /etc/profile -------------------------------安装zookeeper---------------------------------------------------------------- 安装zookeeper: 创建目录: mkdir /usr/zookeeper 解压: tar -zxvf /opt/soft/zookeeper-3.4.10.tar.gz -C/usr/zookeeper/ 进入目录: cd /usr/zookeeper/zookeeper-3.4.10/conf 复制zoo_sample.cfg:: cp zoo_sample.cfg zoo.cfg 编辑zoo.cfg: vi zoo.cfg 修改: dataDir=/usr/zookeeper/zookeeper-3.4.10/zkdata dataLogDir=/usr/zookeeper/zookeeper-3.4.10/zkdatalog (把原来的datadir删除修改) server.1=master:2888:3888 server.2=slave1:2888:3888 server.3=slave2:2888:3888 退回上一级目录: cd .. 创建zkdata,zkdatalog: mkdir zkdata mkdir zkdatalog 进入zkdata: cd zkdata 编辑myid为1: echo "1" >> myid 发送zookeeper: scp -r /usr/zookeeper/ slave1:/usr/ scp -r /usr/zookeeper/ slave2:/usr/ 分别进入zkdata修改myid为2,3:(在s) vi /usr/zookeeper/zookeeper-3.4.10/zkdata/myid 启动查看关闭zookeeper:(三台都要) /usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh start /usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh status 报错使用 /usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh stop(没有报错就不需要) 如果重启没有就删了重新装: rm -rf /usr/zookeeper/ -------------------------安装hadoop-------------------------- 安装hadoop: 创建hadoop文件: mkdir /usr/hadoop 解压: tar -zxvf /opt/soft/hadoop-2.7.3.tar.gz -C/usr/hadoop/ 进入目录: //进入hadoop的安装目录 cd /usr/hadoop/hadoop-2.7.3/etc/hadoop 文件配置: 一、配置: vi hadoop-env.sh 写入: export JAVA_HOME=/usr/java/jdk1.8.0_171 二、配置: vi core-site.xml 写入: fs.default.name hdfs://master:9000 hadoop.tmp.dir /usr/src/hadoop-2.7.3/hdfs/tmp A base of other temporary directories io.file.buffer.size 131072 fs.checkpoint.period 60 fs.checkpoint.size 67108864 三、配置: vi yarn-site.xml 写入: yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.address master:18040 yarn.resourcemanager.scheduler.address master:18030 yarn.resourcemanager.resource-tracker.address master:18025 yarn.resourcemanager.admin.address master:18141 yarn.resourcemanager.webapp.address master:18088 yarn.nodemanager.auxservices.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler 四、配置: vi hdfs-site.xml 写入: dfs.replication 2: dfs.namenode.name.dir file:/usr/src/hadoop-2.7.3/hdfs/name ture dfs.namenode.secondary.http-address master:9001 dfs.webhdfs.enable true dfs.pemissions false 五、配置: vi mapred-site.xml 写入: mapreduce.framework yarm //这里是不是错了 六、修改slaves: vi slaves 写入: slave1 slave2 编辑和写入的第二种方法: echo "slave1 slave2" >> slaves 编辑master: vi master 写入: master 编辑和写入的第二种方式: echo "master" >> master 发送Hadoop: scp -r /usr/hadoop/ root@slave2:/usr/ scp -r /usr/hadoop/ root@slave1:/usr/ 格式化出现0才算成功:(三台机子都要) hadoop namenode -format 启动和关闭能访问master:50070:(master的ip加50070的端口号) /usr/hadoop/hadoop-2.7.3/sbin/start-all.sh /usr/hadoop/hadoop-2.7.3/sbin/stop-all.sh 检查状态: jps ---------------------------------------------------安装 hbase(master进行)---------------------------------- 创建文件: mkdir -p /usr/hbase 解压: tar -zxvf /opt/soft/hbase-1.2.4-bin.tar.gz -C/usr/hbase/ 进入对应目录: cd /usr/hbase/hbase-1.2.4/conf/ 设置hbase-site.xml vi hbase-site.xml 写入: hbase.cluster.distributed true hbase.rootdir hdfs://master:9000/hbase hbase.zookeeper.quorum master:2181,slave1:2181,slave2:2181        hbase.coprocessor.master.classes        org.apache.hadoop.hbase.security.access.AccessController   hbase.coprocessor.region.classes org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.AccessController,org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint 修改hbase-env.sh: vi hbase-env.sh 写入: export HBASE_MANAGES_ZK=false export JAVA_HOME=/usr/java/jdk1.8.0_171 export HBASE_CLASSPATH=/usr/hadoop/hadoop-2.7.3/etc/hadoop 修改regionservers: vi regionservers 写入 master slave1 slave2 修改和写入改成: echo "master slave1 slave2" >> regionservers 发送hbase: scp -r /usr/hbase/hbase-1.2.4 slave1:/usr/hbase/ scp -r /usr/hbase/hbase-1.2.4 slave2:/usr/hbase/ 启动hbase: start-hbase.sh 打开hbase shell,进入hbase: hbase shell ------------------------------------安装mysql--------------------------------------------------------------------------- ---------------------------------------本地拖入mysql的repository到root目录安装----------------------------------------------------- 安装MySQL源: yum -y install mysql57-community-release-el7-7.noarch.rpm 通过yum安装MySQl: yum install -y mysql-community-server 启动MySQL: systemctl start mysqld.service 开机自起: systemctl enable mysqld.service 查看默认密码得到密码登录: grep "password" /var/log/mysqld.log Lh-q1mk hive.metastore.warehouse.dir /user/hive/warehouse javax.jdo.option.ConnectionURL jdbc:mysql://slave2:3306/hive?createDatabaseIfNotExist=true&useSSL=false javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword root 在master端: 复制文件让jline版本相同: cp /usr/hive/apache-hive-2.1.1-bin/lib/jline-2.12.jar /usr/hadoop/hadoop-2.7.3/share/hadoop/yarn/lib/ 进入目录: cd /usr/hive/apache-hive-2.1.1-bin/conf 编辑配置文件: vi hive-site.xml 写入: hive.metastore.warehouse.dir /user/hive/warehouse hive.metastore.local false hive.metastore.uris thrift://slave1:9083 在slave1中初始化数据库: schematool -dbType mysql -initSchema 在slave1启动hive服务: hive --service metastore & 在master服务端进入hive: hive 在slave2中进入MYSQL: mysql -uroot -p 进入hive库: use hive; 查看数据库: show databases; ------------------------------------环境完,运维数据,部分命令------------------------------------------------------------------ mysql命令: 进入MYSQL命令: mysql -uroot -p 看数据: show databases; 刷新权限: flush privleges; 退出命令: \q; 在slave1启动hive服务: hive --service metastore & hive命令: 进入hive命令: hive 创建text数据库: create database text; 看数据: show databases; 进入text数据库命令: use text; 建立text表并查看信息的命令(其中,a6 timestamp,时间所用数据,mysql没")"的语句): create table test2( a1 string ,a2 string ,a3 string ,a4 string ,a5 string ,a6 timestamp ) row format delimited fields terminated by ',' collection items terminated by '-' map keys terminated by ':' ; 查看表名的命令: show tables; 查看表字段内容的命令: desc test; 上传数据到hivve表上,先退出hive,利用工具将数据拖入master端的root目录: exit; 将数据放在hdfs的/,即根目录下: hdfs dfs -put /root/data.csv /data.csv 进入hive: hive hadoop根目录下,上传数据到test表: load data inpath '/data.csv' into table test; 列出前30条数据: select * from test2 limit 30; 本地上传到hive表test: load data local inpath '/root/data1.csv' overwrite into table test2; 删除表text1: drop table text1 -------------------------------------注-----需要在安装--------------------------------------------------------- ---------------------------------------------------安装 hbase(master进行)---------------------------------- 创建文件: mkdir -p /usr/hbase 解压: tar -zxvf /opt/soft/hbase-1.2.4-bin.tar.gz -C/usr/hbase/ 进入对应目录: cd /usr/hbase/hbase-1.2.4/conf/ 设置hbase-site.xml vi hbase-site.xml 写入: hbase.cluster.distributed true hbase.rootdir hdfs://master:9000/hbase hbase.zookeeper.quorum master:2181,slave1:2181,slave2:2181        hbase.coprocessor.master.classes        org.apache.hadoop.hbase.security.access.AccessController   hbase.coprocessor.region.classes org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.AccessController,org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint 修改hbase-env.sh: vi hbase-env.sh 写入: export HBASE_MANAGES_ZK=false export JAVA_HOME=/usr/java/jdk1.8.0_171 export HBASE_CLASSPATH=/usr/hadoop/hadoop-2.7.3/etc/hadoop 修改regionservers: vi regionservers 写入 master slave1 slave2 发送hbase: scp -r /usr/hbase/hbase-1.2.4 slave1:/usr/hbase/ scp -r /usr/hbase/hbase-1.2.4 slave2:/usr/hbase/ 启动hbase: start-hbase.sh 打开hbase shell,进入hbase: hbase shell ----------------------------------------spark--------------------------------------------------- 关掉hadoop安装: /usr/hadoop/hadoop-2.7.3/sbin/stop-all.sh 安装好hadoop在安装spark但要先安装------scala------: 创建文件: mkdir -p /usr/scala/ 解压: tar -zxvf /opt/soft/scala-2.11.12.tgz -C/usr/scala/ 检查: scala -version 发送scala: scp -r /usr/scala root@slave1:/usr/ scp -r /usr/scala root@slave2:/usr/ 安装spark: 创建文件: mkdir -p /usr/spark/ 解压 spark 的 tar 包: tar -zxvf /opt/soft/spark-2.4.0-bin-hadoop2.7.tgz -C/usr/spark/ 进入目录: cd /usr/spark/spark-2.4.0-bin-hadoop2.7/conf/ 复制出spark-env.sh: cp spark-env.sh.template spark-env.sh 编辑: vi spark-env.sh 写入: export SPARK_MASTER_IP=master export SCALA_HOME=/usr/scala/scala-2.11.12 export SPARK_WORKER_MEMORY=8g export JAVA_HOME=/usr/java/jdk1.8.0_171 export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3 export HADOOP_CONF_DIR=/usr/hadoop/hadoop-2.7.3/etc/Hadoop 配置 spark 从节点,修改 slaves 文件: cp slaves.template slaves 编辑slaves: vim slaves 写入: slave1 slave2 编辑master: vim master 写入: master 发送spark scp -r /usr/spark/ slave1:/usr/spark scp -r /usr/spark/ slave2:/usr/spark 启动zookeeper: /usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh start 根目录下启动hadoop /usr/hadoop/hadoop-2.7.3/sbin/start-all.sh jps是查看进程jps 启动spark集群 /usr/spark/spark-2.4.0-bin-hadoop2.7/sbin/start-all.sh 访问页面: 192.168.187.128:8080 接下来我们开启我们的 spark-shell 以及 pyspark 进入到 spark 的交互模式: 首先 spark-shell 此时进入的是 python 环境下的 spark 交互模式 根目录下 spark-shell 简单测试一下输入: print("Hello,world!") 退出: :quit 新学的: Hadoop相关命令: hadoop重启命令:hadoop namenode -format 启动hadoop: start-all .sh 查看进程:jps (五个节点都启动就配置成功) Hive安装相关命令: 开启mysql:systemctl start mysqld.service 初始化mysql:schematool -dbType mysql -initSchema 进入hive数据库:hive 创建hive数据库:creat database hive; YARN伪分布式集群: 一、配置环境变量yarn-env.sh 打开yarn-env.sh文件:vim /root/software/hadoop-2.7.7/etc/hadoop/yarn-env.sh //这里就是配置java文件给yarn配置 二、配置计算框架mapred-site.xml 将下面配置内容添加到中间 mapreduce.framework.name yarn 三、配置yarn-site.xml 打开文件:vi yarn-site.xml 写入: yarn.resourcemanager.hostname localhost yarn.nodemanager.aux-services mapreduce_shuffle 保存退出 01、启动和关闭YARN集群 先使用脚本一键启动HDFS集群:start-dfs.sh 一键启动YARN集群:start-yarn.sh / 关闭:stop-yarn.sh 使用jps看进程 配置计算框架mapred-site.xml:![](https://img2023.cnblogs.com/blog/2997185/202306/2997185-20230609210056848-1856704923.jpg) HDFS的shell操作: 一、Hadoop集群管理脚本: $HADOOP_HOME/bin目录下的Hadoop脚本时最基础的集群管理脚本,用户可以通过该脚本完成各种功能。 Hadoop脚本使用方法: hadoop [--config confdir] COMMAND (1)--config: 用于设置Hadoop配置文件目录,默认目录$HADOOP_HOME/etc/hadoop (2)COMMAND:具体的某个指令,常用命令: fs:HDFS管理命令 jar:作业提交命令 version:查看Hadoop版本 在集群正常运行的前提下,进行shell操作: hadoop fs -help ——[]表示可选参数(可填可不填),<>表示必须参数 MYSQL一些查询语句: 记录: 进入mysql命令:mysql -username -password 设置支持中文字符:Set character_set_database='utf8'; Set character_set_server='utf8'; 创建并使用数据库:create database <表名> use <表名> 创建数据表(这里就要设置主键和字符类型):create table score(表名称)(内容); 插入数据:insert into score values (1,1,'关羽',85,56,70);
posted @ 2023-06-09 21:05  kindyy  阅读(28)  评论(0)    收藏  举报