记录关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题,
MySQL Router实现MySQL的读写分离 1.简介MySQL Router是MySQL官方提供的一个轻量级MySQL中间件,用于取代以前老版本的SQL proxy。既然MySQL Router是一个数据库的中间件,那么MySQL Router必须能够分析来自前面客户端的SQL请求是写请求还是读请求,以便决定这个SQL请求是发送给master还是slave,以及发送给哪个master、哪个slave。这样,MySQL Router就实现了MySQL的读写分离,对MySQL请求进行了负载均衡。因此,MySQL Router的前提是后端实现了MySQL的主从复制。MySQL Router很轻量级,只能通过不同的端口来实现简单的读/写分离,且读请求的调度算法只能使用默认的rr(round-robin),更多一点、更复杂一点的能力都不具备。所以,在实现MySQL Router时,需要自行配置好后端MySQL的高可用。高可用建议通过Percona XtraDB Cluster或MariaDB Galera或MySQL官方的group replication实现,如果实在没有选择,还可以通过MHA实现。所以,一个简单的MySQL Router部署图如下。本文将使用MySQL Router分别实现后端无MySQL主从高可用情形的读写分离,至于为什么不实现后端有MySQL高可用的读写分离情形。在我看来,MySQL Router只是一个玩具,不仅功能少,而且...
Ansible Tower 3.5.1 平台部署和破解 Ansible Tower (以前叫’AWX’)是能够帮助任何IT团队更容易使用Ansible的解决方案。该方案基于web。 Tower允许对用户进行权限控制,即使某用户不能传送某SSH凭证,你也可以通过Tower来对该用户共享该凭证。我们可以通过图形化界面来管理Inventory,也可以对各种各样的云资源做同步。Tower可以记录所有job的日志,也可以与LDAP集成,并且拥有强大的可浏览的REST API。Tower也提供了命令行工具,可以与Jenkins轻松集成。Provisioning回调对自动伸缩拓扑图提供了强大的支持。官方网站:https://www.ansible.com/products/tower中文指南:http://www.ansible.com.cn/docs/tower.html官方安装文档:http://docs.ansible.com/ansible-tower/latest/html/quickinstall/index.html官方源地址:http://releases.ansible.com/ansible-tower/setup-bundle/请使用系统原生Python安装,否则很多依赖包会找不到更新yum源更新阿里云YUM源1、备份mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/## CentOS 6 wget -O /etc/yum.repos.d/CentOS-Base.repo http:...
一、安装前环境Centos 7 最小化安装 | 4G内存 | 100GB硬盘注:Ansible-Tower目前支持7.4+的版本,可以使用yum update -y命令更新同时机器一定要联网,因为执行./setup的时候会联网安装很多的依赖包,安装速度和你的网速有关二、安装Ansible1.安装Ansible的epel源yum install -y http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmyum update -y2.清空缓存,安装Ansibleyum clean allyum install -y ansible至此Ansible安装成功注意,将centos的yum源,更换成国内的比如163,阿里源。不然会出现软件不能下载问题。三、安装Ansible-Tower1.下载解压所需的安装包cd /homeyum install -y wgetwget http://releases.ansible.com/ansible-tower/setup/ansible-tower-setup-latest.tar.gztar zxvf ansible-tower-setup-latest.tar.gz2.移动安装包到/usr/local下mv ansible-tower-setup-3.6.3/ /opt/ansible-tower3.配置inventory文件  进入/opt/ansible-tower目录下, 更改配置如下:# cat inventory [tower]localhost ansible_connection=local[database][all:vars]admin_password='admin' #增加,默认无pg_host=''pg_port=''pg_database='awx'pg_usernam...
  Ansible实现zookeeper集群安装 1.软件准备[root@node1 soft]# ll total 37535744 -rw-r--r-- 1 root root 255201772 Sep 19 10:15 flink-1.9.0-bin-scala_2.11.tgz -rw-r--r-- 1 root root 195094741 Jul 6 00:09 jdk-8u221-linux-x64.tar.gz -rw-r--r-- 1 root root 37535744 Sep 20 14:49 zookeeper-3.4.14.tar.gz 2.hosts配置[jdk] 172.17.16.4 172.17.16.12 172.17.16.13 #此处的index最终会写入到myid [zookeeper] 172.17.16.4 ansible_index=0 172.17.16.12 ansible_index=1 172.17.16.13 ansible_index=2 3.JDK安装见Ansible实现JDK批量安装4.yaml编写 - hosts: zookeeper   remote_user: root   vars:      name: "zookeeper"      install_path: /data/cloud      work_path: /data/work   tasks:    - name: "1.初始化工作目录"      shell: mkdir -p&n...
