怎么搭建單機版的kubernetes集群

這篇文章主要講解了“怎么搭建單機版的kubernetes集群”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么搭建單機版的kubernetes集群”吧!

創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站設(shè)計與策劃設(shè)計,烏魯木齊網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:烏魯木齊等地區(qū)。烏魯木齊做網(wǎng)站價格咨詢:028-86922220

一、環(huán)境準(zhǔn)備

1、CentOS7下安裝etcd和kubernetes

[root@jin-120 ~]# yum install -y etcd kubernetes

2、關(guān)閉防火墻并設(shè)置開機不啟動

[root@jin-120 ~]# systemctl stop firewalld
[root@jin-120 ~]# systemctl disable firewalld

3、修改配置文件/etc/sysconfig/docker,把OPTIONS的內(nèi)容設(shè)置為:

OPTIONS='--selinux-enabled=false --insecure-registry grc.io --log-driver=journald --signature-verification=false'

再修改kubernetes apiserver的配置文件/etc/kubernetes/apiserver,把--ADMISSION_CONTROL參數(shù)中的ServiceAcconut刪除。

4、按順序啟動以下所有服務(wù):

for i in etcd docker kube-apiserver kube-controller-manager kube-scheduler kubelet kube-proxy
do
    systemctl start $i
done

至此,我們的單機版的kubernetes集群環(huán)境就安裝好了。

二、啟動MySQL服務(wù)

1、創(chuàng)建一個MySQL服務(wù)的RC定義文件mysql-rc.yaml,內(nèi)容如下:

apiVersion: v1
kind: ReplicationController
metadata:
  name: mysql
spec:
  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、執(zhí)行命令kubectl create -f mysql-rc.yaml創(chuàng)建RC,然后再用命令kubectl get rc查看創(chuàng)建的RC:

[root@jin-120 ~]# kubectl create -f mysql-rc.yaml
replicationcontroller "mysql" created
[root@jin-120 ~]# kubectl get rc
NAME      DESIRED   CURRENT   READY     AGE
mysql     1         1         1         1m

再查看RC定義生成的pod:

[root@jin-120 ~]# kubectl get pod
NAME          READY     STATUS    RESTARTS   AGE
mysql-xcgj0   1/1       Running   0          1m

3、我們再創(chuàng)建一個關(guān)于MySQL service的文件:vim mysql-svc.yaml,內(nèi)容如下:

apiVersion: v1
kind: Service
metadata:
  name: mysql
spec:
  ports:
    - port: 3306
  selector:
    app: mysql

運行命令創(chuàng)建service:

[root@jin-120 ~]# kubectl create -f mysql-svc.yaml 
service "mysql" created

查看是否創(chuàng)建成功:

[root@jin-120 ~]# kubectl get svc
NAME         CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
kubernetes   10.254.0.1      <none>        443/TCP    1d
mysql        10.254.70.236   <none>        3306/TCP   11s

可以看到,MySQLservice被分配了一個10.254.70.236的Cluster IP,這樣,kubernetes集群中的其他新創(chuàng)建的Pod就可以通過service的Cluster IP+port6379來連接和訪問了。

三、啟動Tomcat應(yīng)用

1、創(chuàng)建對應(yīng)的RC文件myweb-rc.yaml,內(nèi)容如下:

kind: ReplicationController
metadata:
  name: myweb
spec:
  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、執(zhí)行命令kubectl create -f myweb-rc.yaml創(chuàng)建RC,然后再用命令kubectl get rc查看創(chuàng)建的RC:

[root@jin-120 ~]# kubectl create -f myweb-rc.yaml 
replicationcontroller "myweb" created
[root@jin-120 ~]# kubectl get rc
NAME      DESIRED   CURRENT   READY     AGE
mysql     1         1         1         13m
myweb     1         1         1         16s

再查看RC定義生成的pod:

[root@jin-120 ~]# kubectl get pods
NAME          READY     STATUS    RESTARTS   AGE
mysql-xcgj0   1/1       Running   2          15m
myweb-jmll1   1/1       Running   0          1m

3、我們再創(chuàng)建一個關(guān)于myweb service的文件:vim myweb-svc.yaml,內(nèi)容如下:

apiVersion: v1
kind: Service
metadata:
  name: myweb
spec:
  type: NodePort
  ports:
    - port: 8080
      nodePort: 30001
  selector:
    app: myweb

創(chuàng)建并查看創(chuàng)建的service:

[root@jin-120 ~]# kubectl create -f myweb-svc.yaml 
service "myweb" created
[root@jin-120 ~]# kubectl get svc
NAME         CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
kubernetes   10.254.0.1       <none>        443/TCP          1d
mysql        10.254.70.236    <none>        3306/TCP         13m
myweb        10.254.218.251   <nodes>       8080:30001/TCP   9s

至此,我們的集群就已經(jīng)搭建完畢。

四、測試

在瀏覽器里輸入地址:http://虛擬機IP:30001/demo/: 怎么搭建單機版的kubernetes集群

看到如上網(wǎng)頁,說明我們搭建的單機版kubernetes集群成功了。

我們可以嘗試單擊"Add"按鈕添加一條記錄并提交,提交后,數(shù)據(jù)就會被寫入MySQL數(shù)據(jù)庫中。

怎么搭建單機版的kubernetes集群

感謝各位的閱讀,以上就是“怎么搭建單機版的kubernetes集群”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對怎么搭建單機版的kubernetes集群這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

網(wǎng)頁標(biāo)題:怎么搭建單機版的kubernetes集群
文章鏈接:http://muchs.cn/article8/pdjcop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)手機網(wǎng)站建設(shè)、網(wǎng)站維護移動網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化用戶體驗

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)