从0开始部署运维环境
 

openldap 账号管理


pwd=$(cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 9)
file=$0
newfile=${file%%.*}.passwd.txt
echo  "ldap随即生成管理密码:${pwd}" >  ${newfile}
cat   $newfile

docker run -d  -p 389:389 -p 636:636 \
    --name ldap-service \
    --network bridge --hostname openldap --restart=always \
    --env LDAP_ORGANISATION="My Company" \
    --env LDAP_DOMAIN="opsbase.cn" \
    --env LDAP_BASE_DN="dc=opsbase,dc=cn" \
    --env LDAP_ADMIN_PASSWORD="xxxxxxxx" \
    osixia/openldap:latest

jenkins CI/CD持续集成发布

Jenkins安装

http://mirrors.jenkins-ci.org/redhat/

sudo wget  --no-check-certificate -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

yum install jenkins -y
sed -i '/^#/d;/^$/d' /etc/sysconfig/jenkins

systemctl enable jenkins && systemctl  start  jenkins
# 启动jenkins,需要jdk环境

插件

Role-based Authorization Strategy (权限控制插件)

全局安全配置 - 安全域

Server:
ldap://opsbase.cn:389
root DN:
dc=opsbase,dc=cn
Manager DN:
cn=admin,dc=opsbase,dc=cn
Manager Password:
xxxxxx

授权策略

Role-Based Strategy

Simple Theme (皮肤)

官网: http://afonsof.com/jenkins-material-theme/

系统设置 - Theme

http://jenkins.opsbase.cn/userContent/material/material-light.css

AnsiColor (打印颜色)

jobs - 构建环境

Color ANSI Console Output

zabbix 监控

agent部署

agent自定义key采集和配置模板

zabbix sender 采集器的使用

https://opsbase.cn/p/zabbix-sender

跨区域proxy代理

ELK日志平台

主机ELK部署

ELK部署和可视化图表配置: https://opsbase.cn/p/elk

云平台日志服务

阿里云 sls日志服务

创建Project:
nginx-log
日志库Logstore:
nginx
选择实例安装Logtail(通过云助手安装)
web-1,web-2
日志路径:
/usr/local/nginx/logs  *.log
模式:
JSON模式 (log_format已定义未json)

采集客户端 - filebeat

采集本地nginx或者tomcat日志demo:

- input_type: log
  paths:
    - /home/app/logs/*.log
  fields:
    log_source: prod_tomcat
    app: gatewayinner

  exclude_lines: ['idCardImageBase64']
  multiline:
                pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{3}
                negate: true
                match: after

- type: log
  paths:
    - /usr/local/nginx/logs/*.log
  # 包含  include_lines: ['sometext']
  # 排除  exclude_lines: ['^DBG'] #
  json.keys_under_root: true
  json.overwrite_keys: true
  fields:
    log_source: "prod_nginx"

## 输出到redis
output.redis:
  hosts: ["172.16.xx.xx"]
  port: 6379

收集,解析和转换组件 - logstah

nginx tomcat等日志: xxx 采集mysql数据: https://opsbase.cn/p/logstash-sql

流量分析组件 - packetbeat

使用packetbeat对主机异常流量分析: https://opsbase.cn/p/packetbeat

granfana 指标数据的可视化

granfana部署

zabbix 指标

es指标

Prometheus 指标

基础中间件

mongo

ops-manager安装mongo集群部署: https://opsbase.cn/p/ops-manager-mongo-cluster

redis

redis集群: https://opsbase.cn/p/redis-cluster

kafka集群

kafka: https://opsbase.cn/p/kafka-cluster

tidb 关系数据库

大数据平台

CDH6 离线部署

ETL数据采集

hive和impala

BI 可视化报表工具

https://opsbase.cn/p/superset

大数据调度平台

针对日常elt采集脚本调度任务

海豚调度系统: https://dolphinscheduler.apache.org/zh-cn/

azkaban: https://azkaban.github.io/

运维自动化

saltstack使用

ansible工具

fabric

python模块paramiko的再封装可以实现远程操作和部署

paramiko

ssh远程传输,远程执行python工具

https://opsbase.cn/p/paramiko-and-telnetlib

基础服务汇总

openvpn

https://opsbase.cn/p/openvpn

gitlab

https://opsbase.cn/p/gitlab

Atlassian产品部署:jira,confluence,bitbucket

常见网络技术基础知识汇总

网关路由器,防火墙设备

SNAT:地址转换内网ip共享外网地址上网 DNAT: 内网服务器对外端口映射 VRRP: 双机热备;两个NAT出口设置优先级防止网关单点故障 ACL访问控制:通过acl匹配规则来白名单限制映射对外端口 策略路由:通过策略路由获取源地址并指定流向

交换机配置

防环路,堆叠高可用,vlan隔离,链路聚合与主机网卡bond,三层交换机专线通道

主机iptables防火墙配置

https://opsbase.cn/p/iptables

虚拟化(vmware,kvm,proxmox)

kvm虚拟机管理

kvm 日常管理维护命令: https://opsbase.cn/p/kvm-managed

kvm 安装系统: https://opsbase.cn/p/kvm-install-os

vmware

使用vcenter管理vsphere物理机: https://opsbase.cn/p/vcenter

proxmox 虚拟化(类vmware vcenter)

容器

docker部署

curl -sSL https://get.docker.com/ | sh # 安装docker

cat > /etc/docker/daemon.json << EOF
{
    "graph": "/data/docker",
    "registry-mirrors": ["https://7y88q662.mirror.aliyuncs.com"],
    //"registry-mirrors":["https://t5t8q6wn.mirror.aliyuncs.com"],
    "exec-opts": ["native.cgroupdriver=systemd"],
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "100m"
        }
}
EOF

# log日志保存大小设置为100M
# 指定docker默认数据路径
# docker Cgroup Driver为systemd和日志格式设定

systemctl restart docker # 重启docker

dockerfile

https://opsbase.cn/p/dockerfile

docker-compose二进制部署

下载地址: https://github.com/docker/compose/releases

mv docker-compose-linux-x86_64 /usr/local/sbin/docker-compose
chmod +x  /usr/local/sbin/docker-compose
docker-compose version # 查看docker-compose版本

harbor镜像仓库

下载地址: https://github.com/goharbor/harbor/releases

安全防护

WAF应用防护

服务器入侵处理

1.主机一般被入侵后最稳妥的方案是重装系统;因为命令被可能替换,启动项,计划任务,.bashrc,profile环境配置等都容易触发病毒脚本。

Linux下入侵排除命令: https://opsbase.cn/article/35

Linux下入侵检测平台(通过其他主机做对比库): https://opsbase.cn/p/aide

Linux下病毒扫描: https://opsbase.cn/p/clamav


文章作者: 以谁为师
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源!

  目录