新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要讲解了“怎么搭建单机版的kubernetes集群”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么搭建单机版的kubernetes集群”吧!
一、环境准备
成都创新互联公司公司2013年成立,是专业互联网技术服务公司,拥有项目成都做网站、网站设计、外贸营销网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元商都做网站,已为上家服务,为商都各地企业和个人服务,联系电话:18980820575
1、CentOS7下安装etcd和kubernetes[root@jin-120 ~]# yum install -y etcd kubernetes
2、关闭防火墙并设置开机不启动[root@jin-120 ~]# systemctl stop firewalld[root@jin-120 ~]# systemctl disable firewalld
3、修改配置文件/etc/sysconfig/docker,把OPTIONS的内容设置为:OPTIONS='--selinux-enabled=false --insecure-registry grc.io --log-driver=journald --signature-verification=false'
再修改kubernetes apiserver的配置文件/etc/kubernetes/apiserver,把--ADMISSION_CONTROL参数中的ServiceAcconut删除。
4、按顺序启动以下所有服务:for i in etcd docker kube-apiserver kube-controller-manager kube-scheduler kubelet kube-proxydo systemctl start $idone
至此,我们的单机版的kubernetes集群环境就安装好了。二、启动服务
1、创建一个MySQL服务的RC定义文件mysql-rc.yaml,内容如下:apiVersion: v1kind: ReplicationControllermetadata: name: mysqlspec: replicas: 1 selector: app: mysql template: metadata: labels: app: mysql spec: containers: - name: mysql image: mysql:5.6 ports: - containerPort: 3306 env: - name: MYSQL_ROOT_PASSWORD value: "123456"
2、执行命令kubectl create -f mysql-rc.yaml创建RC,然后再用命令kubectl get rc查看创建的RC:[root@jin-120 ~]# kubectl create -f mysql-rc.yamlreplicationcontroller "mysql" created[root@jin-120 ~]# kubectl get rcNAME DESIRED CURRENT READY AGEmysql 1 1 1 1m
再查看RC定义生成的pod:[root@jin-120 ~]# kubectl get podNAME READY STATUS RESTARTS AGEmysql-xcgj0 1/1 Running 0 1m
3、我们再创建一个关于MySQL service的文件:vim mysql-svc.yaml,内容如下:apiVersion: v1kind: Servicemetadata: name: mysqlspec: ports: - port: 3306 selector: app: mysql
运行命令创建service:[root@jin-120 ~]# kubectl create -f mysql-svc.yaml service "mysql" created
查看是否创建成功:[root@jin-120 ~]# kubectl get svcNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGEkubernetes 10.254.0.1
三、启动Tomcat应用
1、创建对应的RC文件myweb-rc.yaml,内容如下:kind: ReplicationControllermetadata: name: mywebspec: replicas: 1 selector: app: myweb template: metadata: labels: app: myweb spec: containers: - name: myweb image: kubeguide/tomcat-app:v1 ports: - containerPort: 8080 env: - name: MYSQL_SERVICE_HOST value: 'mysql' - name: MYSQL_SERVICE_PORT value: '3306'
2、执行命令kubectl create -f myweb-rc.yaml创建RC,然后再用命令kubectl get rc查看创建的RC:[root@jin-120 ~]# kubectl create -f myweb-rc.yaml replicationcontroller "myweb" created[root@jin-120 ~]# kubectl get rcNAME DESIRED CURRENT READY AGEmysql 1 1 1 13mmyweb 1 1 1 16s
再查看RC定义生成的pod:[root@jin-120 ~]# kubectl get podsNAME READY STATUS RESTARTS AGEmysql-xcgj0 1/1 Running 2 15mmyweb-jmll1 1/1 Running 0 1m
3、我们再创建一个关于myweb service的文件:vim myweb-svc.yaml,内容如下:apiVersion: v1kind: Servicemetadata: name: mywebspec: type: NodePort ports: - port: 8080 nodePort: 30001 selector: app: myweb
创建并查看创建的service:[root@jin-120 ~]# kubectl create -f myweb-svc.yaml service "myweb" created[root@jin-120 ~]# kubectl get svcNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGEkubernetes 10.254.0.1
四、测试
在浏览器里输入地址:http://虚拟机IP:30001/demo/:
看到如上网页,说明我们搭建的单机版kubernetes集群成功了。
我们可以尝试单击"Add"按钮添加一条记录并提交,提交后,数据就会被写入MySQL数据库中。