从罗莉安与赫尔德,说说DNF的剧情

上大学的时候,和同寝室的同学们玩过一款叫做DNF(地下城与勇士)的游戏。玩的时间不久,刚玩到50级就没啥兴趣了,最主要的原因是对于游戏中的文化了解的不多,虽然跟着游戏的主线剧情一直在走,但是毕竟从小到大就没有怎么了解过西方的宗教内容,所以很多时候有些内容的确是看不懂——当然,也有另一方面的原因是寒假结束了,希望能把更多时间用在学习上,而非游戏上。

大概是2017年吧!由于估错了飞机的安检需要花费的时间,就用iPad用机场Wi-Fi看了B站up主“川同学不穿童鞋”(https://space.bilibili.com/6065166/video)的视频《罗莉安竟是赫尔德的傀儡?!》,突然激发起了重新看看DNF剧情的欲望,又回头追了《DNF未解之谜!持续了三年的谜团终于揭开——消失的罗莉安》,这时我才发现,原来曾经玩的这个游戏,已经发展成了这个样子,原来看似只是小故事的剧情里,还隐藏着这么多“秘密”,原来赫尔德才是幕后黑手,原来整个DNF史,就是一部赫尔德史……

从那之后,基本上川同学关于DNF剧情的视频,我都会follow。毕竟一个连道具里包含的背景故事以及宗教含义都能用心深挖的UP主,都是良心UP主。而且我从来不认同年龄稍大的那些人所信封的“游戏玩物丧志论”的思想。我始终相信,一个人只要把一件事情做好、做到极致甚至极端,那这件事情就可以成为他的正规职业。

Continue reading
Posted in Life | Tagged , , , , | Leave a comment

SaltStack 与ZeroMQ

ZeroMQ主要的工作:消息队列

1.发布于订阅系统(类似于对讲机)     端口4505/tcp,长链接,就是因为这个,才使速度特别快。

2.请求与响应     端口4506/tcp

在安装python-setproctitle之后,可以直接使用ps 命令看到saltmaster启动的进程名,否则只会看到一堆salt-master进程。

ps -ef | grep salt

Posted in AutomaticOPS, Saltstack | Tagged , | Leave a comment

saltstack配置管理

states: yaml文件、sls尾缀文件
Yaml的写法:

1.缩进必须是两个空格,绝对不能使用tab键
2.冒号后必须有空格:key-value关系(dict)
3.“-”短横线后必须有空格:并列关系(list)


Minion端的设置:
1.在设置minion端的时候,需要配置/etc/salt/minion文件,首先,需要指定其master,即解除“master: ”字段的限制,然后在其后面添加master端的主机名或主机IP
2.此外,还有一个叫做“id: ”的字段,需要进行设置,这个ID默认不设置的情况下是主机的主机ID/etc/sysconfig/network 但是如果需要设置的话,需要将/etc/salt/minion_id文件删除,并重新启动salt-minion服务,才能正常启动。否则会报错。

Master端配置:
在配置文件中搜索file_roots:字段
会出现一系列提示,咨询此saltstack的配置文件远程目录所在位置。
其中,dev和prod都可以是不存在的,但是base一定要有:



创建完毕之后,需要在本地的/srv/下创建一个salt目录
mkdir -p /svc/salt
根据实际的任务情况对需要操作的内容进行分类(按项目分?或按操作步骤分吧!)比如web业务:
mkdir -p /svc/salt/web
vim /svc/salt/web/apache.sls   
内容如下:
Apache-install:
  pkg.installed:
    - names:
      - httpd
      - httpd-devel

Apache-ServiceControl:
  service.running:
    - name: httpd
    - enable: True
如果执行失败或者对端机器上有这个包,则会有如下提示:

saltstack minion端任务的状态文件:/var/cache/salt/minion/files/base/任务目录/sls文件名,该文件与master端的一样。

需要指定不同的机器执行不同的sls剧本的时候,就需要指定一个top文件,该文件需要被放置在base目录之下:有且只有一个,通常只用来存放minion_id和需要执行的sls文件的关系,top文件也是一个sls文件。
如需修改top文件,需要在master文件中先取消关于top文件的注释:
先搜索字段:state_top:
然后取消注释,保存退出,重启master服务。
示例内容如下:
base:
  'salt.minion.test6':
    - web.apache
    - web.php
    - web.wordpress
salt.minion.test6A
    - db.mysql-server
    - db.mysql-ser-connect
    - db.phpmyadmin
salt.minion.test7
    - storage.nfs-server
    - storage.firewalld-policy
    - storage.filePermission

执行的时候直接指定*即可根据top文件中的对应关系,让指定的机器执行指定的任务状态文件。

在执行命令之前,一定要在所需命令敲完之后,再加上一个test=True,确认要修改的内容和可能的结果,避免不必要的麻烦(类似于sed不加-i)

注意,在生产环境下,不推荐使用salt '*' .......这种写法
Posted in AutomaticOPS, Saltstack | Tagged , | Leave a comment

Saltstack远程执行

远程测试minion节点是否存活:

[root@120-132-26-104 ~]# salt ‘*’ test.ping

远程执行命令 *指的是所有的主机,w指的是执行的命令 salt ‘*’ cmd.run ‘w’

Posted in AutomaticOPS, Saltstack | Tagged , | Leave a comment

Master/Minion模式基本配置

通常情况下,配置文件所在位置:

/etc/salt

master是master端的配置文件

minion是minion端的配置文件

cloud是cloud端的配置文件

其中,cloud有大量的配置文件可以根据实际使用情况分别存放在cloud  cloud.conf.d  cloud.deploy.d  cloud.maps.d  cloud.profiles.d  cloud.providers.d 这些目录中

注意,配置文件的字段格式通常情况下为key: value,冒号后面一定要有一个空格,然后再加上value,否则重启服务会报错:

正确的提示:

Posted in Saltstack | Tagged , | Leave a comment