- 博客(99)
- 收藏
- 关注
原创 持续集成与持续交付(2)
目录1.Jenkins & dockerssh & docker2.jenkins & Ansible3.jenkins & harbor1.Jenkins & docker需要下载的插件[root@server2 ~]# docker pull registry[root@server2 ~]# docker run -d --name registry -v /opt/registry:/var/lib/registry -p 5000:5000 reg
2021-05-16 17:13:02
226
原创 持续集成与持续交付(1)
目录1.git简介2.git安装使用3.gitlab代码仓库4.jenkins持续集成enkins简介安装使用Jenkins&docker1.git简介官网学习地址http://git-scm.com/book/zh/v2Git特点:速度简单的设计对非线性开发模式的强力支持(允许成千上万个并行开发的分支)完全分布式有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)自诞生于 2005 年以来,Git 日臻成熟完善,在高度易用的同时,仍然保留着初期设定的目标。
2021-05-16 17:11:28
239
1
原创 ELK
elasticsearch简介部署部署三台虚拟机,此处展示一台,其他两台相同只需修改域名和ip即可[root@server1 7.6]# rpm -ivh elasticsearch-7.6.1-x86_64.rpm[root@server1 7.6]# vim /etc/elasticsearch/elasticsearch.ymlcluster.name: my-esnode.name: server1bootstrap.memory_lock: truenetwork.host: 17
2021-05-10 14:58:52
201
原创 openstack云服务---私有网络、镜像封装和上传、存储
网络服务(私有)安装并配置控制节点[root@controller ~]# source admin-openrc [root@controller ~]# openstack-status[root@controller ~]# vim /etc/neutron/neutron.confservice_plugins = routerallow_overlapping_ips = True[root@controller ~]# vim /etc/neutron/plugins/ml2
2021-05-02 19:44:14
394
原创 openstack云服务搭建
参考网站https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/硬件配置虚拟机配置如图修改内存最少4g环境配置[root@server1 network-scripts]# cp ifcfg-eth0 ifcfg-eth1[root@server1 network-scripts]# vim ifcfg-eth1BOOTPROTO=noneDEVICE=eth1ONBOOT=yes激活网卡,修改解析[root@ser
2021-05-02 19:27:00
339
原创 hadoop大数据平台
一.hadoop简介Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储。MapReduce为海量的数据提供了计算。Hadoop框架包括以下四个模块:Hadoop Common: 这些是其他Hadoop模块所需的Java库和实用程序。这些库提供文件系统和操作系统级抽象,并包含启动Hadoop所需的Java文件和脚本。Hadoop YARN: 这是一个用于作业调度和集群资源管理的框架。Hadoop Distributed File System
2021-04-25 19:26:57
447
原创 mfs分布式文件存储---部署及应用
mfs官网参考地址根据自己主机下载自己所需要的源部署master端[root@server1 ~]# curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo修改为不检测[root@server1 ~]# yum install moosefs-master moosefs-cgi moosefs-cgiserv moosefs-cli -y添加解析[root@server1 m
2021-04-19 13:17:35
187
原创 redis服务
redis支持的数据类型:字符串(strings)散列(hashes)列表(lists)集合(sets)有序集合(sorted sets)实验需要的包,可自行去官网下载server1部署[root@server1 ~]# tar zxf redis-6.2.1.tar.gz[root@server1 ~]# cd redis-6.2.1/[root@server1 redis-6.2.1]# make[root@server1 redis-6.2.1]# make insta
2021-04-19 13:16:45
86
原创 win10+redhat8.2双系统安装并选择windows为默认启动项以及如何删除linux系统
目录win10系统安装redhat8.2系统安装默认引导win10为首选启动项删除linux系统win10系统安装redhat8.2系统安装默认引导win10为首选启动项默认的启动项是redhat,此处我做了注释,修改saved_entry=2,因为windows在引导启动中排第三位(从0开始数)[root@bogon ~]# vim /boot/grub2/grubenvsaved_entry=2修改引导界面等待时间为5s(默认),可根据自己选择延长或缩短[root@bogon ~]
2021-04-19 13:16:28
1328
1
原创 llinux下点击谷歌浏览器应用图标无反应,如何解决
主机系统为redhat8.2打开配置文件在最后面加上如下命令即可[root@bogon ~]# vim /opt/google/chrome/google-chrome--user-data-dir --no-sandbox附:谷歌的源[google-chrome]name=google-chromebaseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64enabled=1gpgcheck=0...
2021-04-19 13:15:54
743
原创 mysql数据库集群---慢查询、MySQL路由器配置、 MHA
慢查询[root@server1 ~]# /etc/init.d/mysqld start [root@server1 ~]# mysql -pwestosmysql> show variables like 'slow%';mysql> set global slow_query_log=ON;[root@server1 ~]# cd /usr/local/mysql/data/[root@server1 ~]# cat server1-slow.log[root@ser
2021-04-11 17:34:01
260
原创 mysql数据库集群---组复制协议
[root@server1 ~]# rm -rf /usr/local/mysql/data/*[root@server1 data]# vim /etc/my.cnf[root@server1 data]# mysqld --initialize --user=mysql[root@server1 ~]# /etc/init.d/mysqld start[root@server1 ~]# vim /etc/my.cnfdisabled_storage_engines="MyISAM,BL
2021-04-10 17:49:07
209
1
原创 mysql数据库集群
主从复制在server2部署mysql,同步server1数据之前在server1上已经部署过数据库,所以将server1文件传给server2比较方便[root@server1 ~]# scp /usr/local/mysql/ server2:/usr/local/[root@server1 ~]# scp /etc/my.cnf server2:/etc/[root@server1 ~]# scp /etc/init.d/mysqld server2:/etc/init.d/mysqld
2021-04-10 17:48:41
198
1
原创 nginx---日志可视化、tomcat+memcache
goaccess 日志可视化软件安装[root@server1 ~]# tar zxf goaccess-1.4.tar.gz [root@server1 ~]# yum install GeoIP-devel-1.5.0-13.el7.x86_64.rpm [root@server1 ~]# cd goaccess-1.4/[root@server1 ~]# ./configure --enable-utf8 --enable-geoip=legacy[root@server1 goacces
2021-04-10 17:48:16
159
原创 Lamp
nginx需要的包[root@server1 ~]# tar zxf nginx-1.18.0.tar.gz[root@server1 ~]# yum install -y gcc pcre-devel openssl-devel[root@server1 ~]# cd nginx-1.18.0/[root@server1 nginx-1.18.0]# vim auto/cc/gcc关掉debug[root@server1 nginx-1.18.0]# ./configure --pre
2021-04-10 17:47:24
183
1
原创 k8s---Helm、Kubeapps
helm部署先略1上传所需镜像[root@server1 harbor]# docker pull heegor/nfs-subdir-external-provisioner:v4.0.0[root@server1 harbor]# docker tag heegor/nfs-subdir-external-provisioner:v4.0.0 reg.westos.org/library/nfs-subdir-external-provisioner:v4.0.0[root@server1
2021-03-27 17:06:07
253
1
原创 k8s---容器资源限制、Metrics-Server、Dashboard、HPA实例
容器资源限制内存资源限制[root@server2 ~]# mkdir limit[root@server2 ~]# cd limit/[root@server2 limit]# vim pod.yamlapiVersion: v1kind: Podmetadata: name: memory-demospec: containers: - name: memory-demo image: stress args: - --vm - "1"
2021-03-21 14:26:18
250
原创 k8s---访问控制
[root@server2 ~]# kubectl create serviceaccount admin[root@server2 ~]# kubectl get sa[root@server2 ~]# kubectl describe sa admin [root@server2 ~]# kubectl create secret docker-registry myregistrykey --docker-server=reg.westos.org --docker-username...
2021-03-20 17:53:30
116
原创 k8s---调度
点击参考官网实验内容必须满足的标点为 disktype=ssd 、disktype=sata倾向满足的标签为roles=nginx[root@server2 ~]# vim pod.ymlapiVersion: v1kind: Podmetadata: name: node-affinityspec: containers: - name: nginx image: nginx affinity: nodeAffinity: requir
2021-03-20 17:52:39
100
原创 k8s---存储之Volumes配置管理
emptyDir卷emptyDir 示例[root@server2 ~]# kubectl delete pod mypod --force [root@server2 ~]# mkdir volumes[root@server2 ~]# cd volumes/[root@server2 volumes]# vim emptydir.yaml apiVersion: v1kind: Podmetadata: name: vol1spec: containers: - i.
2021-03-19 18:16:54
932
原创 k8s---存储之Secret配置管理
每个namespace下有一个名为default的默认的ServiceAccount对象编写一个secret对象[root@server2 ~]# mkdir secret[root@server2 ~]# cd secret/[root@server2 secret]# vim mysecret.yamlapiVersion: v1kind: Secretmetadata: name: mysecrettype: Opaquedata: username: YWRt..
2021-03-16 11:14:40
227
原创 k8s---存储之Configmap配置管理
清理实验环境[root@server2 ~]# kubectl delete pod --all -n test --force [root@server2 ~]# kubectl delete ns test [root@server2 ~]# kubectl delete pod --all -n demo --force[root@server2 ~]# kubectl delete ns demo [root@server2 ~]# kubectl get ns[root@serve
2021-03-16 09:23:54
415
原创 k8s---calico网络插件、网络策略
建立一个公共仓库calico并上传所需镜像[root@server1 harbor]# docker pull calico/cni[root@server1 harbor]# docker pull calico/kube-controllers[root@server1 harbor]# docker pull calico/node[root@server1 harbor]# docker pull calico/pod2daemon-flexvol[root@server1 har...
2021-03-15 15:12:22
565
原创 k8s---公有云上的Kubernetes服务
从外部访问Service的第二种方式,适用于公有云上的Kubernetes服务。这时候可以指定一个LoadBalancer类型的Service在Service提交后,Kubernetes就会调用CloudProvider在公有云上为你创建一个负载均衡服务,并且把代理的Pod的IP地址配置给负载均衡服务做后端。[root@server2 ~]# kubectl edit configmaps -n kube-system kube-proxy [root@server2 ~]# kubectl .
2021-03-09 21:03:37
637
原创 k8s---service、网络通信、ingress
[root@server2 ~]# kubectl expose deployment deployment --port=80[root@server2 ~]# kubectl apply -f rs.yml[root@server2 ~]# kubectl get svc一.serviceservice是由kube-proxy组件,加上iptables来共同实现的kube-proxy通过iptables处理service的过程,需要在宿主机上设置相当多的iptables规则,如果宿主机
2021-03-08 20:59:43
253
原创 k8s---生命周期、控制器
一.Pod生命周期Pod 遵循一个预定义的生命周期,起始于 Pending 阶段,如果至少 其中有一个主要容器正常启动,则进入 Running,之后取决于 Pod 中是否有容器以 失败状态结束而进入 Succeeded 或者 Failed 阶段。在 Pod 运行期间,kubelet 能够重启容器以处理一些失效场景。 在 Pod 内部,Kubernetes 跟踪不同容器的状态 并确定使 Pod 重新变得健康所需要采取的动作。Pod 在其生命周期中只会被调度一次。 一旦 Pod 被调度(分派)到某个节点
2021-03-02 21:02:44
1225
原创 k8s---Pod管理、资源清单
一.Pod管理Pod是可以创建和管理Kubernetes计算的最小可部署单位,一个Pod代表着集群中运行的一个进程,每个Pod都有一个唯一的ip。一个Pod类似一个碗豆荚,包含一个或多个容器,多个容器共享IPC、Network、和UTC namespace。[root@server2 ~]# kubectl get node[root@server2 ~]# kubectl get pod[root@server2 ~]# kubectl get ns[root@server2 ~]# ku
2021-03-02 21:02:29
181
原创 python---模块和包
一.模块的理解python模块实质上是一个python文件。注意: 自定义的python文件的文件名一定不要和已有的模块冲突。导入模块实质上是加载并执行模块的内容。先自定义一个模块文件“hello.python”,供后面使用"""hello模块的说明文档"""digits = '0123456789'def login(): print('login.......')# __all__当用户使用from module import *时,需要导入的内容。__all__
2021-02-24 12:12:29
104
原创 python---异常处理
一.常见的异常# print(a) # NameError# print(10/0) # ZeroDivsionError# d = {'name':'westos'}# print(d['age']) # KeyError# with open('hello.txt') as f: # FileNotFoundError# pass# age = 18# if age == 18:# print('成年')# else:# print
2021-02-24 11:15:14
95
原创 python---高阶特性
一.生成式详解1.列表生成式一个用来生成列表的特定语法形式的表达式。是python提供的一种生成列表的简介形式,可快速生成一个新的list。需求: 生成100个验证码(4个字母组成的验证码)import stringimport randomcodes = []for count in range(100): code = "".join(random.sample(string.ascii_letters, 4)) codes.append(code)print(cod
2021-02-24 10:43:43
143
原创 python---文件
1. 文件的操作打开文件mode:r: 只能读文件w: 只能写入(清空文件内容)a+: 读写(文件追加写入内容)f = open('doc/hello.txt',mode='a+')文件读写操作f.write('java\n') #追加写入java 换行关闭文件f.close()2.with语句with open('doc/test.txt', 'w+') as f: f.write('hello world\n') # 写入文件 f.seek(0, 0)
2021-02-07 00:04:04
242
10
原创 python---函数
1.常用的内置函数:max,min,sum, divmod函数必须有输入和输出。max_num = max(1, 2, 3)print(max_num)2.创建和调用如何创建函数?定义函数,函数内容并不会执行函数的输入专业叫参数, 函数的输出叫返回值。重点:形参: 形式参数,不是真实的值(定义函数时的参数)实参:实际参数, 是真实的值(调用函数时的参数)def get_max(num1, num2): result = num1 if num1 > num2 e
2021-02-06 22:50:47
281
1
原创 python---集合与字典
一.集合1.集合的创建注意点1: 集合的元素必须是不可变数据类型s = {1, 2, 3, 1, 2, 3} print(s, type(s))注意点2:空集合不能使用{}, 而要使用set()s = {1, 2, 3, [1, 2, 3]}print(s, type(s))2.集合的特性不支持+,*, index, slice(因为集合无序不重复的)支持in和not inprint(1 in {1, 2, 3, 4})3.集合的常用操作3-1) 增加add: 添加单
2021-02-06 21:41:17
381
原创 python---列表和元组
一.列表1. 列表的创建li = []print(li, type(li))li1 = [1]print(li1, type(li1))2. 列表的基本特性1)连接操作符和重复操作符print([1, 2] + [2, 3])print([1, 2] * 3)2)成员操作符(in, not in)print(1 in [1, 2, 3])print(1 in ["a", False, [1, 2]])注意:这里False也代表0,True代表1布尔类型:True: 1
2021-02-06 20:07:34
406
原创 python的内置数据结构
字符串str:单引号,双引号,三引号引起来的字符信息。s1 = 'hello's2 = "hello"s3 = """ *********************** 学生管理系统 ************************运行:数组array:存储同种数据类型的数据结构。[1, 2, 3], [1.1, 2.2, 3.3]列表list:打了激素的数组, 可以存储不同数据类型的数据结构. [1, 1.1, 2.1, ‘hello’]li1 = [1, 2, 3, 4]
2021-02-05 13:20:53
136
1
原创 Pycharm常用快捷键
创建文件快捷键: Alt+Insert进入Pycharm的设置界面ctrl + alt + s复制一行Ctrl + d格式化代码符合PEP8编码风格Ctrl+Alt+L如何查看方法的源代码和解释说明ctrl键按住,鼠标移动到你想要查看方法的位置,点击即可进入源码及方法说明...
2021-02-05 13:20:39
219
1
原创 python的三大流程控制
三大流程控制顺序流程控制分支流程控制循环流程控制1.顺序流程控制一步到底、墨守成规2.分支流程控制分支流程语句# python中input接收的是字符串, 如果接收整型数, 需要通过int转成整型数。age = int(input("年龄:"))# 需求: 如果年龄大于18岁, 输出成年, 否则输出未成年。# 注意点: 冒号和缩进是python的语法规范。if age > 18: print("成年")else: print("未成年")运行:分
2021-02-03 16:40:15
239
1
原创 linux下pycharm安装
linux版本为redhat8.2已经内置python解释器,所以可直接下载pycharm就可以[root@westos ~]# python3如何安装Pycharm官网下载地址根据自己的需求下载社区版或者专业版在新建项目即可,选择已有的python解释器简单操作、设置创建文件快捷键: Alt+Insert进入Pycharm的设置界面ctrl + alt + s设置背景颜色设置编辑器的字体大小和间距...
2021-02-03 16:39:23
503
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人