- 博客(26)
- 收藏
- 关注
原创 第十一周作业
ansible-doc:相当于man如ansible-doc shell,查询模块的用法和是否有这个模块ansible-playbook:用于执行已经编排好的任务流(playbook文件):ansible-vault:加密解密yml文件ansible-galaxy:可以拉取一些现成的roleansible-galaxy search redis:搜索redis这个role下载搜索出来的其中一个redis:以mysql—init为例:调用关系:mysql_install.yml > roles/mysq
2024-03-20 15:11:54 387
原创 第八周作业
cluster模式解决了哨兵模式中单一主节点的性能瓶颈问题。无中心架构的cluster,cluster至少需要三个主节点,由hash槽的方式来分担业务,redis cluster有0-16383的槽,每一个key存储时先通过哈希计算和与16384取余得到一个数,这个数在谁的区间里就存给谁,并不是第一次就可以命中,第一次如果没有命中,会告诉你这个slot应该存哪。也符合集群能扩容的功能,不管扩不扩容,key计算出来的slot值是不变的,slot该归谁存又集群决定。
2024-02-05 15:26:33 782
原创 第七周作业
需要初始化才能起来初始化数据库,也可以新建数据库:(默认是环境变量里设置的,可以-D 指定某个实例的路径)新建时需要修改目录下的postgresql.conf中的监听地址和端口,不然通过pg_ctl启动多个实例会冲突1.实例,一个pgsql实例就是一个对应的数据库目录,如/pgsql/data22.数据库:一个pgsql服务可以管理多个数据库,当连接到一个数据库时。一般只能访问这个数据库里面的数据3.模式:schema,一个数据库可以创建多个名称空间,分割不同的业务数据。
2024-01-16 23:36:43 962
原创 第六周作业
tinyint,1字节,一个字节8位,占一个符号位的话,剩下七位为数值,取值范围为-128到127,加上修饰符unsigned,变成无符号,取值翻倍变成0-255smallint,两字节mediumint,三字节int,四字节bigint,8字节对于int(1),int(4)括号里面的只代表显示宽度,实际存储是不影响的,int还是存4字节。对于具体的场景应该根据实际情况来选择数据类型,从而节约存储空间bool,boolean:布尔型,zero值为假,非zero为真创建表,创建数据库。
2023-12-31 16:13:08 1817
原创 第五周作业
superuser do,让普通用户也能执行一些root权限的命令,减少root账户切换次数,提高安全性配置文件格式:使用visudo打开/etc/sudoersuser:执行命令的用户是哪一个host:允许登录的哪一个主机才能执行runas,以谁的权限执行command,执行的命令PAM是一款可以对应用程序进行认证的架构,应用程序开发者通过PAM-API接口来调用PAM开发者开发的PAM模块,实现对应用程序的认证。
2023-11-12 11:11:25 91
原创 第四周作业
索引数组,相当于数组下标就是从012开始算,关联数组属于下标自定义的。关联数组必须先声明,declare -A array,声明关联数组declare -a array 声明普通数组declare定义的变量在函数中默认是局部变量,如果想全局生效,那就加上参数-g内核通常在分配内存时,允许申请的内存量超过实际可分配的free内存,这种技术称为Overcommit,可以认为是一种画大饼的策略。
2023-10-22 18:21:55 108 1
原创 第三周作业
有rpm(redhat pachage manager),包后缀rpmubuntu下的包管理器是dpkg,包后缀deb上面两个都不能自动解决依赖,yum,dnf,是rpm包管理器apt是dpkg包管理器,最大的优势是可以自动解决依赖关系完成安装官网下载,第三方组织如epel,搜索引擎,自行用源码编译就是调用rpm,自动解决依赖关系基于c/s结构yum服务器存放rpm包与相关包的元数据库yum客户端访问yum服务器进行安装或者查询。
2023-10-14 09:53:34 95 1
原创 第二周作业
1.linux中用户的权限有rwx,读,写,执行三种权限文件的属性又按照不同层级的用户有不同的文件权限属性注:文件与目录的rwx含义不同,文件是可读可写可执行,目录的是:(w,在目录中创建删除文件的权限,r,可以ls看到文件名,但是看不到元数据,这里推测是目录也分数据与元数据,目录的数据block部分仅仅是存的。
2023-10-09 10:28:20 65 1
原创 ansible学习日记之template
与cp模块类似,都是主控节点的文件拷贝到远程主机上,但是template在拷贝时会自动替换文件中的变量,这点在配置文件中非常有用,很多时候在使用ansible批量部署完很多服务后,涉及到服务的配置文件变更就需要一个批量变更配置文件的功能。官方说法叫做template可以“渲染”配置文件。路漫漫其修远兮,大家共同进步!
2023-09-12 22:19:32 116
原创 devops学习
DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。
2023-07-02 21:35:29 165 1
原创 linux制作本地yum仓库(最详细版)
1.centos7.3系统如下(其他镜像同理):2.使用vmware安装完成后,修改网卡为静态(自行根据网段修改)3.添加dns服务器地址4.安装createrepo与yum-utils(有关于同步软件reposync)5.更改主机名(可选)6.创建一个放离线软件包的目录7.安装vsftpd(提供ftp服务供其他主机访问自己的yum仓库)修改vsftpd的配置文件(添加框起来这一行,增加匿名用户root目录)启动vsftp9.安装wget(若有此软件请忽略此步)
2023-06-29 22:45:08 1964 1
原创 ansible学习日记-插件lookup(11)
前文中,我们总结了一些”过滤器”的使用方法,”过滤器”其实是ansible中的一种”插件”,除了过滤器,ansible中还有很多其他种类的插件,比如我们之前总结,ansible官网为我们总结了各个插件的作用,并且将这些插件按照功能进行了分类其实,我们一直都在使用这些插件,比如,我们在清单文件(/etc/ansible/hosts文件)中定义目标主机时,其实就使用到了”Inventory种类的插件”
2023-06-24 16:44:50 192 1
原创 ansible学习日记-过滤器(10)
在实际工作中,经常需要调用别人的接口,别人的接口会返回我们需要的数据,有时候,返回的数据就是json格式的,比如,公司为某些域名配置了CDN,当我们需要分析这些域名的访问日志时,则需要从CDN厂商获取到对应的日志,通常情况下,CDN服务商会暴露一个接口给我们,我们调用这个接口,即可获取到对应域名的日志列表,然后根据列表下载所有的日志,从而达到我们的目的,我们先一起来看一段示例数据,如下数据是我调用了CDN厂商接口后,返回的一段json格式的数据,如下没有缩进和换行。这段json数据并没有很高的可读性。
2023-06-24 16:21:34 382 1
原创 ansible学习日记-变量(9)
第一:指定目录中的所有文件的文件后缀必须是 ‘.yaml’ 、’.yml’ 、’.json’中的一种,默认只有这三种后缀是合法后缀,如果目录中存在非合法后缀的文件,执行playbook时则会报错。‘include_vars’不仅能够加载指定的变量文件,还能够一次性将指定目录下的所有变量文件中的变量加载,使用dir参数即可指定对应的目录,示例如下。第二:如果此目录中的子目录中包含变量文件,子目录中的变量文件也会被递归的加载,而且子目录中的文件也必须遵守上述第一条规则。指明一个变量文件的位置。
2023-06-24 15:48:50 121 1
原创 ansible学习日记-过滤器(8)
场景:现在我有一个需求,我想要将获取到的变量的值中的所有字母都变成大写,如果想要在playbook中实现这个需求,我该怎么办呢?我可以借助一个叫做”过滤器”的东西,帮助我完成刚才的需求,”过滤器(filters)”可以帮助我们对数据进行处理,示例:如上例所示,testvar变量的值中包含三个小写字母,在使用debug模块输出这个变量的值时,我们使用了一个管道符,将testvar变量传递给了一个名为”upper”的东西,”upper”就是一个”过滤器”,执行上例playbook后你会发现,testvar
2023-06-24 15:34:02 290 1
原创 ansible学习日记-条件判断(7)
如上例所示,使用when关键字指明条件,条件是ansible_distribution的值是CentOS,细心如你一定已经发现了,就是facts信息中的一个key,通过ansible_distribution可以获取到目标主机系统的发行版,在之前的文章中,如果我们需要获取到facts中的key的值,都是通过引用变量的方式获取的,即”{{ key }}”,但是,在使用when关键字时,我们并没有为ansible_distribution添加”{{ }}”,
2023-06-24 15:20:00 345 1
原创 ansible学习日记-循环(6)
在使用ansible的过程中,我们经常需要处理一些返回信息,而这些返回信息中,通常可能不是单独的一条返回信息,而是一个信息列表,如果我们想要循环的处理信息列表中的每一条信息,我们该怎么办呢?示例:如果我想要获取到清单中所有未分组的主机的主机名,则可以执行如下命令(上一节学到的内置变量groups.ungrouped),如果未分组的是多个主机,他会返回多个值从返回信息可以看出,一共有3个未分组主机,上例的返回信息中就不只有一条信息记录,如果我们想要获取到上述返回信息中的第二条信息,则可以使用如下方法。
2023-06-24 10:50:53 286 1
原创 ansible学习日记-变量(5)
set_fact是一个模块,我们可以通过set_fact模块在tasks中定义变量fact时针对一个主机而言的,set_fact就是对一个主机定义了全局变量,可以在一个主机的其他task中被引用。
2023-06-24 09:06:18 219
原创 ansible学习日记-playbook(4)
前文中,我们介绍了一些ansible的常用模块,聪明如你,一定已经掌握了这些模块的使用方法。那么现在,我们来想象一个工作场景:假设,我们想要在所有主机上安装nginx并启动,我们可以在ansible主机中执行如下3条命令我们通过上述3条命令,先,然后使用,最后使用,最终达到了我们的目的。但是实际工作中,每次都要执行三次太麻烦了。如果命令越多,后期每次执行命令就越多条。我们可以把这么多条命令整合成一个脚本。直接执行这个脚本就行。
2023-06-23 19:41:40 102
原创 ansible学习日记-基本模块使用(3)
ansible 附带了很多可以直接在远端主机或者通过执行的模块用户也可以写出属于自己的模块.这些模块可以控制系统的资源 ,像服务,包管理,文件,或执行系统命令.ansible具有幂等性,幂等性能够保证我们重复的执行一项操作时,得到的结果是相同的,比如拷贝文件,生成新文件等时,如果重复执行并不会覆盖,而是检测出已经操作后跳过。
2023-06-23 16:46:05 171 1
原创 ansible学习日记-hosts文件(2)
主机较少时,可以直接将主机添加进hosts,主机可以是ip,也可以是主机名或域名,此时需要在/etc/hosts文件添加域名解析或者指定一个dns服务器帮你正确解析域名。我们将会以通俗易懂的方式介绍ansible,让你尽量轻松的学会ansible,不要错过,快进来看。6.这里主机清单中并没有带用户密码,可以自行查阅使用方法,推荐密钥。主机配置文件中是支持重复主机的,一个主机可以在不同的主机组里面。/etc/ansible/hosts文件使用主机名代替ip。在主控端的/etc/hosts文件中添加解析。
2023-06-23 14:14:26 2132
原创 ansible学习日记-了解与安装ansible(1)
ansible是一个配置管理,批量部署工具。架构简单,通过ssh远程访问,无需在被控端安装client软件。
2023-06-23 10:24:44 45
原创 nginx学习
cat /usr/local/apache-tomcat-9.0.68/conf/server.xml,端口改成8888。下载下来上传到linux上/usr/local/,两个包解压出来,无需安装啥的。电脑网页打开192.168.253.134:8888(虚机ip)可见。配置完之后,java -version。反向代理,负载均衡,动静分离。实验一,先安装tomcat。
2023-05-31 09:12:55 27 1
原创 kickstart批量安装linux系统
6.dhcp服务起来后,再对之前的虚机查看,可以看到已经被分配了一个IP地址,下一个服务显示tftp打开超时,所以下一步安装tftp。此处只是一个菜单,实际点不进去,缺少内核文件,没有灵魂,文件清单其实都可以在isolinux.cfg里找到。16.重启一下之前待安装的系统(虚拟机内存需大于1G,实体机需要大于2G,官方说明,本次为4G),然后就到了这里。4.可以先开一个虚机,如下图所示,先启动时候dhcp搜索,最后找不到文件,找不到系统。17,将default文件精简一下,得到。
2023-04-27 20:12:21 242
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人