
企业自动化运维实战
文章平均质量分 63
自动化运维
小莫细说linux
这个作者很懒,什么都没留下…
展开
-
hadoop—haddop部署、yarn管理器使用、hdfs的高可用、yarn的高可用、Hbase分布式部署
1、hadoop简介原创 2022-06-07 15:08:44 · 452 阅读 · 2 评论 -
mfs分布式文件系统—mfs安装、mfs的Storage class 存储类、mfs集群热备份/高可用
1、MFS安装官网下载[root@server1 ~]# curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo 下载mfs仓库[root@server1 ~]# cd /etc/yum.repos.d/[root@server1 yum.repos.d]# cat MooseFS.repo [MooseFS]name=MooseFS $releasever - $basearch原创 2022-05-29 19:18:54 · 635 阅读 · 0 评论 -
ELK日志分析平台(三)— kibana数据可视化、kibana监控、采集日志插件filebeat
[root@foundation50 network-scripts]# cd /mnt/pub/docs/elk/7.6/[root@foundation50 7.6]# scp kibana-7.6.1-x86_64.rpm server4: 将安装包拷贝到server4上[root@server4 ~]# rpm -ivh kibana-7.6.1-x86_64.rpm 安装原创 2022-05-24 16:34:21 · 2468 阅读 · 0 评论 -
ELK日志分析平台(二)—数据采集工具logstash安装及配置
1、logstash简介2、logstash安装及配置[root@foundation50 7.6]# scp logstash-7.6.1.rpm server4: 拷贝下载的软件到server4,版本和elasticsearch保持一致[root@foundation50 docs]# cd hadoop/[root@foundation50 hadoop]# scp jdk-8u181-linux-x64.rpm server4: 拷贝下载的软件jdk到server4上[root@s原创 2022-05-18 16:42:41 · 2319 阅读 · 0 评论 -
ELK日志分析平台(一)—elasticsearch安装及配置、elasticsearch图形化插件安装
1、elasticsearch简介elastic官网2、安装及配置官方下载网站本次实验版本用7.6[root@foundation50 ~]# cd /mnt/pub/docs/elk/7.6 [root@foundation50 7.6]# scp elasticsearch-7.6.1-x86_64.rpm server1: 将下载好的elasticsearch软件包拷贝到server1上[root@server1 ~]# rpm -ivh elasticsearch-7原创 2022-05-17 09:37:32 · 495 阅读 · 0 评论 -
持续集成与持续交付(二)—ssh远程连接部署、 jenkins结合ansible部署apche
1、用ssh远程连接部署重新开一台虚拟机server6在使用ssh时需要先下载ssh插件在docker test项目上点击配置,进行配置在server6上安装docker[root@server1 yum.repos.d]# scp docker.repo server6:/etc/yum.repos.d/[root@server1 sysctl.d]# scp docker.conf server6:/etc/sysctl.d/ [root@server6 ~]# yum ins原创 2022-05-14 16:47:45 · 423 阅读 · 0 评论 -
持续集成与持续交付(一)—git工具使用、jenkins持续集成
1.git工具使用git官网[root@server5 ~]# yum install git -y 安装git[root@server5 ~]# mkdir demo 创建初始目录[root@server5 ~]# cd demo/[root@server5 demo]# git init 初始化Initialized empty Git repository in /root/demo/.git/[root@server5 demo]# l. 隐藏. .. .gi原创 2022-05-13 10:22:57 · 774 阅读 · 0 评论 -
k8s(十四)—高可用集群部署
1 部署k8s高可用原理图2 清理环境:[root@server2 helm]# kubectl drain server4 下线server4[root@server2 helm]# kubectl delete nodes server4 删除server4节点[root@server4 ~]# kubeadm reset 清掉server4上的数据[root@server2 helm]# kubectl drain server3 --ignore-daemonsets 下线ser原创 2022-04-28 16:33:14 · 1082 阅读 · 2 评论 -
k8s(十三)—Helm (未完待续)
1. 简介Helm是Kubernetes 应用的包管理工具,主要用来管理 Charts,类似Linux系统的yum。Helm Chart 是用来封装 Kubernetes 原生应用程序的一系列 YAML 文件。可以在你部署应用的时候自定义应用程序的一些 Metadata,以便于应用程序的分发。对于应用发布者而言,可以通过 Helm 打包应用、管理应用依赖关系、管理应用版本并发布应用到软件仓库。对于使用者而言,使用 Helm 后不用需要编写复杂的应用部署文件,可以以简单的方式在 Kubernetes原创 2022-04-27 10:27:30 · 3206 阅读 · 0 评论 -
k8s(十二)— HPA
HPA官网[root@foundation50 k8s]# scp hpa-example.tar server1: 将下载好的镜像拷贝到server1上[root@server1 ~]# docker load -i hpa-example.tar 导入镜像[root@server1 ~]# docker tag mirrorgooglecontainers/hpa-example:latest reg.westos.org/library/hpa-example:latest 改标签.原创 2022-04-20 16:01:02 · 1447 阅读 · 2 评论 -
k8s (十一)—资源监控(metrics-server部署、Dashboard部署)
1.metrics-server简介当发api请求时各个不同的server提供了不一样的api,调用的时候要指定不一样的访问类型,比较麻烦,为了方便提供统一的接口(kube-aggregator),统一接口会分析访问api具体的类型,帮我们负载到具体的api上2.metrics-server部署资源下载[root@server2 ~]# mkdir metrics 建立目录[root@server2 ~]# cd metrics/[root@server2 metrics]# wget原创 2022-04-19 21:31:04 · 2193 阅读 · 0 评论 -
k8s(十)— 资源限制(cpu、memory)
1. k8s容器资源限制原创 2022-04-18 11:19:09 · 6543 阅读 · 0 评论 -
k8s(九)—访问控制(创建serviceaccount账号、创建useraccount账号)
1.访问控制简介2.创建sa账号[root@server2 ~]# kubectl create serviceaccount admin 创建sa账号为adminserviceaccount/admin created[root@server2 ~]# kubectl get saNAME SECRETS AGEadmin 1 60s admin创建成功default 1 5d19h [root@se原创 2022-04-17 16:44:47 · 5305 阅读 · 1 评论 -
k8s(八)—调度因素(nodeName、nodeSelector、亲和与反亲和、Taints 污点)、影响pod调度的指令
[root@server2 ~]# kubectl get pod -n kube-system 2 影响kubernetes调度的因素2.1 、nodeName[root@server2 ~]# vim pod.yamlapiVersion: v1kind: Podmetadata: name: nginxspec: containers: - name: nginx image: nginx nodeName: server3 指定调度到serv.原创 2022-04-16 09:21:14 · 1009 阅读 · 0 评论 -
k8s(七)—statefullset部署mysql主从集群
1 使用statefullset部署mysql主从集群mysql-0是mastermysql-1和mysql-2是两个备份当mysql写的时候,找headless service中的mysql-0.mysql;当mysql读的时候,找clusterip service中的mysql读,实现读写分离。statefulset维护三个副本,一个主两个从因为主从的配置不同所以通过configmap来解决主从配置不同的问题部署mysql文档1.1配置configmap(创建mysql配置)[root@原创 2022-04-14 15:00:52 · 1872 阅读 · 1 评论 -
k8s(六)—configmapp配置管理、secret配置管理、volumes配置管理、pv卷、statefulset控制器
1、ConfigMapp配置管理简介ConfigMap是存储通用的配置变量的。ConfigMap有点儿像一个统一的配置文件,使用户可以将分布式系统中用于不同模块的环境变量统一到一个对象中管理;而它与配置文件的区别在于它是存在集群的“环境”中的,并且支持K8s集群中所有通用的操作调用方式。而资源的使用者可以通过ConfigMap来存储这个资源的配置,这样需要访问这个资源的应用就可以同通过ConfigMap来引用这个资源。相当通过创建Configmap封装资源配置。configmap以一个或者多个key:原创 2022-04-10 15:22:35 · 4004 阅读 · 0 评论 -
k8s(五)—容器间的网络通信
1、同一节点不同pod之间的通信[root@server2 ~]# kubectl get pod -o wide 查看pod 的ipNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESdeployment-2-77cd76f9c5-2zrkd 1/1 Running 1 (7h原创 2022-03-29 17:32:53 · 2900 阅读 · 1 评论 -
k8s(四)—service服务(暴露方式:ClusterIP、NodePort、LoadBalancer、ExternalName、ingress)
[root@server2 ~]# kubectl -n kube-system get pod | grep proxy 每个节点都有haproxykube-proxy-d6cp2 1/1 Running 6 (121m ago) 5d12hkube-proxy-pqn5q 1/1 Running 6 (121m ago) 5d12hkube-proxy-xt2m9 ..原创 2022-03-26 14:06:11 · 8599 阅读 · 0 评论 -
k8s(三)—控制器(replicaset、deployment、daemonset、job、cronjob)
1、控制器简介Replicaset控制器[root@server2 ~]# vim rs.yamlapiVersion: apps/v1kind: ReplicaSetmetadata: name: replicaset-examplespec: replicas: 3 运行了三个副本 selector: 表示选者器,控制器和pod之间的联系是啥,因为不同的pod有不同的控制器 matchLabels: app: nginx 如果pod原创 2022-03-22 10:43:23 · 3827 阅读 · 0 评论 -
k8s(二)—pod生命周期(init初始化容器、存活探针、就绪探针)
pause容器提供pod最底层的环境,来做容器的环境初始化初始化容器必须按照顺序执行,第一个启动成功后退出,第二个才能运行原创 2022-03-21 11:44:51 · 2428 阅读 · 0 评论 -
k8s(一)—pod管理、资源清单编写
k8s官方文档run[root@server2 ~]# kubectl run nginx --image=nginx 运行一个容器,镜像为nginxpod/nginx created [root@server2 ~]# kubectl get pod 查看podNAME READY STATUS RESTARTS AGEnginx 1/1 Running 0 8s[root@server2 ~]# kubectl descr原创 2022-03-19 16:20:08 · 3930 阅读 · 0 评论 -
k8s—搭建
1、k8s简介2、k8s部署净化虚拟机环境[root@server3 ~]# docker swarm leave [root@server4 ~]# docker swarm leave [root@server2 ~]# docker stack rm mystack 删除 [root@server2 ~]# docker swarm leave --force 强制离开 [root@server2 ~]# cd /etc/systemd/system/[root@serve原创 2022-03-16 23:27:57 · 2371 阅读 · 0 评论 -
docker(九)—swarm实战、swarm集群部署、swarm监控、portainer可视化管理工具
1、docker swarm简介2、docker swarm 实战[root@server1 ~]# docker swarm init docker swarm 初始化 Swarm initialized: current node (6jvrjwe309ie8z0ekggh67fw8) is now a manager. server1作为管理端To add a worker to this swarm, run the following command:原创 2022-03-15 17:10:49 · 2000 阅读 · 0 评论 -
docker(八)— compose简介及实战
1、docker-compose简介2、docker-compose实战[root@server1 ~]# cd /usr/local/bin/[root@server1 bin]# lsconvoy convoy-pdata_tools docker-compose docker-machine docker-compose已经部署好了,在habor仓库那一章已经部署好了docker-compose yml文件编写参考文档[root@server1 ~]# mkdir com原创 2022-03-11 11:07:56 · 2392 阅读 · 0 评论 -
docker(七)— machine构建和管理docker主机
1、docker machine安装:[root@foundation50 ~]# cd /mnt/pub/docker/machine/[root@foundation50 machine]# scp docker-machine-Linux-x86_64-0.16.1 server1: 将下载好的machine软件拷贝到server1上[root@server1 ~]# mv docker-machine-Linux-x86_64-0.16.1 /usr/local/bin/docker-m原创 2022-03-09 16:20:30 · 337 阅读 · 0 评论 -
docker(六)—容器资源控制、安全加固(利用lxfs增强容器隔离性和资源可见性)、设置特权、添加白名单
[root@server1 ~]# docker inspect -f '{{.State.Pid}}' demo 查看容器pid4458[root@server1 ~]# cd /proc/4458 进入进程目录[root@server1 4458]# ls 容器信息attr cwd map_files oom_adj schedstat taskautogroup environ maps o...原创 2022-03-05 11:43:10 · 1652 阅读 · 0 评论 -
docker(五)-数据卷管理(bind mount、docker manmaged volume)、convoy卷插件
1、 docker 数据卷管理简介2 、bind mount 挂载方式[root@server1 ~]# docker rm -f 'docker ps -aq' 删除所有容器[root@server1 ~]# docker network prune 删除所有没有使用的网络Are you sure you want to continue? [y/N] yDeleted Networks:mynet3mynet1mynet2[root@server1 ~]# mkdir /web原创 2022-02-27 10:31:36 · 2199 阅读 · 0 评论 -
docker(四)—原身网络、自定义网络、跨主机容器网络 配置
1、docker原身网络[root@server1 harbor]# docker-compose down 为了实验效果,先将所有镜像删除[root@server1 harbor]# docker network prune 关闭不常用网络[root@server1 harbor]# docker network ls 剩下的就是docker默认网络NETWORK ID NAME DRIVER SCOPEe014原创 2022-02-26 10:49:50 · 2653 阅读 · 0 评论 -
docker(三)—镜像仓库、Registry工作原理、搭建私有仓库、搭建harbor仓库
1、docker仓库简介2、Registry工作原理客户端访问index,index返回镜像所需的地址以及index认证后的token,客户端拿着地址和token访问Registry,Registry会去访问index去验证token的合法性,index告诉registry合法,然后Registry才会将镜像传递给客户端,如下图:客户端将push请求发给index,index会给客户端一个临时的token,然后客户端将镜像push到registry仓库,registry会访问index,验原创 2022-02-20 10:47:03 · 1466 阅读 · 0 评论 -
docker(二)—镜像分层结构、dockerfile详解、nginx镜像构建与优化实战
1、镜像的分层结构[root@server1 ~]# docker pull busybox 拉取测试镜像Using default tag: latestlatest: Pulling from library/busybox009932687766: Pull complete Digest: sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccbStatus: Downloaded newer原创 2022-02-17 11:17:37 · 2696 阅读 · 0 评论 -
docker(一)—简介以及搭建
1、什么是dockerdocker客户端提交请求给docker主机,客户端引擎会处理,首先检测本机有没有所需镜像,如果没有镜像,会从软件仓库里获取,再通过镜像创建容器2、部署doker[root@server1 ~]# cd /etc/yum.repos.d/[root@server1 yum.repos.d]# vim docker.repo[docker]name=docker-cebaseurl=https://mirrors.aliyun.com/docker-ce/linu原创 2022-02-12 10:03:38 · 728 阅读 · 0 评论 -
saltsatck- 远程执行、数据采集系统(grains与pillar详解)、job管理、salt-ssh与salt-syndic+salt-api配置
下载:[root@foundation50 images]# cd /mnt/pub/docs/saltstack/ [root@foundation50 rhel7]# cp -r 3000/ /var/www/html/ 将下载好的3000版本saltsatck拷贝到server1上[root@server1 ~]# cd /etc/yum.repos.d/ [root@server1 yum.repos.d]# vim saltstack.repo 编写 软件仓库[saltsatc.原创 2022-02-11 15:57:10 · 7323 阅读 · 0 评论 -
zabbix(2)— 监控tomcat、第三方告警平台睿象云使用、代理proxy
1、zabbix监控tomcat安装tomcat:[root@foundation50 lamp]# scp apache-tomcat-7.0.37.tar.gz server2:/mnt 将下载好的tomcat 安装包拷贝到server2上[root@server2 tomcat]# yum install java-1.8.0-openjdk.x86_64 安装jdk[root@server2 ~]# cd /mnt/[root@server2 mnt]# tar zxf apache原创 2022-01-20 18:41:10 · 1012 阅读 · 0 评论 -
zabbix-搭建、后端agent添加方法、应用监控(apache、nginx、mysql)、percona
zabbix中文文档zabbix监控搭建安装zabbix-server:[root@server1 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 安装官方rpm包[root@server1 ~]# cd /etc/yum.repos.d/[root@server1 yum.repos.d]# lsdvd.repo redhat.repo za原创 2022-01-17 11:41:32 · 2421 阅读 · 0 评论 -
redis(2)-redis数据缓存、mysql和redis数据同步、varnish缓存及负载均衡及健康检查
1、redis和数据库之间的同步让redis作为缓存,aap读的请求都来至于redis缓存,当app先读redis的时候,redis缓存里没有的,app会从数据库mysql去读出来,然后app再写入到redis里,下次就直接可以从redis里取。Redis 持久化—Redis和AOFRDB的优点RDB是一个非常紧凑的文件,它保存了某个时间点得数据集,非常适用于数据集的备份,比如你可以在每个小时报保存一下过去24小时内的数据,同时每天保存过去30天的数据,这样即使出了问题你也可以根据需求恢复到不同版原创 2022-01-10 15:00:40 · 1521 阅读 · 0 评论 -
redis—安装、主从复制、主从切换、集群、代理twemproxy
1、redis编译及安装实验环境:将之前server1、server2、server3安装的数据库都停掉/etc/init.d/mysqld stopserver1的redis编译及安装:[root@foundation50 redis]# scp redis-6.2.1.tar.gz server1:/mnt 将下载好的redis拷贝到server1上[root@server1 mnt]# tar zxf redis-6.2.1.tar.gz 解压[root@server1 redi原创 2022-01-05 22:52:40 · 1064 阅读 · 0 评论 -
mysql-多主复制、负载均衡、MHA高可用及主从切换
一、mysql多主模式配置准备三台虚拟机: server1 、server2、server3组复制必须保证三台数据库完全一致,否则会失败点击搭建多主模式官方文档查看[root@server1 data]# /etc/init.d/mysqld stop 停掉数据库Shutting down MySQL............ SUCCESS! [root@server1 ~]# cd /usr/local/mysql/data 进入mysql数据目录[root@server1 data]原创 2022-01-01 12:19:12 · 1061 阅读 · 0 评论 -
mysql主从复制,半同步,并行复制
1、mysql主从复制[root@server1 conf]# vim /etc/my.cnf [root@server1 conf]# /etc/init.d/mysqld start 启动数据库Starting MySQL SUCCESS! [root@server1 conf]# mysql -p 登陆mysqlEnter password:mysql> show databases; 查看库名+--------------------+| Database原创 2021-12-27 21:17:32 · 1354 阅读 · 0 评论 -
lamp架构-nginx并发优化、平滑升级、限流、日志轮询、配置管理、重定向、防盗链、goaccess日志可视化、tomcat+memcache交叉存储
1、nginx的并发优化问题:nginx为啥比apache快??下去了解nginx平滑升级[root@server1 ~]# nginx -v 当前安装版本1.8nginx version: nginx/1.18.0[root@foundation50 lamp]# scp nginx-1.19.1.tar.gz server1:/mnt 将[root@server1 ~]# cd /mnt/[root@server1 mnt]# tar zxf nginx-1.19.1.tar.gz原创 2021-12-23 15:05:30 · 1882 阅读 · 0 评论 -
lamp架构—扩展php的memcache模块及构建nginx高速缓存
php模块和配置如何扩充php模块[root@foundation50 lamp]# scp memcache-4.0.5.2.tgz server1:/mnt/ 拷贝memcache-4.0.5.2.tgz到server1的mnt里原创 2021-12-16 17:34:35 · 2549 阅读 · 0 评论