第一步:基础网络配置,需要能解析域名
1.部署一台CentOS虚拟机,本次以最小化安装!
2.配置基本的网络,由于本次是最小化安装所以无法用命令行配置地址
命令行配置如下:
nmcli connection modify ens33 ipv4.addresses 192.168.115.115/24 ipv4.gateway 192.168.115.2 ipv4.dns 114.114.114.114 ipv4.method manual
本次切换目录下,更改网卡配置文件:
然后重启网卡:
systemctl restart network
3.测试网关和域名解析是否可以ping通,测试发现解析不了
[root@localhost ~]# ping wwww.baidu.com
ping: wwww.baidu.com: 未知的名称或服务
[root@localhost ~]# ping alliyun.com
ping: alliyun.com: 未知的名称或服务
配置解析文件即可完美解决:
[root@localhost ~]# vi /etc/resolv.conf
[root@localhost ~]# cat /etc/resolv.conf
nameserver 114.114.114.114
[root@localhost ~]# ping www.baidu.com
PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=1 ttl=128 time=22.5 ms
64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=2 ttl=128 time=23.2 ms
^C
--- www.a.shifen.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 22.594/22.935/23.277/0.373 ms
[root@localhost ~]# ping aliyun.com
PING aliyun.com (106.11.249.99) 56(84) bytes of data.
64 bytes from 106.11.249.99 (106.11.249.99): icmp_seq=1 ttl=128 time=45.6 ms
^C
--- aliyun.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 45.605/45.605/45.605/0.000 ms
第二步:关闭自带防火墙
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]#
第三步:设置yum源
[root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/CentOS-7.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2318 100 2318 0 0 15882 0 --:--:-- --:--:-- --:--:-- 15986
[root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2081 100 2081 0 0 18454 0 --:--:-- --:--:-- --:--:-- 18580
[root@localhost yum.repos.d]# cat <<EOF > /etc/yum.repos.d/kubernetes.repo
> [kubernetes]
> name=kubernetes
> baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
> enabled=1
> gpgcheck=0
> repo_gpgcheck=0
> gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
> http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
> EOF
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum repolist
已加载插件:fastestmirror
Repository 'kubernetes': Error parsing config: Error parsing "gpgcheck = 'http://mirrors.aliyum.com/kubernetes/yum/doc/yum-key.gpg\nhttp://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg'": invalid boolean value
Determining fastest mirrors
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
docker-ce-stable | 3.5 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/6): base/7/x86_64/group_gz | 153 kB 00:00:00
(2/6): docker-ce-stable/7/x86_64/updateinfo | 55 B 00:00:00
(3/6): docker-ce-stable/7/x86_64/primary_db | 70 kB 00:00:00
(4/6): extras/7/x86_64/primary_db | 243 kB 00:00:00
(5/6): updates/7/x86_64/primary_db | 13 MB 00:00:01
base/7/x86_64/primary_db FAILED
http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef-primary.sqlite.bz2: [Errno 14] curl#7 - "Failed connect to mirrors.aliyuncs.com:80; Connection refused"
正在尝试其它镜像。
(6/6): base/7/x86_64/primary_db | 6.1 MB 00:00:00
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10,072
docker-ce-stable/7/x86_64 Docker CE Stable - x86_64 139
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 500
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 3,190
repolist: 13,901
第四步:安装相关软件
安装etcd kubernetes(docker也会被安装)
[root@localhost ~]# yum -y install etcd
Downloading packages:
etcd-3.3.11-2.el7.centos.x86_64.rpm | 10 MB 00:00:02
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : etcd-3.3.11-2.el7.centos.x86_64 1/1
验证中 : etcd-3.3.11-2.el7.centos.x86_64 1/1
已安装:
etcd.x86_64 0:3.3.11-2.el7.centos
完毕!
[root@localhost ~]# yum -y install kubernetes
kubernetes x86_64 1.5.2-0.7.git269f928.el7 extras 36 k
为依赖而安装:
PyYAML x86_64 3.10-11.el7 base 153 k
atomic-registries x86_64 1:1.22.1-33.gitb507039.el7_8 extras 36 k
audit-libs-python x86_64 2.8.5-4.el7 base 76 k
checkpolicy x86_64 2.5-8.el7 base 295 k
conntrack-tools x86_64 1.4.4-7.el7 base 187 k
container-selinux noarch 2:2.119.2-1.911c772.el7_8 extras 40 k
container-storage-setup noarch 0.11.0-2.git5eaf76c.el7 extras 35 k
containers-common x86_64 1:0.1.40-11.el7_8 extras 43 k
docker x86_64 2:1.13.1-208.git7d71120.el7_9 extras 17 M
docker-client x86_64 2:1.13.1-208.git7d71120.el7_9 extras 3.9 M
docker-common x86_64 2:1.13.1-208.git7d71120.el7_9 extras 101 k
fuse-overlayfs x86_64 0.7.2-6.el7_8 extras 54 k
fuse3-libs x86_64 3.6.1-4.el7 extras 82 k
kubernetes-client x86_64 1.5.2-0.7.git269f928.el7 extras 14 M
kubernetes-master x86_64 1.5.2-0.7.git269f928.el7 extras 25 M
kubernetes-node x86_64 1.5.2-0.7.git269f928.el7 extras 14 M
libcgroup x86_64 0.41-21.el7 base 66 k
libnetfilter_cthelper x86_64 1.0.0-11.el7 base 18 k
libnetfilter_cttimeout x86_64 1.0.0-7.el7 base 18 k
libnetfilter_queue x86_64 1.0.2-2.el7_2 base 23 k
libnl x86_64 1.1.4-3.el7 base 128 k
libsemanage-python x86_64 2.5-14.el7 base 113 k
libyaml x86_64 0.1.4-11.el7_0 base 55 k
oci-register-machine x86_64 1:0-6.git2b44233.el7 extras 1.1 M
oci-systemd-hook x86_64 1:0.2.0-1.git05e6923.el7_6 extras 34 k
oci-umount x86_64 2:2.5-3.el7 extras 33 k
policycoreutils-python x86_64 2.5-34.el7 base 457 k
python-IPy noarch 0.75-6.el7 base 32 k
python-backports x86_64 1.0-8.el7 base 5.8 k
python-backports-ssl_match_hostname noarch 3.5.0.1-1.el7 base 13 k
python-dateutil noarch 1.5-7.el7 base 85 k
python-dmidecode x86_64 3.12.2-4.el7 base 83 k
python-ethtool x86_64 0.8-8.el7 base 34 k
python-inotify noarch 0.9.4-4.el7 base 49 k
python-ipaddress noarch 1.0.16-2.el7 base 34 k
python-pytoml noarch 0.1.14-1.git7dea353.el7 extras 18 k
python-setuptools noarch 0.9.8-7.el7 base 397 k
python-syspurpose x86_64 1.24.50-1.el7.centos updates 275 k
setools-libs x86_64 3.3.8-4.el7 base 620 k
slirp4netns x86_64 0.4.3-4.el7_8 extras 81 k
socat x86_64 1.7.3.2-2.el7 base 290 k
subscription-manager x86_64 1.24.50-1.el7.centos updates 1.1 M
subscription-manager-rhsm x86_64 1.24.50-1.el7.centos updates 333 k
subscription-manager-rhsm-certificates x86_64 1.24.50-1.el7.centos updates 237 k
usermode x86_64 1.111-6.el7 base 193 k
yajl x86_64 2.0.4-4.el7 base 39 k
为依赖而更新:
audit x86_64 2.8.5-4.el7 base 256 k
audit-libs x86_64 2.8.5-4.el7 base 102 k
policycoreutils x86_64 2.5-34.el7 base 917 k
第五步,启动相关的服务(按顺序喔)
etcd:分布式键值存储,用来保存数据
docker(容器)
kube-apiserver:验证并配置api对象的数据,包括pods、services、replicationcontrollers等
kube-controller-manager:控制管理器,守护进程,所有资源的自动化控制中心
kube-scheduler:调度器是一个控制面进程,负责将 Pods 指派到节点上
kubelet: 是在每个 Node 节点上运行的主要 “节点代理”,用于处理Master下发到本节点的任务,管理Pod及Pod中的容器。每个kubelet进程都会在API Server上注册节点自身的信息,定期向Master汇报节点资源的使用情况,并通过cAdvisor监控容器和节点资源
kube-proxy:是 kubernetes 工作节点上的一个网络代理组件,运行在每个节点上。作用是使发往 Service 的流量(通过ClusterIP和端口)负载均衡到正确的后端Pod
注:如果是多节点,master上启动的服务有etcd,kube-apiserver,kube-controller-manager,kube-scheduler;node节点上启动kubelet, kube-proxy,docker engine
[root@localhost ~]# systemctl enable etcd && systemctl start etcd
Created symlink from /etc/systemd/system/multi-user.target.wants/etcd.service to /usr/lib/systemd/system/etcd.service.
[root@localhost ~]# systemctl enable docker && systemctl start docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@localhost ~]# systemctl enable kube-apiserver && systemctl start kube-apiserver
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-apiserver.service to /usr/lib/systemd/system/kube-apiserver.service.
[root@localhost ~]# systemctl enable kube-controller-manager && systemctl start kube-controller-manager
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-controller-manager.service to /usr/lib/systemd/system/kube-controller-manager.service.
[root@localhost ~]# systemctl enable kube-scheduler && systemctl start kube-scheduler
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-scheduler.service to /usr/lib/systemd/system/kube-scheduler.service.
[root@localhost ~]# systemctl enable kubelet && systemctl start kubelet
Created symlink from /etc/systemd/system/multi-user.target.wants/kubelet.service to /usr/lib/systemd/system/kubelet.service.
[root@localhost ~]# systemctl enable kube-proxy && systemctl start kube-proxy
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-proxy.service to /usr/lib/systemd/system/kube-proxy.service.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)