一、centos7 升级内核
1. 导入签名文件
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
2. 安装rpm包
登录https://www.elrepo.org,查看centos7获取到添加源的语句。
yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
3. 安装当前主分支上最新的内核
yum --enablerepo=elrepo-kernel install -y kernel-ml
4. GRUB 初始化页面的第一个内核设置为默认内核
修改grub文件
vi /etc/default/grub
将GRUB_DEFAULT=saved修改为 GRUB_DEFAULT=0,wq保存。
5. 重新编译内核启动文件
grub2-mkconfig -o /boot/grub2/grub.cfg
6. 重启centos
reboot
7. 删除旧内核
rpm -qa |grep kernel
yum autoremove kernel-3.10.0-1062.el7.x86_64
[k8s@rancher ~]$ uname -a
Linux rancher 5.1.15-1.el7.elrepo.x86_64 #1 SMP Tue Jun 25 10:52:45 EDT 2019 x86_64 x86_64 x86_64 GNU/Linux
8.overlay2: Linux内核版本4.0或更高版本,或使用内核版本3.10.0-514+的RHEL或CentOS。
二、rancher 安装
1.环境基本配置
sudo sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/selinux/config
systemctl stop firewalld.service && systemctl disable firewalld.service
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
sudo echo ‘LANG=“en_US.UTF-8”’ >> /etc/profile;source /etc/profile
cat >> /etc/sysctl.conf<<EOF
net.ipv4.ip_forward=1
net.bridge.bridge-nf-call-iptables=1
net.ipv4.neigh.default.gc_thresh1=4096
net.ipv4.neigh.default.gc_thresh2=6144
net.ipv4.neigh.default.gc_thresh3=8192
EOF
sysctl -p
2.docker 安装
# 添加用户(可选)
sudo adduser k8s
# 为新用户设置密码
sudo passwd 1qaz2wsx
# 为新用户添加sudo权限
sudo echo k8s ALL=(ALL) ALL' >> /etc/sudoers
# 卸载旧版本Docker软件
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
container*
# 定义安装版本
export docker_version=18.06.3
# step 1: 安装必要的一些系统工具
sudo yum remove docker docker-client docker-client-latest \
docker-common docker-latest docker-latest-logrotate \
docker-logrotate docker-engine -y;
sudo yum update -y;
sudo yum install -y yum-utils device-mapper-persistent-data \
lvm2 bash-completion;
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo;
# Step 3: 更新并安装 Docker-CE
sudo yum makecache all;
version=$(yum list docker-ce.x86_64 --showduplicates | sort -r|grep ${docker_version}|awk '{print $2}');
sudo yum -y install --setopt=obsoletes=0 docker-ce-${version} docker-ce-selinux-${version};
把当前用户加入docker组
sudo usermod -aG docker <new_user>
;
设置开机启动
sudo systemctl enable docker;
touch /etc/docker/daemon.json
cat > /etc/docker/daemon.json <<EOF
{
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
},
"max-concurrent-downloads": 10,
"max-concurrent-uploads": 10,
"registry-mirrors": ["https://7bezldxe.mirror.aliyuncs.com"],
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOF
systemctl daemon-reload && systemctl restart docker
3.开始安装rancher
docker run -d --restart=unless-stopped \
-p 80:80 -p 443:443 \
-v /app:/var/lib/rancher/ \
-v /root/var/log/auditlog:/var/log/auditlog \
-e AUDIT_LEVEL=3 \
rancher/rancher:stable
4.添加节点
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.2.4 --server https://192.168.100.200 --token sd28h8hkmwz5cxscfvvgqdmv8tdnn8kxh8brs7skvxmt9lz6kwhb95 --ca-checksum 7cecddef9193ed3d6c84c4eb49fa9540bd1d73fd73211c4d2f52acdc64625042 --etcd --controlplane --worker --label app=nginx
5.镜像列表
[k8s@rancher app]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
rancher/rancher-agent v2.2.4 7b50ddb5354c 3 weeks ago 290MB
rancher/rancher stable 2c8edab4e2d9 3 weeks ago 477MB
rancher/rke-tools v0.1.28 562fe67a8501 2 months ago 132MB
rancher/hyperkube v1.13.5-rancher1 5731d7826aae 3 months ago 965MB
rancher/nginx-ingress-controller 0.21.0-rancher3 2b37f252629b 3 months ago 569MB
rancher/flannel-cni v0.3.0-rancher1 21b791d07d94 4 months ago 49.9MB
rancher/kube-api-auth v0.1.3 2817cb463960 4 months ago 149MB
rancher/coreos-prometheus-config-reloader v0.29.0 a423c29a75a1 4 months ago 21.3MB
rancher/coreos-prometheus-operator v0.29.0 c2b326d77cd7 4 months ago 45.5MB
rancher/prometheus-auth v0.2.0 3aec1203a72a 4 months ago 43.5MB
rancher/nginx 1.15.8-alpine b411e34b4606 5 months ago 16.1MB
rancher/prom-prometheus v2.7.1 690f4cf8dee2 5 months ago 101MB
rancher/grafana-grafana 5.4.3 d0454da13c84 5 months ago 240MB
rancher/coreos-kube-state-metrics v1.5.0 91599517197a 5 months ago 31.8MB
rancher/prom-node-exporter v0.17.0 b3e7f67a1480 7 months ago 21MB
rancher/k8s-dns-sidecar 1.15.0 10ea5f40b581 7 months ago 41.4MB
rancher/k8s-dns-kube-dns 1.15.0 6e3a56d0cb18 7 months ago 49.1MB
rancher/k8s-dns-dnsmasq-nanny 1.15.0 5427e2ee0767 7 months ago 39.8MB
rancher/metrics-server v0.3.1 61a0c90da56e 9 months ago 40.8MB
rancher/coreos-etcd v3.2.24-rancher1 1ca16a54d196 11 months ago 37.3MB
rancher/coreos-flannel v0.10.0-rancher1 f0fad859c909 17 months ago 44.6MB
rancher/pause 3.1 da86e6ba6ca1 18 months ago 742kB
rancher/nginx-ingress-controller-defaultbackend 1.4-rancher1 846921f0fe0e 20 months ago 4.84MB
rancher/coreos-configmap-reload v0.0.1 3129a2ca29d7 2 years ago 4.79MB
rancher/cluster-proportional-autoscaler 1.0.0 e183460c484d 2 years ago 48.2MB
6. docker info
[k8s@rancher /]$ sudo docker info
[sudo] password for k8s:
Containers: 56
Running: 42
Paused: 0
Stopped: 14
Images: 25
Server Version: 18.09.7
Storage Driver: overlay2
Backing Filesystem: xfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 5.1.15-1.el7.elrepo.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 3.852GiB
Name: rancher
ID: LP7N:SGJM:5BS4:RJG5:O3GZ:OVIJ:22BE:TXOA:D4QC:QOWQ:DCQA:DDEE
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Registry Mirrors:
https://7bezldxe.mirror.aliyuncs.com/
Live Restore Enabled: false
Product License: Community Engine
WARNING: bridge-nf-call-ip6tables is disabled
7. docker ps
[k8s@rancher /]$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
aefeb6328cc5 690f4cf8dee2 "/bin/prometheus --w…" About an hour ago Up About an hour k8s_prometheus_prometheus-cluster-monitoring-0_cattle-prometheus_8ad71000-9d64-11e9-8e17-080027081a62_1
3eb73c5b20dc rancher/coreos-configmap-reload "/configmap-reload -…" About an hour ago Up About an hour k8s_rules-configmap-reloader_prometheus-cluster-monitoring-0_cattle-prometheus_8ad71000-9d64-11e9-8e17-080027081a62_0
0e6367e1ffa4 rancher/nginx "nginx -g 'daemon of…" About an hour ago Up About an hour k8s_grafana-proxy_grafana-cluster-monitoring-65d7cfccd8-2ss2p_cattle-prometheus_d3097e14-9d62-11e9-8e17-080027081a62_0
67cefe9111c4 3aec1203a72a "prometheus-auth --p…" About an hour ago Up About an hour k8s_prometheus-agent_prometheus-cluster-monitoring-0_cattle-prometheus_8ad71000-9d64-11e9-8e17-080027081a62_0
a9e5926116df rancher/nginx "/bin/sh -c 'cp /ngi…" About an hour ago Up About an hour k8s_prometheus-proxy_prometheus-cluster-monitoring-0_cattle-prometheus_8ad71000-9d64-11e9-8e17-080027081a62_0
5c86552c575e d0454da13c84 "/run.sh" About an hour ago Up About an hour k8s_grafana_grafana-cluster-monitoring-65d7cfccd8-2ss2p_cattle-prometheus_d3097e14-9d62-11e9-8e17-080027081a62_0
dc0c58c46440 rancher/coreos-prometheus-config-reloader "/bin/prometheus-con…" About an hour ago Up About an hour k8s_prometheus-config-reloader_prometheus-cluster-monitoring-0_cattle-prometheus_8ad71000-9d64-11e9-8e17-080027081a62_0
5b3887fe8576 rancher/k8s-dns-sidecar "/sidecar --v=2 --lo…" 2 hours ago Up 2 hours k8s_sidecar_kube-dns-58bd5b8dd7-nzmr4_kube-system_916601f3-9d62-11e9-8e17-080027081a62_0
f96320dbacd5 rancher/coreos-kube-state-metrics "/kube-state-metrics…" 2 hours ago Up 2 hours k8s_kube-state_exporter-kube-state-cluster-monitoring-58f946d4d7-n8vnd_cattle-prometheus_d2f5e3a6-9d62-11e9-8e17-080027081a62_0
26a0413cafab rancher/prom-node-exporter "/bin/node_exporter …" 2 hours ago Up 2 hours k8s_exporter-node_exporter-node-cluster-monitoring-s796r_cattle-prometheus_d2ee5433-9d62-11e9-8e17-080027081a62_0
4efbbf9a2340 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_prometheus-cluster-monitoring-0_cattle-prometheus_8ad71000-9d64-11e9-8e17-080027081a62_0
1c21ea94307c rancher/coreos-prometheus-operator "/bin/operator --kub…" 2 hours ago Up 2 hours k8s_prometheus-operator_prometheus-operator-monitoring-operator-85cbcb85b-n5p62_cattle-prometheus_d0abf6fc-9d62-11e9-8e17-080027081a62_0
75836b20c216 rancher/k8s-dns-dnsmasq-nanny "/dnsmasq-nanny -v=2…" 2 hours ago Up 2 hours k8s_dnsmasq_kube-dns-58bd5b8dd7-nzmr4_kube-system_916601f3-9d62-11e9-8e17-080027081a62_0
ab850bb5db92 rancher/nginx-ingress-controller-defaultbackend "/server" 2 hours ago Up 2 hours k8s_default-http-backend_default-http-backend-78fccfc5d9-z4btm_ingress-nginx_97875e1a-9d62-11e9-8e17-080027081a62_0
485b4803744e rancher/kube-api-auth "/bin/sh -c 'kube-ap…" 2 hours ago Up 2 hours k8s_kube-api-auth_kube-api-auth-2tqjw_cattle-system_aefd8094-9d62-11e9-8e17-080027081a62_0
8477cc4cc645 rancher/cluster-proportional-autoscaler "/cluster-proportion…" 2 hours ago Up 2 hours k8s_autoscaler_kube-dns-autoscaler-77bc5fd84-m4zqp_kube-system_91efacc4-9d62-11e9-8e17-080027081a62_0
32245e59f236 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_grafana-cluster-monitoring-65d7cfccd8-2ss2p_cattle-prometheus_d3097e14-9d62-11e9-8e17-080027081a62_0
679c11495016 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_exporter-kube-state-cluster-monitoring-58f946d4d7-n8vnd_cattle-prometheus_d2f5e3a6-9d62-11e9-8e17-080027081a62_0
6da674d07700 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_exporter-node-cluster-monitoring-s796r_cattle-prometheus_d2ee5433-9d62-11e9-8e17-080027081a62_0
bedf6d6e3e1d rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_prometheus-operator-monitoring-operator-85cbcb85b-n5p62_cattle-prometheus_d0abf6fc-9d62-11e9-8e17-080027081a62_0
35143dc873ed rancher/k8s-dns-kube-dns "/kube-dns --domain=…" 2 hours ago Up 2 hours k8s_kubedns_kube-dns-58bd5b8dd7-nzmr4_kube-system_916601f3-9d62-11e9-8e17-080027081a62_0
604b28bf9bab rancher/metrics-server "/metrics-server --k…" 2 hours ago Up 2 hours k8s_metrics-server_metrics-server-58bd5dd8d7-9q7bq_kube-system_94304c73-9d62-11e9-8e17-080027081a62_0
2f90c0e25ef7 7b50ddb5354c "run.sh" 2 hours ago Up 2 hours k8s_agent_cattle-node-agent-hst6p_cattle-system_aef28566-9d62-11e9-8e17-080027081a62_0
a6ca43671a0f 7b50ddb5354c "run.sh" 2 hours ago Up 2 hours k8s_cluster-register_cattle-cluster-agent-65478dbf7c-txwd7_cattle-system_9f531f97-9d62-11e9-8e17-080027081a62_0
97fc5524a35f rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_kube-api-auth-2tqjw_cattle-system_aefd8094-9d62-11e9-8e17-080027081a62_0
9536c58b9df4 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_cattle-node-agent-hst6p_cattle-system_aef28566-9d62-11e9-8e17-080027081a62_0
06c94cf8c110 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_nginx-ingress-controller-ppjrg_ingress-nginx_aef784d9-9d62-11e9-8e17-080027081a62_0
f9eb3ce7b5cb rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_cattle-cluster-agent-65478dbf7c-txwd7_cattle-system_9f531f97-9d62-11e9-8e17-080027081a62_0
8e3bda031332 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_default-http-backend-78fccfc5d9-z4btm_ingress-nginx_97875e1a-9d62-11e9-8e17-080027081a62_0
c5b6e33e1f5a rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_kube-dns-autoscaler-77bc5fd84-m4zqp_kube-system_91efacc4-9d62-11e9-8e17-080027081a62_0
55af6674e3b7 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_metrics-server-58bd5dd8d7-9q7bq_kube-system_94304c73-9d62-11e9-8e17-080027081a62_0
47cc9d8c7d34 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_kube-dns-58bd5b8dd7-nzmr4_kube-system_916601f3-9d62-11e9-8e17-080027081a62_0
7c6112bebb86 rancher/flannel-cni "/install-cni.sh" 2 hours ago Up 2 hours k8s_install-cni_kube-flannel-zx2k8_kube-system_8e054f38-9d62-11e9-8e17-080027081a62_0
a19d37ffcf90 rancher/coreos-flannel "/opt/bin/flanneld -…" 2 hours ago Up 2 hours k8s_kube-flannel_kube-flannel-zx2k8_kube-system_8e054f38-9d62-11e9-8e17-080027081a62_0
e101e0cafd24 rancher/pause:3.1 "/pause" 2 hours ago Up 2 hours k8s_POD_kube-flannel-zx2k8_kube-system_8e054f38-9d62-11e9-8e17-080027081a62_0
0b243feb7d73 rancher/hyperkube:v1.13.5-rancher1 "/opt/rke-tools/entr…" 2 hours ago Up 2 hours kube-proxy
8c2aad7350ab rancher/hyperkube:v1.13.5-rancher1 "/opt/rke-tools/entr…" 2 hours ago Up 2 hours kubelet
fd232fd6bc38 rancher/hyperkube:v1.13.5-rancher1 "/opt/rke-tools/entr…" 2 hours ago Up 2 hours kube-scheduler
f72364d5831f rancher/hyperkube:v1.13.5-rancher1 "/opt/rke-tools/entr…" 2 hours ago Up 2 hours kube-controller-manager
d2da9423936c rancher/hyperkube:v1.13.5-rancher1 "/opt/rke-tools/entr…" 2 hours ago Up 2 hours kube-apiserver
0ddfdd3bf945 rancher/coreos-etcd:v3.2.24-rancher1 "/usr/local/bin/etcd…" 2 hours ago Up 2 hours etcd
1b828f16a39b rancher/rancher:stable "entrypoint.sh" 2 hours ago Up 2 hours 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp hopeful_napier
8. 登录管理
9. demo集群监控
10. kubectl get cm --all-namespaces
11. kubectl top pod --all-namespaces
[k8s@rancher ~]$ kubectl top pod --all-namespaces
NAMESPACE NAME CPU(cores) MEMORY(bytes)
cattle-prometheus exporter-kube-state-cluster-monitoring-58f946d4d7-n8vnd 2m 24Mi
cattle-prometheus exporter-node-cluster-monitoring-s796r 5m 14Mi
cattle-prometheus grafana-cluster-monitoring-65d7cfccd8-2ss2p 27m 60Mi
cattle-prometheus prometheus-cluster-monitoring-0 96m 200Mi
cattle-prometheus prometheus-operator-monitoring-operator-85cbcb85b-n5p62 18m 28Mi
cattle-system cattle-cluster-agent-65478dbf7c-txwd7 24m 81Mi
cattle-system cattle-node-agent-hst6p 1m 22Mi
cattle-system kube-api-auth-2tqjw 4m 24Mi
ingress-nginx default-http-backend-78fccfc5d9-z4btm 1m 4Mi
ingress-nginx nginx-ingress-controller-ppjrg 0m 0Mi
kube-system kube-dns-58bd5b8dd7-nzmr4 4m 55Mi
kube-system kube-dns-autoscaler-77bc5fd84-m4zqp 1m 10Mi
kube-system kube-flannel-zx2k8 5m 35Mi
kube-system metrics-server-58bd5dd8d7-9q7bq 2m 22Mi