版本:
18.06-ce
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.12.1.ce-1.el7.centos.x86_64.rpm
yum install -y ./docker-ce-17.12.1.ce-1.el7.centos.x86_64.rpm
systemctl enable docker
systemctl start docker
/etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=cgroupfs","MountFlags=slave","log-opt max-size=10m","log-opt max-file=3"], #掛載信號,console限額
"graph": "/opt/docker",
"storage-driver": "overlay2", #存儲驅動overlay2
"storage-opts": [
"overlay2.override_kernel_check=true",
"overlay2.size=10G" #overlay2,容器磁盤限額
],
"insecure-registries": ["10.18.19.17:5000"],
"registry-mirrors": ["https://mirror.dianrong.io"],
"hosts": ["tcp://0.0.0.0:4243", "unix:///var/run/docker.sock"]
}
systemd 配置
/usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/docker daemon -H fd://
MountFlags=slave
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
[Install]
WantedBy=multi-user.target
**part1?**
PXE安裝后環境:
* 系統盤:RAID1=1TB,數據盤:RAID5=5TB
* kernel:kernel\-3.10.0-862(對于現存所有環境下的CentOS系統的App服務器,應當計劃逐步遷移更新至kernel?3.10.0-514以上以支持overlay2)
* lang=en\_US.UTF-8
* firewalld:disabled
* selinux:disabled
* 默認分區規則:劃分一塊vg:VolGroup00,以下LV以及掛載點均從此VG創建
1. /=50G
2. /tmp=10G
3. /var=20G
* repo源: 指向自建repo源(上游yum為清華yum repo)
* 網卡bond (em1 em2 主備模式)
* 安裝salt minion
### **part2**
由saltstack master push 配置到minion完成:
* 系統用戶初始化
創建dradmin用戶,uid和gid=2000,分配sudo權限,(添加堡壘機key)
創建zabbix用戶,uid和gid=1010,隸屬zabbix組
創建druser用戶,uid和gid=1000,隸屬druser組
* 系統參數初始化
1. vm.swappiness:0
2. vm.overcommit\_memory:1
3. net.ipv4.ip\_forward:1
4. \* soft nofile 110000
\* hard nofile 160000
5. \* soft nproc 20480
\* hard nproc 20480
root soft nproc unlimited
6. 禁用swapness
7. 禁用ipv6
8. history format 增加時間
9. history size == 10240
* ntpd同步打開
* 安裝通用pkg(vim、lftp、git、net-tools、htop、bind-utils)
* lvm劃分(均為xfs文件系統)
app\_dump VolGroup00 -wi-ao---- 100.00g
app\_logs VolGroup00 -wi-ao---- 100.00g
docker VolGroup00 -wi-ao---- 1000.00g
* 安裝python-pip == 9.0.3
* docker 安裝標準
1. 使用overlay2
2. version:17.12.1-ce(此版本開始支持磁盤配額)
? ? ? 3./etc/docker/daemon.json
{ "exec-opts": ["native.cgroupdriver=cgroupfs","MountFlags=slave","log-opt max-size=10m","log-opt max-file=3"], #掛載信號,console限額 "graph": "/opt/docker", "storage-driver": "overlay2", #存儲驅動overlay2 "storage-opts": [ "overlay2.override_kernel_check=true", "overlay2.size=10G" #overlay2,容器磁盤限額 ], "insecure-registries": ["10.18.19.17:5000"], "registry-mirrors": ["https://mirror.dianrong.io"], "hosts": ["tcp://0.0.0.0:4243", "unix:///var/run/docker.sock"]
? ? ? ?4.systemctl enable docker && system start docker
? ? ? ?5.initial 基礎容器:DOCKER\_VOLUMES
? ? ? ? "Binds": \[
? ? ? ? "/opt/[app\_logs:/app\_logs](http://app_logs/app_logs)",
? ? ? ? "/opt/[app\_dump:/app\_dump](http://app_dump/app_dump)",
? ? ? ? "/opt/[app\_sbin:/app\_sbin](http://app_sbin/app_sbin)"
? ? ? ? ?\],
? ? ? ?
## 安裝后 check 項:
todo
分區,磁盤掛載點
- 云原生應用
- 容器化微服務改造方案
- 應用容器化上線規范
- 服務網格和傳統應用區別
- DevOps 管理規范
- 基礎架構管理規范
- 域名管理規范
- 主機名稱管理規范
- 應用域名管理規范
- 應用上線規范
- GIT分支及API JAR上傳規范
- 基礎架構設計
- 運維管理職責
- 基礎服務
- DNS 內部架構
- centos 及 kernel 版本標準
- Linux服務器OS標準配置
- Docker版本初始化
- kuberneter 集群方案
- kubernetes 命名規范
- Jenkins CI/CD
- nginx 配置文件變更流程
- Prometheus 容器監控
- 項目資源需求
- 應用服務
- 編譯和運行期標準
- 新核心系統基礎服務架構
- 安全防御
- 互聯網軟件可靠性工程及可靠性度量