自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 收藏
  • 关注

原创 Redis性能优化方案总结

1、尽量使用短的key当然在精简的同时,不要为了key的“见名知意”。对于value有些也可精简,比如性别使用0、1。2、避免使用keys *keys *, 这个命令是阻塞的,即操作执行期间,其它任何命令在你的实例中都无法执行。当redis中key数据量小时到无所谓,数据量大就很糟糕了。所以我们应该避免去使用这个命令。可以去使用SCAN,来代替。3、在存到Redis之前先把你的数据压缩下redis为每种数据类型都提供了两种内部编码方式,在不同的情况下redis会自动调整合适的编码方式。4、设置k

2021-01-14 15:03:01 718

原创 Ansible基础详解

一、概述1.1 什么是ansibleansible简介:ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:1.连接插件connection plugs:负责和被监控实现通信2.host inve

2021-01-12 15:11:06 389 1

原创 TCP与UDP的区别

一、TCP/IP网络模型计算机与网络设备要相互通信,双方就必须基于相同的方法。比如,如何探测到通信目标、由哪一边先发起通信、使用哪种语言进行通信、怎样结束通信等规则都需要事先确定。不同的硬件、操作系统之间的通信,所有的这一切都需要一种规则。而我们就把这种规则称为协议(protocol)。TCP/IP 是互联网相关的各类协议族的总称,比如:TCP,UDP,IP,FTP,HTTP,ICMP,SMTP 等都属于 TCP/IP 族内的协议。TCP/IP模型是互联网的基础,它是一系列网络协议的总称。这些协议可以

2021-01-06 08:17:13 181 1

原创 简述TCP的三次握手和四次挥手过程

