特征4v+1c
1、base 1.大数据与云计算的关系G=f(x)
x-----大数据
f------云计算
2.云计算的核心技术虚拟化
3.云计算的三种服务分类软件即服务
平台即服务
基础设施即服务
2、在WLS2 Debian上安装docker 1.1准备安装环境
win10专业版20H2
这里一定要注意,博主已经踩过坑了,因为不是这个安装环境,导致博主卸载又安装20多次docker!
1.2如果你之前安装过其它版本,先卸载
sudo apt-get remove docker docker-engine docker.io containerd runc
1.3直接使用阿里云的脚本安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
到此,脚本已经帮你安装完成!
1.4启动docker
然后发现启动失败,原因是没有该目录,下面我们创建该目录,并解决bug
#启动docker sudo service docker start #查看docker的状态 sudo service docker status #解决bug sudo touch /etc/fstab sudo update-alternatives --set iptables /usr/sbin/iptables-legacy sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy #再次启动 sudo service docker start #hello-world测试 sudo docker run hello-world
到此 安装完成!
1.5配置国内镜像
无需翻墙,可以直接加快你的下速度
#进入/etc/docker目录
cd /etc/docker
#如果没有daemon.json,创建一个
vim daemon.json
#然后添加如下内容
{
"registry-mirrors" : [
"https://lregistry.docker-cn.com" ,
"http:// hub-mirror.c.163.com",
"https:// docker.mirrors.ustc.edu.cn"
]
}
关于docker的使用,敬请期待后续更新!
Docker: docker国内镜像加速
创建或修改letcl/dockerldaemon.json文件,修改为如下形式
电
拉取nginx
sudo docker pull nginx
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ECwKKda-1639736259747)(C:UsersAi’r’lieAppDataRoamingTyporatypora-user-imagesimage-20210929011823575.png)]
启动nginx镜像
sudo docker run -itd -p 8080:80 --name nginx nginx
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JiN9ICX5-1639736259749)(C:UsersAi’r’lieAppDataRoamingTyporatypora-user-imagesimage-20210929012004915.png)]
访问端口
curl http://localhost:80803、虚拟化技术
硬件 操作系统 软件
1.优势
提高资源的利用率
资源相互隔离(保护软件的安全性)
方便资源管理
2.缺点
使物理机器负载重
3.虚拟机在计算机体系机构
docker-------操作系统级别
win:可以实现软件虚拟化(macos上可以使用windos的软件)
虚拟化的核心CPU 内存 IO(访问磁盘、键盘、外设)
4.桌面虚拟化
服务器:存资源
客户端:负责显示和输入
优点:易于维护,动态分配资源
缺点:非常依赖于网络
5.网络虚拟化
虚拟局域网:
把网络划分为不同的段 ---------学生区、教师区、办公区
4、虚拟化平台平台搭建&运行 ---------ESX
平台管理 ------Vcenter
1.虚拟化平台架构?
2.如何搭建数据机房?
存储:数据可共享
硬盘:数据只能在一台机器上
mano编辑器
5、dockerwhat?-------基于容器技术的轻量级虚拟化解决方案
镜像----Docker镜像就好像是一个模板,可以通过这个模板来创建容器服务,tomcat镜像 = =>run= =>tomcat01容器(提供服务),通过这个镜像可以创建多个容器(服务或者项目就是运行在容器内)
镜像里面要编辑还得安装vim,可以理解为在一个校Linux里面安装了一个软件
容器----Docker利用容器技术,独立运行一个或者一组应用,通过镜像来创建的 启动,停止,删除,基本命令 目前就可以把这个容器理解为简单的linux系统
数据卷-----用来做目录映射 (如tomacat到MySQL的交互)—主机和容器之间可以做目录映射
链接------容器与容器之间的交互
仓库-----仓库就是存放镜像的地方,分为私有仓库或者共有仓库Docker Hub,阿里云都有仓库(配置镜像加速)
端口映射:将容器的端口映射到主机端口 -----------【宿主机:容器】
快速部署:
数据库不适合放在docker上
大型环境------》k8s
书本推荐:
自己动手写docker
6、k8s管理容器&自动化
IP地址查询
ip addr show eth0
步骤:
Docker Compose 类似配置文件(可以自动化部署)
配置文件:txt —>xml—>json----->yml(使用缩进结构)
安装流程:mysql---->tomcat
link----链接不同的容器
【自己练习】部署mariadb
云计算核心技术----------->虚拟化
hadop----分布式大数据平台(分布式存储)
分类 聚类 挖掘
1、HDFDShdop的文件系统
mapridus分布式计算,与硬件进行交互
实现增删改查
2、RDDresillient distributes dataset----弹性分布式数据集
2.1特性–高效容错 2.2spark—hadoophadoop:hdfsmryarn----稳定
spark:速度快
3、Spark MLib(spark机器学习库) 3.1spark mylib简介什么是机器学习?
利用以往的数据优化计算机性能标准
mylib
分类:是属于监督学习的一种。监督学习就是原始数据包括x和y。x就是代表了我们的数据属性(空间特征),y代表了模型学习的目标。分类就是y是离散值。
聚类:物以类聚。是属于非监督学习的一种。非监督学习就是没有y。
回归:
协同过滤:
升降维:
监督学习:部分模型输入和对应的理想输出是已知的
非监督学习:通常标准输出是未知的
3.2特征提取 4、分布式数据库–Hbase安装
root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker pull harisekhon/hbase:1.31.3: Pulling from harisekhon/hbasecd784148e348: Pull complete9375f15adfac: Pull completebd1652f47081: Pull complete14b70f0f559e: Pull completee76e1b28b55c: Pull complete917179dcefda: Pull complete4adad1f1ef2b: Pull complete209dd8366d03: Pull complete5e9899213c00: Pull completeDigest: sha256:c4e4aba496437bb5edcb6d94c9dc0283871c3710757642bc5b6790bbf6ac45edStatus: Downloaded newer image for harisekhon/hbase:1.3docker.io/harisekhon/hbase:1.3
启动
root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -d --name hbase001 -p 16010:16010 harisekhon/hbase:1.3bf26fc45fd5c001a38cdd33c937016fcc810b16664e9265be260f702af19d868root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# ipadd eth0bash: ipadd: command not foundroot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# ip addr show eth06: eth0:mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:15:5d:02:06:98 brd ff:ff:ff:ff:ff:ff inet 172.25.142.79/20 brd 172.25.143.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::215:5dff:fe02:698/64 scope link valid_lft forever preferred_lft foreverroot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker exec -it hbase001 bashbash-4.4# hbase shell
创建l列族
hbase(main):001:0> create 't_student','info','score'0 row(s) in 1.4470 seconds=> Hbase::Table - t_studenthbase(main):002:0> desc 't_student'Table t_student is ENABLEDt_studentCOLUMN FAMILIES DEscriptION{NAME => 'info', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETeD_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}{NAME => 'score', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}2 row(s) in 0.0760 seconds
插入—更新
hbase(main):006:0> put 't_student','20191735','info:name','xwj'0 row(s) in 0.0410 secondshbase(main):013:0> put 't_student','20191735','info:age','20'0 row(s) in 0.0050 secondshbase(main):014:0> put 't_student','20191735','score:math','99'0 row(s) in 0.0040 secondshbase(main):015:0> put 't_student','20191735','score:Eng','100'0 row(s) in 0.0030 seconds#更新操作和插入操作一样hbase(main):017:0> put 't_student','20191735','info:name','XieWenJie'0 row(s) in 0.0040 seconds
查询
#全表扫扫描hbase(main):005:0> scan 't_student'ROW COLUMN+CELL 20191111 column=info:name, timestamp=1637321885567, value=LiSi 20191735 column=info:age, timestamp=1637322117867, value=20 20191735 column=info:name, timestamp=1637322847793, value=XieWJ 20191735 column=score:Eng, timestamp=1637322168543, value=100 20191735 column=score:math, timestamp=1637322151631, value=99 20192222 column=info:name, timestamp=1637322885683, value=Gouzi 20193333 column=info:name, timestamp=1637322903262, value=Tiedan 20194444 column=info:name, timestamp=1637322926146, value=Chuihu #条件查询hbase(main):006:0> get 't_student','20191735'COLUMN CELL info:age timestamp=1637322117867, value=20 info:name timestamp=1637322847793, value=XieWJ score:Eng timestamp=1637322168543, value=100 score:math timestamp=1637322151631, value=991 row(s) in 0.0190 seconds
删除
#条件删除hbase(main):008:0> delete 't_student','20191735','score:math'0 row(s) in 0.0180 secondshbase(main):009:0> get 't_student','20191735'COLUMN CELL info:age timestamp=1637322117867, value=20 info:name timestamp=1637322847793, value=XieWJ score:Eng timestamp=1637322168543, value=1001 row(s) in 0.0070 secondshbase(main):010:0>5、实时计算系统—Storm 6.hive数据仓库 实验
nginx 个人主页
root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie/WLS2Share# docker run -itd -p 3128:80 -v /mnt/c/Users/Ai'r'lie/WLS2Share:/usr/share/nginx/html nginxd7f660b9f1d5daf0d1c8d2221764f320299b57ca151756a25411fa13ae1a49d0实验部分 实验二
root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd --name dbmysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root12345 mariadb82552e048bc7a2d535cec93aff2e7692b911135eeb68010da697c3c41129591broot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker psConTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES82552e048bc7 mariadb "docker-entrypoint.s…" 23 seconds ago Up 21 seconds 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp dbmysqlroot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd -p 8080:8080 --link dbmysql:dbmysql -v /home/whoami/web --name tomcat tomcat88208b3d2879e06c9d9facebb835dce4e123d6bb04c8e0947f0fcda8e70f23b9root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker psConTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES88208b3d2879 tomcat "catalina.sh run" 16 seconds ago Up 15 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp tomcat82552e048bc7 mariadb "docker-entrypoint.s…" 4 minutes ago Up 4 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp dbmysqlroot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker exec -it 82552e048bc7"docker exec" requires at least 2 arguments.root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker exec -it 82552e048bc7 bashroot@82552e048bc7:/# mysql -uroot -pEnter password:root12345Welcome to the MariaDB monitor. Commands end with ; or g.Your MariaDB connection id is 7Server version: 10.6.5-MariaDB-1:10.6.5+maria~focal mariadb.org binary distributionCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.MariaDB [(none)]> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys |+--------------------+4 rows in set (0.000 sec)MariaDB [(none)]> create database test -> ;Query OK, 1 row affected (0.000 sec)MariaDB [(none)]> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys || test |+--------------------+5 rows in set (0.000 sec)MariaDB [(none)]> use test;Database changedMariaDB [test]> create table student( -> sid int primary key, -> name varchar(20), -> sex int -> );Query OK, 0 rows affected (0.020 sec)MariaDB [test]> insert into student (sid,name,sex) values(1,'XWJ',1);Query OK, 1 row affected (0.010 sec)MariaDB [test]> insert into student (sid,name,sex) values(2,'DL',0);Query OK, 1 row affected (0.003 sec)MariaDB [test]> select * from student;+-----+------+------+| sid | name | sex |+-----+------+------+| 1 | XWJ | 1 || 2 | DL | 0 |+-----+------+------+2 rows in set (0.000 sec)MariaDB [test]> delete student where sid =2;ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'where sid =2' at line 1MariaDB [test]> delete from student where sid =2;Query OK, 1 row affected (0.009 sec)MariaDB [test]> select * from student;+-----+------+------+| sid | name | sex |+-----+------+------+| 1 | XWJ | 1 |+-----+------+------+1 row in set (0.000 sec)MariaDB [test]> exitByeroot@82552e048bc7:/#
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UdXzKQIj-1639736259750)(C:UsersAi’r’lieAppDataRoamingTyporatypora-user-imagesimage-20211129092622621.png)]
实验三root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd --name dbmysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root12345 mariadbe6bb25a2a38301a5538e5d841cbcfc0f76dc4c26723532600041e4b53c1eef58root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd -p 8080:8080 --link dbmysql:dbmysql -v d:/web:/usr/local/tomcat/webapps/ --name tomcat tomcatdocker: Error response from daemon: invalid mode: /usr/local/tomcat/webapps/.See 'docker run --help'.root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker ps -aConTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESe6bb25a2a383 mariadb "docker-entrypoint.s…" 19 seconds ago Up 18 seconds 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp dbmysqlroot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie#root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd -p 8080:8080 --link dbmysql:dbmysql -v /mnt/d/web:/usr/local/tomcat/webapps/ --name tomcat tomcat722dd0e9c5c3a46d10c69b3cce2a3f63ec7c360a32649c7061a8330fb56ddf0aroot@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd -p 80:80 --name nginx nginxdc19f3d09f4ab96fe99e572ae5e77936a1a3d33229cdbcdf799fba152c885dc4root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd -p 7070:8080 --link dbmysql:dbmysql -v /mnt/d/web:/usr/local/tomcat/webapps/ --name tomcat70 tomcate48287cac04072cedeefa78c1b96270dc4d52a803b4c50ad9923abec82eeed26root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker run -itd -p 9090:8080 --link dbmysql:dbmysql -v /mnt/d/web:/usr/local/tomcat/webapps/ --name tomcat90 tomcat15959c838d447192b438e7503ab8629efde71336327b99b4e2ba00fa7804cb81root@LAPTOP-HICKSJ8U:/mnt/c/Users/Ai'r'lie# docker psConTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES15959c838d44 tomcat "catalina.sh run" 4 minutes ago Up 4 minutes 0.0.0.0:9090->8080/tcp, :::9090->8080/tcp tomcat90e48287cac040 tomcat "catalina.sh run" 4 minutes ago Up 4 minutes 0.0.0.0:7070->8080/tcp, :::7070->8080/tcp tomcat70dc19f3d09f4a nginx "/docker-entrypoint.…" 12 minutes ago Up 12 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp nginx722dd0e9c5c3 tomcat "catalina.sh run" 13 minutes ago Up 13 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp tomcate6bb25a2a383 mariadb "docker-entrypoint.s…" 14 minutes ago Up 14 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp dbmysql
方便操作
docker stop 8223a0183c41 70a35f64f326 e6622a27ab1a bee65314f16b 2a7a1c7e4967docker run -itd -p 8080:8080 --link dbmysql:dbmysql -v /mnt/d/web:/usr/local/tomcat/webapps/ --name tomcat 782e9e4f5d15 docker rm -f $(docker ps -aq)
反向代理和负载均衡
-
查看容器的IP地址
sudo docker network inspect bridge
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rt2TvHC0-1639736259751)(C:UsersAi’r’lieAppDataRoamingTyporatypora-user-imagesimage-20211209183947145.png)]
-
配置nginx负载均衡
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CL5WKLOB-1639736259752)(C:UsersAi’r’lieAppDataRoamingTyporatypora-user-imagesimage-20211209184208276.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FZsAz6KW-1639736259753)(C:UsersAi’r’lieAppDataRoamingTyporatypora-user-imagesimage-20211209184402454.png)]
然后重启nginx
docker restart nginx
容器与主机之间进行文件拷贝
容器----》主机
docker cp nginx:/etc/nginx/conf.d/default.conf /mnt/d/web/
主机----》容器
docker cp /mnt/d/web/default.conf nginx:/etc/nginx/conf.d/
停止容器
docker stop 57e69d520a6b cdbf0cc979ee 01eb13f38c13 e49814001c82 8878583299cd



