Kubernetes简单练习

一、安装k8s

1、删除之前安装的docker
yum -y remove docker-ce
rm -rf /var/lib/docker
rmp -qa | grep docker
rpm -e docker-ce-cli-18.09.1-3.el7.x86_64

2、安装k8s
yum -y install etcd kubernetes

3、按顺序启动k8s服务
systemctl start etcd
systemctl start docker
systemctl start kube-apiserver
systemctl start kube-controller-manager.service
systemctl start kube-scheduler.service
systemctl start kubelet.service
systemctl start kube-proxy

4、编写起停脚本
#!/bin/bash
systemctl start etcd
systemctl start docker
systemctl start kube-apiserver
systemctl start kube-controller-manager.service
systemctl start kube-scheduler.service
systemctl start kubelet.service
systemctl start kube-proxy

#!/bin/bash
systemctl stop etcd
systemctl stop docker
systemctl stop kube-apiserver
systemctl stop kube-controller-manager.service
systemctl stop kube-scheduler.service
systemctl stop kubelet.service
systemctl stop kube-proxy

二、实验步骤

1、安装启动mysql服务

1)创建RC配置文件
vim mysql-rc.yaml
apiVersion: v1
kind: ReplicationController # 副本控制器RC
metadata:
name: mysql # RC的名称,全局唯一
spec:
replicas: 1 # Pod副本期待数量
selector:
app: mysql # 符合目标的Pod拥有此标签
template: # 根据此模板创建Pod的副本(实例)
metadata:
labels:
app: mysql # Pod副本拥有的标签,对应RC的selector
spec:
containers: # Pod内容器的定义部分
- name: mysql # 容器名称
image: mysql:5.7 # 容器对应的docker镜像
ports:
- containerPort: 3306 # 容器应用坚挺的端口号
env: # 注入容器内的环境变量
- name: MYSQL_ROOT_PASSWORD
value: ’123456‘

2)编辑/etc/kubernetes/apiserver
vim /etc/kubernetes/apiserver
将KUBE_ADMISSION_CONTROL="–admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota"
改为KUBE_ADMISSION_CONTROL="–admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,ResourceQuota"

3)重启kube-apiserver服务
systemctl restart kube-apiserver

4)下载rpm包
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm
转换格式
rpm2cpio python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm | cpio -iv --to-stdout ./etc/rhsm/ca/redhat-uep.pem | tee /etc/rhsm/ca/redhat-uep.pem

5)根据yaml文件创建rc
kubectl create -f mysql-rc.yaml

查看刚刚创建的rc
[root@Study01 opt]# kubectl get rc
NAME DESIRED CURRENT READY AGE
mysql 1 1 1 1h

查看Pod创建情况
[root@Study01 opt]# kubectl get pods
NAME READY STATUS RESTARTS AGE
mysql-rqcdx 1/1 Running 1 1h

6)创建与之关联的mysql service定义文件
vim mysql-svc.yaml
apiVersion: v1
kind: Service # 标明是kubernetes service
metadata:
name: mysql # service的全局唯一名称
spec:
ports:
- port: 3306 # service提供服务的端口号
selector: # service对应的pod拥有这里定义的标签
app: mysql

7)运行kubectl命令,创建service
kubectl create -f mysql-svc.yaml

8)查看创建的service
kubectl get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.254.0.1 443/TCP 44m
mysql 10.254.248.56 3306/TCP 2m
可以看见mysql服务被分配了一个值为10.254.248.56的Cluster IP

2、安装启动Tomcat服务

1)创建tomcat的rc配置文件
vim tomcat-rc.yaml
apiVersion: v1
kind: ReplicationController
metadata:
name: tomcat
spec:
replicas: 2
selector:
app: tomcat
template:
metadata:
labels:
app: tomcat
spec:
containers:
- name: tomcat
image: kubeguide/tomcat-app:v1
ports:
- containerPort: 8080

2)根据yaml文件创建rc
kubectl create -f tomcat-rc.yaml

查看刚刚创建的rc和pods
kubectl get rc
kubectl get pods

3)创建与之关联的tomcat service定义文件
vim tomcat-svc.yaml
apiVersion: v1
kind: Service
metadata:
name: tomcat
spec:
type: NodePort
ports:

  • port: 8080
    nodePort: 30001
    selector:
    app: tomcat

4)运行kubectl命令,创建service
kubectl create -f tomcat-svc.yaml

5)查看创建的service
kubectl get svc

3、访问http://IP:30001/demo,能出表格即可

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值