ubuntu(1.18.04)上使用kubeadm安装k8s(1.22.4)
更改下包的代理 使用root用户:sudo su 或者sudo -s
sudo chmod +777 /etc/apt/sources.list
cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo cat >/etc/apt/sources.list <<EOF
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty main restricted
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty main restricted
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates main restricted
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates main restricted
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty universe
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty universe
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates universe
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates universe
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu trusty-security main restricted
deb-src http://security.ubuntu.com/ubuntu trusty-security main restricted
deb http://security.ubuntu.com/ubuntu trusty-security universe
deb-src http://security.ubuntu.com/ubuntu trusty-security universe
deb http://security.ubuntu.com/ubuntu trusty-security multiverse
deb-src http://security.ubuntu.com/ubuntu trusty-security multiverse
EOFsudo apt-get update
安装 kubeadm | Kubernetes
配置环境
# 关防火墙
(centos版)systemctl stop firewalld && systemctl disable firewalld
(ubuntu版)sudo ufw disable && sudo ufw status (https://blog.csdn.net/weixin_34293246/article/details/92148586)#关selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config #永久
setenforce 0 #临时#关闭swap
sed -ri 's/.*swap.*/#&/' /etc/fstab #永久 (或vim /etc/fstab 注释掉最后一行的swap)
swapoff -a #临时
free -m #插看分区情况#根据规划设置主机名
hostnamectl set-hostname <host-name>#在 master端 添加hosts
cat >> /etc/hosts << EOF
192.168.7.156 master
192.168.4.37 node2
192.168.7.73 node3
EOF
# 复制scp /etc/hosts sa@node2:/etc/hosts#时间同步
sudo apt install ntpdate
sudo ntpdate time.windows.com#安装ipvsadm
sudo apt install ipvsadm ####以下为centos 安装
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y conntrack ntpdate ntp ipvsadm ipset jq iptables curl sysstat libseccomp wget vim net-tools yum-utils device-mapper-persistent-data lvm2
systemctl stop firewalld && systemctl disable firewalld
swapoff -a && sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
setenforce 0 && sed -i 's/enforcing/disabled/' /etc/selinux/config
systemctl stop postfix && systemctl disable postfix
#升级centos内核
rpm -Uvh https://elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install -y kernel-lt
grub2-set-default "CentOS Linux (5.4.171-1.el7.elrepo.x86_64) 7 (Core)"
安装Docker
https://docs.docker.com/engine/install/ubuntu/
sudo apt-get updatesudo apt-get install \ca-certificates \curl \gnupg \lsb-releasecurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgecho \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get updatesudo apt-get install docker-ce docker-ce-cli containerd.iosudo docker run hello-world#add mirror
cat > /etc/docker/daemon.json << EOF
{"exec-opts": ["native.cgroupdriver=systemd"],"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOFsudo systemctl enable docker
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl status docker
docker --version
安装 kubeadm
更新
apt
包索引并安装使用 Kubernetesapt
仓库所需要的包:sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl
下载 aliyun 公开签名秘钥:
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg http://pub.mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg
添加 Kubernetes
apt
仓库:echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] http://pub.mirrors.aliyun.com/kubernetes/apt kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
更新
apt
包索引,安装 kubelet、kubeadm 和 kubectl,并锁定其版本:sudo apt-get update sudo apt-get install -y kubelet kubeadm kubectl sudo apt-mark hold kubelet kubeadm kubectl
使用 kubeadm 创建集群 | Kubernetes
部署Master
sudo kubeadm init --apiserver-advertise-address=192.168.7.156 --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --kubernetes-version v1.22.4
记下其中的token,加入node节点时会用到。
sudo makedir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl get nodes
部署Nodes
同样按照上述步骤安装好docker、kubelet,并将master节点上的/etc/kubernetes/pki/etcd拷贝到slave相同位置,用于calico-node连接etcd使用,然后在slave节点上执行以下命令即可加入集群:
# master生成的语句拷下来运行kubeadm join 192.168.7.156:6443 --token 5d6vn3.wu8z79dr0bs4yp10 \--discovery-token-ca-cert-hash sha256:4f3f46a02ec6cebc4db8e0003f8ac270658a59a202549613f16176d398db809a
注意:默认token的有效期为24小时,当过期之后,该token就不可用了。此时可以重新生成token:
kubeadm token generate
kubeadm token create <generated-token> --print-join-command --ttl=0
设置–ttl=0代表永不过期
应用flannel进行网路链接
kubectl apply -f https://docs.projectcalico.org/v3.0/getting-started/kubernetes/installation/hosted/canal/rbac.yaml若连不上可以,从 https://gitee.com/ylp657/kubernetes/blob/master/kube-flannel.yaml下载本地运行echo "export KUBECONFIG=/etc/kubernetes/kubelet.conf" >> /etc/profile
source /etc/profile
其他人遇到的问题我的k8s随笔:Kubernetes部署-问题篇 | 迟思堂随笔
Ubuntu 国内安装 kubernetes - 编程之家D
Dashboeard 的创建
Web 界面 (Dashboard) | Kubernetes
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml若下载不下来可以用
https://github.com/kubernetes/dashboard/blob/v2.2.0/aio/deploy/recommended.yaml
创建用户
kubectl create serviceaccount lucky-admin -n default 若用其他命名空间,先创建
做rolebingding绑定
kubectl create rolebinding lucky-admin -n default --clusterrole=cluster-admin --serviceaccount=default:lucky-admin
查看secret
kubectl get secret -n default 会发现 lucky-admin-token
查看token的内容
kubectl describe secret lucky-admin-token-55hh8 -n default
运行命令行代理
kubectl proxy
kubectl 会使得 Dashboard 可以通过 http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/访问。
采用token ,token的值就是上面生成的 就可以登陆
ubuntu(1.18.04)上使用kubeadm安装k8s(1.22.4)相关推荐
- debian最小化安装如何安装桌面_如何在Ubuntu Server 18.04上安装GNOME桌面
如果您已经采用了Ubuntu Server 18.04,你一定会感到非常自豪.然而,无论您多么关注它,您都意识到您的it管理生命中的大部分时间都在使用GUI,并且您不太确定接下来要做什么?如果这样描述 ...
- linux卸载kodi,在Ubuntu 18.04上,如何安装Kodi
Kodi (以前称为XBMC )是一个免费的开放源代码跨平台媒体播放器和娱乐中心,可让你组织和播放Internet,本地和网络存储中的流媒体,例如视频,播客,音乐. 在本教程中,我们引导你如何在Ubu ...
- linux joomla安装教程,如何在Ubuntu 18.04上使用Apache安装Joomla
Joomla是为数十万个网站提供支持的最受欢迎的开源内容管理系统之一.它是用PHP编写的,并且包含大量功能,可以使用免费和高级扩展以及主题进行扩展.使用Joomla,您可以轻松建立自己的电子商务商店, ...
- linux服务器版怎么安装桌面,如何在Ubuntu Server 18.04上安装GNOME桌面
如果您已经采用了Ubuntu Server 18.04,你一定会感到非常自豪.然而,无论您多么关注它,您都意识到您的it管理生命中的大部分时间都在使用GUI,并且您不太确定接下来要做什么?如果这样描述 ...
- 在Ubuntu 18.04上使用Nginx安装WordPress
WordPress is one of the most popular and open source content management system (CMS) with a whopping ...
- Ubuntu 18.04 上使用 OpenJDK 安装并运行 Tomcat
在Linux上安装与卸载JDK和JRE,两种常用方法: 一.通过 apt-get 命令在线进行安装与卸载(会自动配置好环境变量) 二.通过下载并解压 .tar.gz 包进行手动安装与手动卸载(需要手动 ...
- openjdk怎么执行java命令_Ubuntu 18.04 上使用 OpenJDK 安装并运行 Tomcat
在Linux上安装与卸载JDK和JRE,两种常用方法: 一.通过 apt-get 命令在线进行安装与卸载(会自动配置好环境变量) 二.通过下载并解压 .tar.gz 包进行手动安装与手动卸载(需要手动 ...
- linux网络唤醒,如何在Ubuntu Server 18.04中启用网络唤醒(WOL)
网络唤醒(WOL)是一种行业标准协议,用于远程唤醒服务器.如果您管理着很多设备,因此不需要为了唤醒服务器而去数据中心.启用允许您远程执行此操作的功能,这样您可以更高效地工作. Ubuntu 系统默认没 ...
- Linux-Ubuntu Desktop 18.04 LTS版本的安装(支持到2023年)
Ubuntu Desktop 18.04 LTS版本的安装 1.Ubuntu 18.04 LTS 系统盘的制作 2.ThinkCentre台式机 3.一直下一步,最终拔掉优盘,重新启动,完成安装. 4 ...
最新文章
- jQuery 属性操作——案例:购物车案例模块
- 博弈论笔记:不完全信息与声誉
- 神经网络上采样之:反卷积
- 递归神经网络部分组件(七)
- 如何打造高性能Web应用
- go语言int类型转化成string类型的方式
- unity text不能刷新_Unity使用ComputerShader实时压缩RT!
- Object常用方法
- linux安装软件命令总结
- 群晖 php,群晖NAS安装配置typecho博客教程
- JavaWeb教程———Ajax
- 记录自己需要读的几本书
- eclipse neon Java编辑器页面字体更改
- 为什么hashmap的容量必须是2的n次幂
- c语言socket通讯和进行进行大文件分片传输
- 中英介绍寒食节、清明节的来历及习俗
- Java----映射 map
- 经典蓝牙和低功耗蓝牙的区别
- HTML简单的个人博客网站 DIV学生网页设计作品 dreamweaver作业静态HTML网页设计模板 个人网页作业制作
- ORA-02019:未找到远程数据库的连接说明(数据库链接创建)