docker kubernetes安装配置

systemctl stop firewalld && systemctl disable firewalld
yum install -y epel-release

# 安装docker
yum install -y git vim lrzsz epel-release yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl start docker && systemctl enable docker
##docker 阿里云加速器
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload && systemctl restart docker
 
 
##单机管理 portainer
docker run --restart always --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -d portainer/portainer
 - docker远程访问
vim /usr/lib/systemd/system/docker.service 
[Service] 
ExecStart= 
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
 
systemctl daemon-reload && systemctl restart docker


# kubernetes安装

## 系统环境配置
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
setenforce 0
###关闭内存交换
swapoff -a

##国内源(kubernetes):
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet

## kubeadm config images list(翻墙下载,提前下载镜像)
k8s.gcr.io/kube-apiserver:v1.12.2
k8s.gcr.io/kube-controller-manager:v1.12.2
k8s.gcr.io/kube-scheduler:v1.12.2
k8s.gcr.io/kube-proxy:v1.12.2
k8s.gcr.io/pause:3.1
k8s.gcr.io/etcd:3.2.24
k8s.gcr.io/coredns:1.2.2

quay.io/coreos/flannel:v0.10.0-amd64
k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0

## 初始化master
kubeadm init --kubernetes-version=v1.12.2  --ignore-preflight-errors=Swap   --pod-network-cidr=10.244.0.0/16   --apiserver-advertise-address=0.0.0.0

kubeadm join 10.0.7.247:6443 --token qvdmn7.hzxketyby9c75f2q --discovery-token-ca-cert-hash sha256:62939a125b1f7c99230022ac0b25120bd96d50e9e71d34a9e46e19051cfe1075 --ignore-preflight-errors=Swap


## 安装flannel,仅在master节点上操作
kubectl apply -f  https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
## dashboard
kubectl apply -f  https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
创建登陆账号
kubectl create -f account.yaml
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
https://10.0.7.247:30000

## 客户端软件:https://kubernetic.com
把master节点 .kube/config 放到 C:\Users\用户名\.kube 目录下,打开kubernetic即可

## heapster
mkdir heapster && cd heapster
wget https://raw.githubusercontent.com/kubernetes/heapster/master/deploy/kube-config/influxdb/grafana.yaml
wget https://raw.githubusercontent.com/kubernetes/heapster/master/deploy/kube-config/influxdb/heapster.yaml
wget https://raw.githubusercontent.com/kubernetes/heapster/master/deploy/kube-config/influxdb/influxdb.yaml
wget https://raw.githubusercontent.com/kubernetes/heapster/master/deploy/kube-config/rbac/heapster-rbac.yaml
kubectl create -f heapster/


## 集群操作
### 查看节点
kubectl get nodes
### 查看pods
kubectl get svc,pod --all-namespaces -o wide
kubectl get svc --namespace kube-system
### 查看pods信息
kubectl  describe pods kube-flannel-ds-sr6tq -n  kube-system
### 查看日志
journalctl -f -u kubelet


### token
kubeadm token list
### 生成token
kubeadm token create --print-join-command


###配置文件
/etc/kubernetes/admin.conf /etc/kubernetes/kubelet.conf /etc/kubernetes/bootstrap-kubelet.conf /etc/kubernetes/controller-manager.conf /etc/kubernetes/scheduler.conf

猜你喜欢

转载自my.oschina.net/u/1248740/blog/2885287