积木成楼
首页 / kubernetes

kubernetes(一)

2022-02-20 · kubernetes · 约 11 分钟

kubernetes 概念

kubernetes 的组成

Node 节点(部署了 kubernetes 的机器)

组件

控制平面组件 (Control Plane Components)

对集群进行调度&检测

Node 组件

在每个节点上运行,维护运行的Pod 提供 kubernetes 运行环境

插件 Addons ( 提供集群级别功能)

installer

docker 的安装

# 将防火墙 配置全部置空

systemctl stop firewalld && systemctl disable firewalld

iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

# 关闭内存交换
swapoff -a

# 关闭 selinux 
vim /etc/selinux/config
# 修改后重启
SELINUX=disabled

yum remove docker  docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

yum install -y yum-utils

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

yum install docker-ce docker-ce-cli containerd.io -y

systemctl start docker

systemctl enable docker

minikube 的安装

安装 kubectl

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=0
repo_gpgcheck=0
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 kubectl

# 或者直接拉二进制文件
curl -Lo kubectl https://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/v1.20.2/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/

安装 单机 minikube

curl -Lo minikube https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/release/v1.20.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

yum install epel-release -y 
yum install conntrack-tools -y

minikube version

sudo /usr/local/bin/minikube start --registry-mirror=https://registry.docker-cn.com --vm-driver=none --alsologtostderr -v=4

安装 k8s 面板

yum install xdg-utils 

minikube dashboard

# 出现下列信息 就已经开启
* 正在验证 dashboard 运行情况 ...
* Launching proxy ...
* 正在验证 proxy 运行状况 ...
http://127.0.0.1:46491/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/
可能会碰到的问题
systemctl stop kubectl
systemctl stop docker

# 将防火墙 配置全部置空
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

systemctl start kubectl
systemctl start docker
# 思路一 ,本机开 nginx 代理转发流量
upstream api_k8s_service {
  server localhost:46491;
}

server {
    listen       8099;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;

    location / {
	proxy_set_header Host 127.0.0.1;
        proxy_pass http://api_k8s_service/;
    }

}

# 思路二 
kubectl proxy --address='0.0.0.0' --accept-hosts='^*$'

# 这样就可以直接访问 不需要 minikuba dashboard
http://xx.xx.x.xx:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/overview?namespace=default
# 访问
http://xx.xx.x.xx:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/overview?namespace=default

应用部署

← 返回文章列表