单机版Kubernetes安装并试用

目录

一、Kubernetes安装

1.环境

2.安装步骤

二、学习和使用

一、Kubernetes安装

1.环境

VMware+CentOS7

2.安装步骤

1).关闭系统防火墙

systemctl disable firewalld
systemctl stop firewalld

2).安装etcd和Kubernetes(自动附带安装Docker)

   (需要切换到root用户给予权限))

yum install -y etcd kubernetes

 3).修改配置文件

vim /etc/sysconfig/docker

OPTIONS='--selinux-enabled=false ...

vim /etc/containers/registries.conf

[registries.insecure]
registries = ['gcr.io']

 4).修改 /etc/kubernetes/apiserver 文件

vim /etc/kubernetes/apiserver

     修改KUBE_ADMISSION_CONTROL的内容为:

KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"

 5).依次启动下列服务

systemctl start etcd
systemctl start docker
systemctl start kube-apiserver
systemctl start kube-controller-manager
systemctl start kube-scheduler
systemctl start kubelet
systemctl start kube-proxy

至此环境已搭建完成。

二、学习和使用

1).准备一个如下的配置文件mysql-rc.yaml

    (文件地址任意)

touch mysql-rc.yaml
vim mysql-rc.yaml
apiVersion: v1
kind: ReplicationController
metadata:
  name: mysql
spec:
  replicas: 1
  selector:
    app: mysql
  template:
    metadata:
      labels:
        app: mysql
    spec:
      containers:
      - name: mysql
        image: mysql
        ports:
        - containerPort: 3306
        env:
        - name: MYSQL_ROOT_PASSWORD
          value: "123456"

(注意:和- 后面要有空格)

2).启动服务

kubectl create -f mysql-rc.yaml

3).查询RC列表

kubectl get rc

 READY=0,没有正常启动,需要定位原因。

kubectl describe pod mysql

  1. 找不到/etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt文件。
  2. 拉取镜像registry.access.redhat.com/rhel7/pod-infrastructure:latest失败。

 4).问题解决方案

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm
rpm -ivh python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm

如果网络连接失败,可以在主机浏览器打开网址下载,通过Xftp传入虚拟机。

如果提示python-rhsm-certificates-1.19.10-1.el7_4.x86_64 被已安装的 subscription-manager-rhsm-certificates-1.20.11-1.el7.centos.x86_64 取代,就要执行下面步骤:

rpm2cpio python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm |cpio -iv --to-stdout ./etc/rhsm/ca/redhatuep.pem > /etc/rhsm/ca/redhat-uep.pem

配置docker加速器:

vi /etc/docker/daemon.json
{undefined

"registry-mirrors": ["https://dhq9bx4f.mirror.aliyuncs.com"]

}

 重新启动之前的RC:

# 删除之前启动的RC
kubectl delete-f mysql-rc.yaml
# 重新启动新的RC
kubectl create -f mysql-rc.yaml
kubectl get pod

 pod已经正常启动。

可以使用docker ps查看目前启动的容器:

 目前启动了两个容器:1个是MySQL容器,还有一个是Kubenetes自带的k8s_POD相关的容器(用于管理POD)。

参考:https://zhuanlan.zhihu.com/p/442358165

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值