通过ansible-playbook使用yaml剧本给centos7安装jdk8 建 个jdk8.yaml文件,使用ansible-playbook jdk8.yaml 命令执行远程安装。注意yaml语法,使用 空格 缩进,项目要对齐,不然一堆报错,而且报错还会不准。建议使用 vscode软件编写,添加ansible,yaml相关插件后,写完调试无错误后,就会少很多麻烦。本机系统 windows server 2016,安装cygwin时添加好ansible功能,再配置好免密主机。就可以使用了。- name: 'jdk8 install'  hosts: web  remote_user: root  vars:       install_path: '/usr/jdk8'  tasks:    - name: "初始化jdk目录"      shell: mkdir -p {{install_path}}    - name: "上传源码包"      copy: src=/home/Administrator/jdk8.tar.gz dest={{install_path}}    - name: "解压安装包"      shell: tar -zxvf {{install_path}}/jdk8.tar.gz -C {{install_path}} --strip-components 1    - name: "添加变量环境" &...
 
0

Ansible 实现SSH免密

发表者:admin分类:系统运维2020-04-02 23:24:30 阅读[148]
Ansible 实现SSH免密1.ansible安装[root@node1 soft]# yum install ansible -y 2.ansible配置/etc/ansible/ansible.cfg[defaults] host_key_checking = False /etc/ansible/hosts#1.初始化主机免密时使用,初始化完成删除该组 [ssh-init] 172.17.16.4 ansible_ssh_user=root ansible_ssh_pass=flink@123 172.17.16.12 ansible_ssh_user=root ansible_ssh_pass=flink@123 172.17.16.13 ansible_ssh_user=root ansible_ssh_pass=flink@123 #2.通用属性 [ssh-init:vars] ssh_port=22 #3.初始化免密后,生产时使用 [product] 172.17.16.4 172.17.16.12 172.17.16.13 4.编写yaml文件,内容如下- hosts: ssh-init remote_user: root vars: - name: "ssh-init" tasks: - name: "1.初始化" shell: rm -rf ~/.ssh/* && echo {{item.key}} {{item.value.ansible_hostname}} >> /etc/hosts with_dict: "{{hostvars}}" #不打印日志 no_log: True #局部打印日志 #loop_control: #label: "" - name: "2.生成新的公钥和私钥...
sed 替换匹配开头字符的行配置文件/etc/config.txt中有一行是version=xx.xx.xx每次进行版本发布,需要重新填写这个值,可以用shell脚本中,加入sed命令来完成新版本号的替换#首先定义一个新版本号的变量var="version=6.1.1"sed -i '/^version=/c'$var'' /etc/config.txti :直接修改读取的文件内容,而不是输出到终端。^表示一行的开头sed匹配某一行开头,替换整行内容sed -i '/^cloud_server/ccloud_server_ip = update' name.txt[root@centos8-38 opt]# cat sed.txt coud_server xxdfdkjjjj1111 3333coud_server 3333coud_server dddd 3333[root@centos8-38 opt]# coud="cloud_server=1111"[root@centos8-38 opt]# [root@centos8-38 opt]# sed  '/^coud/c'$coud'' sed.txt cloud_server=1111cloud_server=1111cloud_server=1111sed 匹配部分替换[root@centos8-38 opt]# sed  's/dddd/gggg/g' sed.txt coud_server xxdfdkjjjj1111 3333coud_server 3333coud_server gggg 3333sed 匹配行中部分内容,替换整行[root@centos8-38 opt]# sed  '/.*dddd.*/c'$coud'' sed.txt coud_server xxdfdkjjjj1111 3333coud_server 3333cloud_server=111...
一位来自加拿大的大四学霸,开发了一款”Deep TabNine“代码补全工具,实现了这一大胆的想法。它支持23种编程语言、5种编辑器,使用简单,效果惊艳。不少使用过的网友说:TabNine是他们用过的最好的代码补全工具,这是属于程序员的杀手级应用。Deep TabNine支持Python:图片发自简书App速度不是一般的快,而且支持5种编辑器TabNine支持:VS Code、Sublime Text、Atom、Emacs、Vim五种代码编辑器。对于使用VS Code和Sublime来说,安装TabNine非常方便,用自带的扩展包管理工具即可。作者表示,TabNine还在不断更新完善中,正在改进这些bug。PS:补上网址:TabNine网站:https://tabnine.com/Jackson GitHub主页:https://github.com/zxqfl作者:大白python链接:https://www.jianshu.com/p/992e07a19326来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
    总共268页,当前第5页 | 页数:
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15