GlusterFS简介以及部署
shell常用功能的写法
测试IO与网络速度
使用 wget -qO- bench.sh | bash 进行测试
判断系统版本
使用系统文件来做判断。
1 | get_opsy() { |
ansible系列之六:常见疑问知识点
问题一:如何进行调试
当我们写完一个很大的一个playbook时,需要指定位置停止运行,要怎么办呢?方法如下:
- 在playbook配置
any_errors_fatal: "true",这时当出现异常时,会直接停止。
基于centos7.6制作自定义的ISO镜像
以CentOS 7.6为例
全自动安装CentOS,在生产环境下可以有效减少安装的时间,以及可以集成一些软件到镜像上,做一个定制化的处理,所以有必要进行定制化。这样就可以实现2个功能:
- 制作完成的ISO在安装过程中可以选择自定义的软件包
- 制作完成的ISO全自动安装,不需要在安装过程中进行任何选择操作
aws上传私有化centos镜像到AMI的方法
rocketMQ集群化部署以及常见运维命令
安装
打开 官方Quick Start 下载带bin版本的rocketmq,这样就不需要再次编译安装了,可以直接使用。如果下载的是带source的下载包的话,则必须使用 mvn -Prelease-all -DskipTests clean install -U 来打包。
1 | wget https://mirrors.bfsu.edu.cn/apache/rocketmq/4.8.0/rocketmq-all-4.8.0-bin-release.zip |
然后解压到指定目录即可。如果只要单机启动的话,就比较简单,运行以下命令即可:
1 | nohup sh bin/mqnamesrv & |
shell三剑客之一:grep详解
实例讲解strace的用法
zookeeper & kafka部署和使用
zookeeper
简介
ZooKeeper是一个开源的分布式应用程序协调服务,是Google的Chubby一个开源的实现。ZooKeeper为分布式应用提供一致性服务,提供的功能包括:分布式同步(Distributed Synchronization)、命名服务(Naming Service)、集群维护(Group Maintenance)、分布式锁(Distributed Lock)等,简化分布式应用协调及其管理的难度,提供高性能的分布式服务。
ZooKeeper本身可以以单机模式安装运行,不过它的长处在于通过分布式ZooKeeper集群(一个Leader,多个Follower),基于一定的策略来保证ZooKeeper集群的稳定性和可用性,从而实现分布式应用的可靠性。
keepalived几个配置问题讲解
配置
使用keepalived做主备,其中一台设置为master,一台设置为backup。当master出现异常后,backup自动切换为master。当backup成为master后,master恢复正常后会再次抢占成为master,导致不必要的主备切换。因此可以将两台keepalived初始状态均配置为backup,设置不同的优先级,优先级高的设置nopreempt解决异常恢复后再次抢占的问题。
有如下配置表示意思也比较简单,VIP为192.168.0.18,2台机器的初始state都是BACKUP,machineA的优先级是15,machineB的优先级是13,配置了/root/1.sh这个来检测服务是否正常。
machineA机器配置:
openwrt出现dnsmasq部分域名解析不了的问题
前言
最近几天在访问一些常用网站的时候,如ping.chinaz.com,出现了域名无法解析的情况,由于是常用网站,才不得不进行问题排查。网上搜索了几个方法,都是不行,如以下方法:
- 在
网络 --> DHCP/DNS --> 常规配置中,重绑定保护取消掉 openwrt路由器dnsmasq部分域名无法解析) - 在/etc/dnsmasq.conf添加配置no-resolv和server等:https://oracleblog.org/its-my-life/can-not-resolv-some-domain-name-in-openwrt/
- dnsmasq进程无法启动:http://www.openwrt.pro/post-44.html
git使用方法小结
本地文件添加到github
- 第一步生成ssh key
1 | ssh-keygen -t rsa -C "your_email@youremail.com" |
后面的 your_email@youremail.com 改为你在github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。
成功的话会在当前用户~/下生成.ssh文件夹,如我的目录是C:\Users\xxx\ .ssh,打开id_rsa.pub,复制里面的key(可以把这个公钥文件删除,只保留id_rsa私钥文件)。
回到github上,进入 Account Settings(账户配置),左边选择SSH Keys,Add SSH Key,title随便填,粘贴在你电脑上生成的key。
openssl手工生成证书以及acme.sh自动部署证书
证书简介
有关https是如何保证数据的安全证的,可以参考文章:详解https加密通信原理 ,以下简介证书相关的知识点。
我们一般在服务器上面可以使用openssl命令来生成证书的.而一般是使用X509的证书链。x509证书一般会用到三类文件,key,csr,crt。
key是私用密钥,openssl格式,通常是rsa算法
csr是证书请求文件,用于申请证书。在申请的时候,必须使用自己的私钥来签署申请,还可以设定一个密钥。
- crt是证书文件(windows下面的csr,其实是crt),是签署人用自己的key给你签署的凭证。
实战CentOS7安装且使用KVM虚拟机
镜像格式
介绍
- RAW格式是直接给云服务器进行读写的文件。RAW不支持动态增长空间,是镜像中I/O性能最好的一种格式。
QCOW2格式镜像是QEMU模拟器支持的一种磁盘镜像,是用一个文件的形式来表示一块固定大小的块设备磁盘。与普通的RAW格式镜像相比,QCOW2格式有如下几个特性:
- 支持更小的磁盘占用。
- 支持写时拷贝(CoW,Copy-On-Write),镜像文件只反映底层磁盘变化。
- 支持快照,可以包含多个历史快照。
- 支持压缩和加密,可以选择ZLIB压缩和AES加密。
VMDK是VMware创建的虚拟硬盘格式。一个VMDK文件代表VMFS(云服务器文件系统)在云服务器上的一个物理硬盘驱动。
- VHD是微软提供的一种虚拟硬盘文件格式。VHD文件格式可以被压缩成单个文件存放到宿主机的文件系统上,主要包括云服务器启动所需的文件系统。微软在Windows Server 2012中的Hyper-V引入的一个新版本的VHD格式,称为VHDX。与VHD格式相比,VHDX具有更大的存储容量。它在电源故障期间提供数据损坏保护,并且优化了磁盘结构对齐方式,以防止新的大扇区物理磁盘性能降级。
- vdi(Virtual Disk Image)是Oracle的VirtualBox虚拟机中的存储格式
k8s入门教程十五:使用ceph实现storageclass动态存储
简介
从上文我们可知,虽然K8S提供了PVC的方式进行存储的便利性,但是PV的创建还是要手工的,使用起来不是很方便,在k8s 1.4以后,kubernetes提供了一种更加方便的动态创建PV的方式,即StorageClass。使用StorageClass时无需预先创建固定大小的PV来等待使用者创建PVC使用,而是直接创建PVC即可使用。
本文主要使用Rook搭建一个ceph集群,然后使用StorageClass来直接创建PVC。
Rook与ceph
Rook 是基于Kubernetes之上,提供一键部署存储系统的编排系统。Rook 将存储软件转变成自我管理、自我扩展和自我修复的存储服务,通过自动化部署、启动、配置、供应、扩展、升级、迁移、灾难恢复、监控和资源管理来实现。Rook 底层使用云原生容器管理、调度和编排平台提供的能力来提供这些功能。