TCP三次握手(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。(3)第三次握手:Client收到确认后,检查ack是否为J

2021-01-05 16:57:30 2521

原创 OpenStack-placement模块部署

1.1 创建数据库实例和数据库用户[root@ct ~]# mysql -uroot -pMariaDB [(none)]> CREATE DATABASE placement;MariaDB [(none)]> GRANT ALL PRIVILEGES ON placement.* TO'placement'@'localhost' IDENTIFIED BY 'PLACEMENT_DBPASS';MariaDB [(none)]> GRANT ALL PRIVILEGES O

2021-01-04 17:23:59 398

转载 Mysql主从基本原理,以及读写分离导致主库从库数据不一致问题

1、Mysql的主从同步就是当master(主库)发生数据变化的时候,会实时同步到slave(从库)。2、主从复制可以水平扩展数据库的负载能力,容错,高可用,数据备份。3、不管是delete、update、insert,还是创建函数、存储过程,都是在master上,当master有操作的时候,slace会快速的接受到这些操作,从而做同步。主要的实现原理:1、在master机器上,主从同步时间会被写道特殊的log文件中(binary-log);2、在slave机器上,slave读取主从同步事件,并根

2020-12-30 16:32:16 527

原创 什么是耦合、解耦

一、耦合1、耦合是指两个或两个以上的体系或两种运动形式间通过相互作用而彼此影响以至联合起来的现象。2、在软件工程中,对象之间的耦合度就是对象之间的依赖性。对象之间的耦合越高,维护成本越高,因此对象的设计应使类和构件之间的耦合最小。3、分类:有软硬件之间的耦合,还有软件各模块之间的耦合。耦合性是程序结构中各个模块之间相互关联的度量。它取决于各个模块之间的接口的复杂程度、调用模块的方式以及哪些信息通过接口。二、解耦1、解耦,字面意思就是解除耦合关系。2、在软件工程中,降低耦合度即可以理解为解耦,模块

2020-12-29 09:37:24 3418

原创 OpenStack之核心Nova

一 简介:Nova是OpenStack云中的计算组织控制器。支持OpenStack云中实例(instances)生命周期的所有活动都由Nova处理。这样使得Nova成为一个负责管理计算资源、网络、认证、所需可扩展性的平台。但是,Nova自身并没有提供任何虚拟化能力,相反它使用libvirt API来与被支持的Hypervisors交互。Nova 通过一个与Amazon Web Services(AWS)EC2 API兼容的web services API来对外提供服务。总的来说:nova服务是open

2020-12-28 18:46:56 1428

原创 启动容器时报错:iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 1217 -j DNAT --to-de

启动一个nginx容器出现以下错误docker: Error response from daemon: driver failed programming external connectivity on endpoint runoob-nginx-test (db3f1da903aa7c9e6623ae82524c023bc5bf18794ff77ed452421624df9880cf): (iptables failed: iptables --wait -t nat -A DOCKER -p t

2020-12-28 13:54:23 290 1

原创 glance服务部署

创建数据库实例和数据库用户[root@ct ~]# mysql -u root -pMariaDB [(none)]> CREATE DATABASE glance;MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'GLANCE_DBPASS';MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO.

2020-12-23 14:43:04 637

原创 报错 -bash: openstack-config: command not found

解决办法yum install -y openstack-utils测试

2020-12-21 17:28:30 1348

原创 解决RabbitMQ报错 Error: unable to connect to node rabbit@localhost: nodedown

错误现象如下:解决办法:ps -ef | grep rabbitmq | grep -v grep | awk '{print $2}' | xargs kill -9 #将mq的进程杀掉rabbitmq-server -detached #启动mq查询mq的状态rabbitmqctl status测试:

2020-12-21 16:16:47 1480

原创 OpenStack之glance服务

一 Glance简介:在早期的OpenStack版本中,Glance只有管理镜像的功能,并不具备镜像存储功能。现在,Glance已发展成为集镜像上传、检索、管理和存储等多种功能的OpenStack核心服务。Glance(OpenStack Image Service)是一个提供发现,注册,和下载镜像的服务。Glance 提供了虚拟机镜像的集中存储。通过 Glance 的 RESTful API,可以查询镜像元数据、下载镜像。虚拟机的镜像可以很方便的存储在各种地方,从简单的文件系统到对象存储系统(比如 O

2020-12-21 08:11:58 1160

原创 OpenStack 核心组件部署

一 OpenStack组件安装顺序:Keystone(apache)——glance——nova——neutron部署openstack组件时,需要先安装认证服务(keystone),认证服务是使用apache来运行的,安装完成后才可以创建并管理账号,以及后续的安装镜像(glance)、计算服务(nova)、网络服务(neutron)。nova和neutron服务又分为管理段和客户端,所以需要在openstack的控制节点安装nova和neutron的管理端,在创建虚拟机的node节点上安装nova和

2020-12-16 17:01:26 430

原创 Failed to discover available identity versions when contacting http://controller:5000/v3. Attempting

Failed to discover available identity versions when contacting http://controller:5000/v3. Attempting to parse version from URL.Unable to establish connection to http://controller:5000/v3/auth/tokens:HTTPConnectionPool(host=‘controller’, port=5000): Max r

2020-12-16 16:05:44 2895

原创 linux 命令终端提示符显示-bash-4.2#解决方法

突然发现root登录的CRT的终端提示符显示的是-bash-4.2# 而不是root@主机名 + 路径的显示方式。搞了半天也不知道为什么出现这种情况。今天终于搞定这个问题,原因是root在/root下面的几个配置文件丢失,丢失文件如下:1、.bash_profile2、.bashrc以上这些文件是每个用户都必备的文件。使用以下命令从主默认文件重新拷贝一份配置信息到/root目录下cp /etc/skel/.bashrc /root/cp /etc/skel/.bash_profile /ro

2020-12-16 15:49:41 251

原创 OpenStack环境部署

资源规划:主机名网卡内存加硬盘ctvm1 192.168.18.10 NET:192. 168.17.118G+300Gc1vm1 192.168.18.20 NET: 192.168.17.128G+300Gc2vm1 192.168.18.30 NET: 192.168.17.138G+300G步骤:1、基础环境依赖包yum -y install net-tools bash-completion vim gcc gcc-c++ make pc

2020-12-15 17:00:14 176

原创 从基础到理解——OpenStack的详解之路

一 Openstack介绍是美国国家宇航局(NASA)和Rackspace合作开发的一个开源项目,目的是为公有云和社区云提供软件,但因其灵活性,也可以定制私有云。它是为云计算服务的,提供存储空间、计算能力等资源服务的Web Service。简单来说,OpenStack就是一个操作系统,一套软件,一套IaaS(基础设施即服务)软件,对资源进行管理,并且以服务的形式提供给上层应用或者用户去使用。二 云计算的三种服务模式2.1、基础设施及服务(Infrastructure as a Service,Ia

2020-12-10 15:20:22 535 1

原创 KVM虚拟化平台部署

一、虚拟机资源CPU:双核双线程-CPU虚拟化开启内存:8G硬盘:300G双网卡:单网卡操作系统:Centos 7.6(1810)二、安装KVM2.1 确保yum安装正确2.2 设置DNS反向解析(是否反解DNS,设置为NO可以让客户端连接服务器更快)[root@kvm ~]# vim/etc/ssh/sshd_configUseDNS no #取消DNS注释,改为NO安装KVM基本组件yum groupinstall -y "GNOME Desktop" #安装 GNOME 桌面

2020-12-08 16:45:01 250

原创 ERROR : 重启网卡失败 Job for network.service failed because the control process exited with error code

如上图,突然出现这个问题,解决问题办法1.和 NetworkManager 服务有冲突,这个好解决,直接关闭 NetworkManger 服务就好了, service NetworkManager stop,并且禁止开机启动 chkconfig NetworkManager off 。之后重启就好了。2.设定开机启动一个名为NetworkManager-wait-online服务,命令为: systemctl enable NetworkManager-wait-online.service3.和.

2020-12-08 13:53:23 3463

原创 虚拟化技术-KVM详解

一、 KVM概述1.1 KVM 即 Kernel-based Virtual Machine 基于内核的虚拟机。KVM,是一个开源的系统虚拟化模块,自 Linux 2.6.20 之后集成在 Linux 的各个主要发行版本中。它使用 Linux 自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM 目前已成为学术界的主流 VMM(虚拟机监控器)之一。KVM 的虚拟化需要硬件支持(如 Intel VT 技术戒者 AMD V 技术)。是基于硬件的完全虚拟化。而 Xen 早期则是基于软件模拟的 Par

2020-12-07 17:41:45 5936

原创 Docker 安全管理详解

一 Docker容器与虚拟机的区别1.1、隔离与共享虚拟机通过添加Hypervisor层,虚拟出网卡、内存、CPU等虚拟硬件,再在其上建立虚拟机,每个虚拟机都有自己的系统内核。而Docker容器则是通过隔离的方式,将文件系统、进程、设备、网络等资源进行隔离,再对权限、CPU资源等进行控制,最终让容器之间互不影响,容器无法影响宿主机。容器与宿主机共享内核、文件系统、硬件等资源。1.2、性能与损耗与虚拟机相比,容器资源损耗要少。同样的宿主机下,能够建立容器的数量要比虚拟机多。但是,虚拟机的安全性要比容器

2020-12-03 17:14:37 315

原创 Docker之Cgroup详解

一、Cgroup简介1.1 什么是CgroupDocker通过 Cgroup 来控制容器使用的资源配额,包括 CPU、内存、磁盘三大方面, 基本覆盖了常见的资源配额和使用量控制。1.2 Cgroup的组成Cgroup 是 Control Groups 的缩写,是Linux 内核提供的一种可以限制、记录、隔离进程组所使用的物理资源(如 CPU、内存、磁盘 IO 等等)的机制,被 LXC、docker 等很多项目用于实现进程资源控制。Cgroup 本身是提供将进程进行分组化管理的功能和接口的基础结构

2020-12-03 15:29:23 1393

原创 Docker 私有仓库Harbor

一、harbor简介1.1 Harbor是什么?Harbor是VMware公司开源的企业级DockerRegistry项目,其目标是帮助用户迅速搭建一个企业级的Dockerregistry服务。它以Docker公司开源的registry为基础,提供了管理UI,基于角色的访问控制(Role Based Access Control),AD/LDAP集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文。1.2 harbor的架构主要组件包括proxy,他是一个ng

2020-12-02 16:04:02 133

原创 用docker-compose搭建consul集群环境

一、consul简介1.1 什么是consulconsul是HashCorp公司推出使用go语言编写的开源工具,用于实现分布式系统的服务发现与配置1.2 consul的特性:服务发现:支持服务发现。你可以通过 DNS 或 HTTP 的方式获取服务信息。健康检查:支持健康检查。可以提供与给定服务相关联的任何数量的健康检查(如 web 状态码或 cpu 使用率)。K/V 存储:键/值对存储。你可用通过 consul 存储如动态配置之类的相关信息。多数据中心:支持多数据中心,开箱即用。内外网的服务采用

2020-12-01 16:56:31 451

原创 Dockerfile实战----一键制作sshd、systemctln、nginx、tomcat镜像

一、使用Dockerfile制作sshd服务搭建[root@server1 ~]# cd sshd[root@server1 sshd]# vim dockerfile FROM centos:7MAINTAINER The centos projectRUN yum -y updateRUN yum -y install openssh* net-tools lsof telnet passwdRUN echo '123456' | passwd --stdin rootRUN sed -

2020-11-27 15:04:29 138

原创 Docker 数据卷容器创建

[root@server1 apache]# docker pull centos [root@server1 apache]# docker run -v /var/www:/data1 --name web2 -it centos /bin/bash #宿主机目录/var/www 挂载容器中的/data1 命令执行后自动进入容器里了[root@e90f59bde483 /]# ls bin dev home lib64 media opt root sbin

2020-11-26 16:38:15 525

原创 Docker 私有仓库简易版建立

[root@server1 apache]# docker pull registry #下载仓库镜像[root@server1 apache]# vim /etc/docker/daemon.json #在客户终端中设置,指定私有仓库位置{"insecure-registries": ["192.168.17.10:5000"], #添加虚拟机的IP地址和端口"registry-mirrors": ["https://ktuyn8y5.mirror.aliyuncs.com"]

2020-11-26 15:33:38 152

原创 Docker镜像创建的三种方式

一: Docker镜像分层二 镜像创建2.1 基于已有的镜像容器进行创建[root@server1 ~]# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESa0c6e70581d9 paigeeworld/centos7 "/bin/bash"

2020-11-26 14:37:19 992

原创 Docker基础管理操作

一 什么是Docker1.1 概念1.2 特征和虚拟机区别1.3 docker容器工作示意图1.4 三要素:容器,镜像,仓库二 部署docker2.1 安装依赖包[root@localhost ~]# yum -y install yum-utils device-mapper-persistent-data lvm22.2 设置阿里云镜像源[root@localhost ~]# yum-config-manager --add-repo https://mirrors.ali

2020-11-25 17:13:27 159

原创 MySQL5.6与5.7的区别

一、MySQL5.7对比5.6的优势1.安全性用户表 mysql.user 的 plugin字段不允许为空, 默认值是 mysql_native_password,而不是 mysql_old_password,不再支持旧密码格式;增加密码过期机制,过期后需要修改密码,否则可能会被禁用,或者进入沙箱模式;增加密码过期机制,过期后需要修改密码,否则可能会被禁用,或者进入沙箱模式;提供了更为简单SSL安全访问配置,并且默认连接就采用SSL的加密方式。2.灵活性MySQL数据库从5.7.8版本开始,也

2020-11-19 15:06:46 1512 1

原创 MySQL高级SQL语句

MySQL的进阶查询一、 按关键字排序使用ORDERBY语句来实现排序排序可针对一个或多个字段ASC:升序,默认排序方式 【升序是从小到大】DESC:降序 【降序是从大到小】ORDER BY的语法结构ORDER BY后面跟字段名准备一张成绩表语法结构1.1 单字段排序升序降序1.2 多字段排序先以前面的字段(主参考字段)排序,如果相同再按后面的字段排序二 、对结果进行分组使用GROUP BY语句来实现分组通常结合聚合函数一起使用可以按一个或多个字段对结果进行分组GROUP B

2020-11-18 09:03:50 298

原创 MHA高可用配置

一、MHA概述1、传统的MySQL主从架构存在的问题MySQL主服务器出故障后就无法写入数据了2、MHA简介一套优秀的MySQL高可用环境下故障切换和主从复制的软件MySQL故障过程中,MHA能做到0-30秒内自动完成故障切换3、MHA组成MHA Manager(管理节点)和 MHA Node(数据节点)MHA Manager 可以单独部署在一台独立的机器上,管理多个 master-slave 集群(Manger是单独一台监控master服务器健康状态的服务器。);也可以部署在一台 slav

2020-11-11 13:22:22 169 1

原创 LVS负载均衡------NAT模式

一、群集技术在实际应用中,在 Web 服务器集群之前总会有一台负载均衡服务器,负载均衡设备的任务就是作为 web 服务器流量的入口,挑选最合适的一台web服务器,将客户端的请求转发给它处理,实现客户端到真实服务端的透明转发。LVS、Nginx、HAProxy 是目前使用最广泛的三种软件负载均衡软件。1.1、适用场景对负载均衡的使用一般是随着网站规模的提升根据不同的阶段来使用不同的技术。如果是中小型的 Web 应用,比如日 PV 小于1000万,用 Nginx 就完全可以了。如果机器不少,可以用 DNS

2020-11-06 09:20:42 186

原创 MYSQL 之 读写分离

一、读写分离的概述读写分离是高性能数据库集群的一种方式,其本质是将访问压力分散到集群中的多个节点,但是没有分散存储压力。业务服务器将写操作发给数据库主机,将读操作发给数据库从机通过主从复制的方式来同步数据,再通过读写分离来提升数据库的并发负载能力。1.1、读写分离的基本原理数据库服务器搭建主从集群,一主一从、一主多从都可以。 数据库主机负责读写操作,从机只负责读操作。 数据库主机通过复制将数据同步到从机,每台数据库服务器都存储了所有的业务数据。二、怎么实现读写分离?2.1、环境准备和安装包注

2020-11-06 09:02:31 134

原创 Mysql 之主从复制

一、主从复制的概述在企业网站中,如果对数据库的读和写都在同一个数据库服务器中操作时,会有以下问题:单点故障,服务不可用无法处理大量的并发数据请求数据丢失-大灾难因此,通过主从复制的方式来同步数据。1.1、Mysql 主从复制的类型1、基于语句的复制(默认)在主服务器上执行的语句,从服务器执行同样的语句。2、基于行的复制把改变的内容复制到从服务器。3、混合类型的复制一旦发现基于语句无法精确复制时,就会采取基于行的复制。1.2、主从复制的工作过程主从复制实验操作一、设置时间同步主服务器

2020-11-05 17:10:00 84

原创 Mysql 之 完全备份+增量备份+备份恢复

一、数据备份的重要性在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果造成数据丢失的原因:程序错误人为错误计算机失败磁盘失败灾难(如火灾、地震)和偷窃二、数据库备份的分类2.1、从物理与逻辑的角度备份可分为:物理备份:对数据库操作系统的物理文件(如数据文件、日志文件等)的备份。物理备份又可以分为脱机备份(冷备份)和联机备份(热备份)。冷备份:是在关闭数据库的时候进行的。热备份:数据库处于运行状态,这种备份方法依赖于数据库的日志文件。 逻辑备份:对数据库逻辑组件(如表

2020-11-03 17:06:35 119

原创 MYSQL数据库 之 事务操作+视图+存储引擎

一、事务的概念事务是一种机制、一个操作序列,包含了一组数据库操作命令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求,即这一组数据库命令要么都执行,要么都不执行。事务是一个不可分割的工作逻辑单元,在数据库系统上执行并发操作时,事务是最小的控制单元。适用于多用户同时操作的数据库系统的场景,如银行、保险公司及证券交易系统等等。通过事务的整体性以保证数据的一致性。二、事务的ACID特点原子性(Atomicity)事务是一个完整的操作,事务的各元素是不可分的 (原子的)。事务中的所有元素必须作为一

2020-11-03 16:33:39 93

原创 MySQL数据库 之 索引

一、MYSQL的索引概述1.1、索引的作用设置了合适的索引之后,数据库利用各种快速的定位技术,能够大大加快查询速率。特别是当表很大时,或者查询涉及到多个表时,使用索引可使查询加快成干倍。可以降低数据库的IO成本,并且索引还可以降低数据库的排序成本通过创建唯一性索引保证数据表数据的唯一性可以加快表与表之间的连接在使用分组和排序时,可大大减少分组和排序时间1.2、索引的分类普通索引这是最基本的索引类型,而且它没有唯一性之类的限制。 唯一性索引这种索引和前面的”普通索引”基本相同,但有一个区别: 索引

2020-11-03 12:12:44 69

原创 Mysql 的基本命令

一、数据库的概述数据库作用:数据持久化保存,高可靠,高可用,数据的快速提取。 数据库存储类型:关系型数据库 非关系型数据库。1.1、关系型数据库其存储结构是二维表格,反映事物及其联系的数据是以表格形式保存的 在每个二维表中,每一行称为一条记录,用来描述一个对象的信息,每一列称为一个字段,用来描述对象的一个属性。关系型数据库: MySQL(oracle公司),sql server(微软公司),access(微软公司),oracle,db2(IBM公司),sybase(sybase公司)1.2、非

2020-11-03 11:59:33 131

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除