kubernetes using microk8s centos 7

[root@localhost ~]# yum install snapd
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                     | 8.1 kB     00:00   
 * base: centos.mirrors.estointernet.in
 * centos-sclo-rh: centos.mirrors.estointernet.in
 * centos-sclo-sclo: centos.mirrors.estointernet.in
 * epel: mirrors.aliyun.com
 * extras: centos.mirrors.estointernet.in
 * updates: centos.mirrors.estointernet.in
base                                                     | 3.6 kB     00:00   
centos-sclo-rh                                           | 3.0 kB     00:00   
centos-sclo-sclo                                         | 2.9 kB     00:00   
epel                                                     | 5.3 kB     00:00   
extras                                                   | 2.9 kB     00:00   
opennebula                                               | 2.9 kB     00:00   
Not using downloaded opennebula/repomd.xml because it is older than what we have:
  Current   : Fri Jul 22 21:17:11 2016
  Downloaded: Thu Nov 26 02:32:55 2015
puppet5                                                  | 2.5 kB     00:00   
updates                                                  | 2.9 kB     00:00   
zabbix                                                   | 2.9 kB     00:00   
zabbix-non-supported                                     |  951 B     00:00   
epel/x86_64/primary_db         FAILED                                         
http://ftp.riken.jp/Linux/fedora/epel/7/x86_64/repodata/95bd9e99b32d2328c0f4157efc074662fd7e013f5ce1da09c1b09cd52fc60e51-primary.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found
Trying other mirror.
To address this issue please refer to the below wiki article

https://wiki.centos.org/yum-errors

If above article doesn't help to resolve this issue please use https://bugs.centos.org/.

(1/3): epel/x86_64/updateinfo                              | 1.0 MB   00:01   
(2/3): updates/7/x86_64/primary_db                         | 1.9 MB   00:01   
(3/3): epel/x86_64/primary_db                              | 6.8 MB   00:04   
Resolving Dependencies
--> Running transaction check
---> Package snapd.x86_64 0:2.39.2-1.el7 will be installed
--> Processing Dependency: snap-confine(x86-64) = 2.39.2-1.el7 for package: snapd-2.39.2-1.el7.x86_64
--> Processing Dependency: snapd-selinux = 2.39.2-1.el7 for package: snapd-2.39.2-1.el7.x86_64
--> Processing Dependency: squashfs-tools for package: snapd-2.39.2-1.el7.x86_64
--> Processing Dependency: squashfuse for package: snapd-2.39.2-1.el7.x86_64
--> Running transaction check
---> Package snap-confine.x86_64 0:2.39.2-1.el7 will be installed
---> Package snapd-selinux.noarch 0:2.39.2-1.el7 will be installed
---> Package squashfs-tools.x86_64 0:4.3-0.21.gitaae0aff4.el7 will be installed
---> Package squashfuse.x86_64 0:0.1.102-1.el7 will be installed
--> Processing Dependency: squashfuse-libs(x86-64) = 0.1.102-1.el7 for package: squashfuse-0.1.102-1.el7.x86_64
--> Processing Dependency: libfuseprivate.so.0()(64bit) for package: squashfuse-0.1.102-1.el7.x86_64
--> Processing Dependency: libsquashfuse.so.0()(64bit) for package: squashfuse-0.1.102-1.el7.x86_64
--> Processing Dependency: libzstd.so.1()(64bit) for package: squashfuse-0.1.102-1.el7.x86_64
--> Running transaction check
---> Package libzstd.x86_64 0:1.4.2-1.el7 will be installed
---> Package squashfuse-libs.x86_64 0:0.1.102-1.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package              Arch        Version                       Repository
                                                                           Size
================================================================================
Installing:
 snapd                x86_64      2.39.2-1.el7                  epel       14 M
Installing for dependencies:
 libzstd              x86_64      1.4.2-1.el7                   epel      252 k
 snap-confine         x86_64      2.39.2-1.el7                  epel      2.6 M
 snapd-selinux        noarch      2.39.2-1.el7                  epel      223 k
 squashfs-tools       x86_64      4.3-0.21.gitaae0aff4.el7      base      101 k
 squashfuse           x86_64      0.1.102-1.el7                 epel       18 k
 squashfuse-libs      x86_64      0.1.102-1.el7                 epel       24 k

Transaction Summary
================================================================================
Install  1 Package (+6 Dependent packages)

Total download size: 18 M
Installed size: 51 M
Is this ok [y/d/N]: y
Downloading packages:
(1/7): libzstd-1.4.2-1.el7.x86_64.rpm                      | 252 kB   00:02   
(2/7): snap-confine-2.39.2-1.el7.x86_64.rpm                | 2.6 MB   00:02   
(3/7): snapd-2.39.2-1.el7.x86_64.rpm                       |  14 MB   00:08   
(4/7): squashfs-tools-4.3-0.21.gitaae0aff4.el7.x86_64.rpm  | 101 kB   00:00   
(5/7): squashfuse-0.1.102-1.el7.x86_64.rpm                 |  18 kB   00:00   
(6/7): snapd-selinux-2.39.2-1.el7.noarch.rpm               | 223 kB   00:00   
(7/7): squashfuse-libs-0.1.102-1.el7.x86_64.rpm            |  24 kB   00:00   
--------------------------------------------------------------------------------
Total                                              1.4 MB/s |  18 MB  00:12   
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : snapd-selinux-2.39.2-1.el7.noarch                            1/7
  Installing : squashfs-tools-4.3-0.21.gitaae0aff4.el7.x86_64               2/7
  Installing : snap-confine-2.39.2-1.el7.x86_64                             3/7
  Installing : squashfuse-libs-0.1.102-1.el7.x86_64                         4/7
  Installing : libzstd-1.4.2-1.el7.x86_64                                   5/7
  Installing : squashfuse-0.1.102-1.el7.x86_64                              6/7
  Installing : snapd-2.39.2-1.el7.x86_64                                    7/7
  Verifying  : libzstd-1.4.2-1.el7.x86_64                                   1/7
  Verifying  : squashfuse-libs-0.1.102-1.el7.x86_64                         2/7
  Verifying  : snap-confine-2.39.2-1.el7.x86_64                             3/7
  Verifying  : squashfs-tools-4.3-0.21.gitaae0aff4.el7.x86_64               4/7
  Verifying  : snapd-2.39.2-1.el7.x86_64                                    5/7
  Verifying  : snapd-selinux-2.39.2-1.el7.noarch                            6/7
  Verifying  : squashfuse-0.1.102-1.el7.x86_64                              7/7

Installed:
  snapd.x86_64 0:2.39.2-1.el7                                                 

Dependency Installed:
  libzstd.x86_64 0:1.4.2-1.el7                                               
  snap-confine.x86_64 0:2.39.2-1.el7                                         
  snapd-selinux.noarch 0:2.39.2-1.el7                                         
  squashfs-tools.x86_64 0:4.3-0.21.gitaae0aff4.el7                           
  squashfuse.x86_64 0:0.1.102-1.el7                                           
  squashfuse-libs.x86_64 0:0.1.102-1.el7                                     

Complete!
[root@localhost ~]#
[root@localhost ~]# snap install microk8s --classic --channel=1.14/stable
microk8s (1.14/stable) v1.14.7 from Canonical✓ installed

[root@localhost ~]# snap info microk8s
name:      microk8s
summary:   Kubernetes for workstations and appliances
publisher: Canonical✓
contact:   https://github.com/ubuntu/microk8s
license:   unset
description: |
  MicroK8s is a small, fast, secure, single node Kubernetes that installs on
  just about any Linux box. Use it for offline development, prototyping,
  testing, or use it on a VM as a small, cheap, reliable k8s for CI/CD. It's
  also a great k8s for appliances - develop your IoT apps for k8s and deploy
  them to MicroK8s on your boxes.
commands:
  - microk8s.config
  - microk8s.ctr
  - microk8s.disable
  - microk8s.enable
  - microk8s.inspect
  - microk8s.istioctl
  - microk8s.kubectl
  - microk8s.linkerd
  - microk8s.reset
  - microk8s.start
  - microk8s.status
  - microk8s.stop
services:
  microk8s.daemon-apiserver:          simple, enabled, active
  microk8s.daemon-apiserver-kicker:   simple, enabled, active
  microk8s.daemon-containerd:         simple, enabled, active
  microk8s.daemon-controller-manager: simple, enabled, active
  microk8s.daemon-etcd:               simple, enabled, active
  microk8s.daemon-kubelet:            simple, enabled, active
  microk8s.daemon-proxy:              simple, enabled, active
  microk8s.daemon-scheduler:          simple, enabled, active
snap-id:      EaXqgt1lyCaxKaQCU349mlodBkDCXRcg
tracking:     1.14/stable
refresh-date: today at 08:55 IST
channels:
  stable:         v1.16.0  2019-09-25 (920) 187MB classic
  candidate:      v1.16.0  2019-09-24 (920) 187MB classic
  beta:           v1.16.0  2019-09-24 (920) 187MB classic
  edge:           v1.16.1  2019-10-02 (934) 187MB classic
  1.16/stable:    v1.16.0  2019-09-25 (920) 187MB classic
  1.16/candidate: v1.16.0  2019-09-24 (920) 187MB classic
  1.16/beta:      v1.16.0  2019-09-24 (920) 187MB classic
  1.16/edge:      v1.16.0  2019-09-24 (920) 187MB classic
  1.15/stable:    v1.15.4  2019-09-30 (876) 171MB classic
  1.15/candidate: v1.15.4  2019-09-20 (876) 171MB classic
  1.15/beta:      v1.15.4  2019-09-20 (876) 171MB classic
  1.15/edge:      v1.15.4  2019-09-18 (876) 171MB classic
  1.14/stable:    v1.14.7  2019-09-29 (877) 217MB classic
  1.14/candidate: v1.14.7  2019-09-21 (877) 217MB classic
  1.14/beta:      v1.14.7  2019-09-21 (877) 217MB classic
  1.14/edge:      v1.14.7  2019-09-18 (877) 217MB classic
  1.13/stable:    v1.13.6  2019-06-06 (581) 237MB classic
  1.13/candidate: v1.13.6  2019-05-09 (581) 237MB classic
  1.13/beta:      v1.13.6  2019-05-09 (581) 237MB classic
  1.13/edge:      v1.13.7  2019-06-06 (625) 244MB classic
  1.12/stable:    v1.12.9  2019-06-06 (612) 259MB classic
  1.12/candidate: v1.12.9  2019-06-04 (612) 259MB classic
  1.12/beta:      v1.12.9  2019-06-04 (612) 259MB classic
  1.12/edge:      v1.12.9  2019-05-28 (612) 259MB classic
  1.11/stable:    v1.11.10 2019-05-10 (557) 258MB classic
  1.11/candidate: v1.11.10 2019-05-02 (557) 258MB classic
  1.11/beta:      v1.11.10 2019-05-02 (557) 258MB classic
  1.11/edge:      v1.11.10 2019-05-01 (557) 258MB classic
  1.10/stable:    v1.10.13 2019-04-22 (546) 222MB classic
  1.10/candidate: v1.10.13 2019-04-22 (546) 222MB classic
  1.10/beta:      v1.10.13 2019-04-22 (546) 222MB classic
  1.10/edge:      v1.10.13 2019-04-22 (546) 222MB classic
installed:        v1.14.7             (877) 217MB classic
[root@localhost ~]#

snap info microk8s
Once MicroK8s is installed, it will start creating a one node Kubernetes cluster. Status for this deployment can be checked using.

[root@localhost ~]#  microk8s.status
microk8s is running
addons:
rbac: disabled
ingress: disabled
dns: disabled
metrics-server: disabled
linkerd: disabled
prometheus: disabled
istio: disabled
jaeger: disabled
fluentd: disabled
gpu: disabled
storage: disabled
dashboard: disabled
registry: disabled
[root@localhost ~]# 
[root@localhost ~]# microk8s.kubectl cluster-info
Kubernetes master is running at https://127.0.0.1:16443

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.


[root@localhost ~]# microk8s.kubectl get nodes
NAME                    STATUS   ROLES    AGE     VERSION
localhost.localdomain   Ready    <none>   3m43s   v1.14.7
[root@localhost ~]# 

If you’re not comfortable with microk8s.kubectl command, you can create an alias for it.

echo "alias kubectl='microk8s.kubectl'" >>~/.bashrc
source ~/.bashrc
Then you can use kubectl command:

[root@localhost ~]# echo "alias kubectl='microk8s.kubectl'" >>~/.bashrc
[root@localhost ~]# source ~/.bashrc
[root@localhost ~]# kubectl  get nodes -o wide
NAME                    STATUS   ROLES    AGE     VERSION   INTERNAL-IP     EXTERNAL-IP   OS-IMAGE                KERNEL-VERSION               CONTAINER-RUNTIME
localhost.localdomain   Ready    <none>   4m48s   v1.14.7   192.168.0.106   <none>        CentOS Linux 7 (Core)   3.10.0-1062.1.1.el7.x86_64   containerd://1.2.5
[root@localhost ~]# 
root@localhost ~]# microk8s.enable dashboard dns
Enabling dashboard
secret/kubernetes-dashboard-certs created
serviceaccount/kubernetes-dashboard created
deployment.apps/kubernetes-dashboard created
service/kubernetes-dashboard created
service/monitoring-grafana created
service/monitoring-influxdb created
service/heapster created
deployment.extensions/monitoring-influxdb-grafana-v4 created
serviceaccount/heapster created
configmap/heapster-config created
configmap/eventer-config created
deployment.extensions/heapster-v1.5.2 created
dashboard enabled
Enabling DNS
Applying manifest
service/kube-dns created
serviceaccount/kube-dns created
configmap/kube-dns created
deployment.extensions/kube-dns created
Restarting kubelet
DNS is enabled

[root@localhost ~]# microk8s.enable storage
Enabling default storage class
deployment.extensions/hostpath-provisioner created
storageclass.storage.k8s.io/microk8s-hostpath created
Storage will be available soon

To enable Storage and Istio addons:

[root@localhost ~]# microk8s.enable istio
Enabling Istio
Enabling DNS
Applying manifest
service/kube-dns unchanged
serviceaccount/kube-dns unchanged
configmap/kube-dns unchanged
deployment.extensions/kube-dns configured
Restarting kubelet
DNS is enabled
Enforce mutual TLS authentication (https://bit.ly/2KB4j04) between sidecars? If unsure, choose N. (y/N): y
customresourcedefinition.apiextensions.k8s.io/virtualservices.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/destinationrules.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/serviceentries.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/gateways.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/envoyfilters.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/policies.authentication.istio.io created
customresourcedefinition.apiextensions.k8s.io/meshpolicies.authentication.istio.io created
customresourcedefinition.apiextensions.k8s.io/httpapispecbindings.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/httpapispecs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/quotaspecbindings.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/quotaspecs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/rules.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/attributemanifests.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/bypasses.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/circonuses.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/deniers.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/fluentds.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/kubernetesenvs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/listcheckers.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/memquotas.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/noops.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/opas.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/prometheuses.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/rbacs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/redisquotas.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/servicecontrols.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/signalfxs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/solarwindses.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/stackdrivers.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/statsds.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/stdios.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/apikeys.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/authorizations.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/checknothings.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/kuberneteses.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/listentries.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/logentries.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/edges.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/metrics.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/quotas.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/reportnothings.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/servicecontrolreports.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/tracespans.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/rbacconfigs.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/serviceroles.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/servicerolebindings.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/adapters.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/instances.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/templates.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/handlers.config.istio.io created
namespace/istio-system created
configmap/istio-galley-configuration created
configmap/istio-grafana-custom-resources created
configmap/istio-grafana-configuration-dashboards created
configmap/istio-grafana created
configmap/istio-statsd-prom-bridge created
configmap/prometheus created
configmap/istio-security-custom-resources created
configmap/istio created
configmap/istio-sidecar-injector created
serviceaccount/istio-galley-service-account created
serviceaccount/istio-egressgateway-service-account created
serviceaccount/istio-ingressgateway-service-account created
serviceaccount/istio-grafana-post-install-account created
clusterrole.rbac.authorization.k8s.io/istio-grafana-post-install-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-grafana-post-install-role-binding-istio-system created
job.batch/istio-grafana-post-install created
serviceaccount/istio-mixer-service-account created
serviceaccount/istio-pilot-service-account created
serviceaccount/prometheus created
serviceaccount/istio-cleanup-secrets-service-account created
clusterrole.rbac.authorization.k8s.io/istio-cleanup-secrets-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-cleanup-secrets-istio-system created
job.batch/istio-cleanup-secrets created
serviceaccount/istio-security-post-install-account created
clusterrole.rbac.authorization.k8s.io/istio-security-post-install-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-security-post-install-role-binding-istio-system created
job.batch/istio-security-post-install created
serviceaccount/istio-citadel-service-account created
serviceaccount/istio-sidecar-injector-service-account created
customresourcedefinition.apiextensions.k8s.io/virtualservices.networking.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/destinationrules.networking.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/serviceentries.networking.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/gateways.networking.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/envoyfilters.networking.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/httpapispecbindings.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/httpapispecs.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/quotaspecbindings.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/quotaspecs.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/rules.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/attributemanifests.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/bypasses.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/circonuses.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/deniers.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/fluentds.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/kubernetesenvs.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/listcheckers.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/memquotas.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/noops.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/opas.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/prometheuses.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/rbacs.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/redisquotas.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/servicecontrols.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/signalfxs.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/solarwindses.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/stackdrivers.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/statsds.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/stdios.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/apikeys.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/authorizations.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/checknothings.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/kuberneteses.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/listentries.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/logentries.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/edges.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/metrics.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/quotas.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/reportnothings.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/servicecontrolreports.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/tracespans.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/rbacconfigs.rbac.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/serviceroles.rbac.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/servicerolebindings.rbac.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/adapters.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/instances.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/templates.config.istio.io unchanged
customresourcedefinition.apiextensions.k8s.io/handlers.config.istio.io unchanged
clusterrole.rbac.authorization.k8s.io/istio-galley-istio-system created
clusterrole.rbac.authorization.k8s.io/istio-egressgateway-istio-system created
clusterrole.rbac.authorization.k8s.io/istio-ingressgateway-istio-system created
clusterrole.rbac.authorization.k8s.io/istio-mixer-istio-system created
clusterrole.rbac.authorization.k8s.io/istio-pilot-istio-system created
clusterrole.rbac.authorization.k8s.io/prometheus-istio-system created
clusterrole.rbac.authorization.k8s.io/istio-citadel-istio-system created
clusterrole.rbac.authorization.k8s.io/istio-sidecar-injector-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-galley-admin-role-binding-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-egressgateway-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-ingressgateway-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-mixer-admin-role-binding-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-pilot-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/prometheus-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-citadel-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-sidecar-injector-admin-role-binding-istio-system created
service/istio-galley created
service/istio-egressgateway created
service/istio-ingressgateway created
service/grafana created
service/istio-policy created
service/istio-telemetry created
service/istio-pilot created
service/prometheus created
service/istio-citadel created
service/servicegraph created
service/istio-sidecar-injector created
deployment.extensions/istio-galley created
deployment.extensions/istio-egressgateway created
deployment.extensions/istio-ingressgateway created
deployment.extensions/grafana created
deployment.extensions/istio-policy created
deployment.extensions/istio-telemetry created
deployment.extensions/istio-pilot created
deployment.extensions/prometheus created
deployment.extensions/istio-citadel created
deployment.extensions/servicegraph created
deployment.extensions/istio-sidecar-injector created
deployment.extensions/istio-tracing created
gateway.networking.istio.io/istio-autogenerated-k8s-ingress created
horizontalpodautoscaler.autoscaling/istio-egressgateway created
horizontalpodautoscaler.autoscaling/istio-ingressgateway created
horizontalpodautoscaler.autoscaling/istio-policy created
horizontalpodautoscaler.autoscaling/istio-telemetry created
horizontalpodautoscaler.autoscaling/istio-pilot created
service/jaeger-query created
service/jaeger-collector created
service/jaeger-agent created
service/zipkin created
service/tracing created
mutatingwebhookconfiguration.admissionregistration.k8s.io/istio-sidecar-injector created
attributemanifest.config.istio.io/istioproxy created
attributemanifest.config.istio.io/kubernetes created
stdio.config.istio.io/handler created
logentry.config.istio.io/accesslog created
logentry.config.istio.io/tcpaccesslog created
rule.config.istio.io/stdio created
rule.config.istio.io/stdiotcp created
metric.config.istio.io/requestcount created
metric.config.istio.io/requestduration created
metric.config.istio.io/requestsize created
metric.config.istio.io/responsesize created
metric.config.istio.io/tcpbytesent created
metric.config.istio.io/tcpbytereceived created
prometheus.config.istio.io/handler created
rule.config.istio.io/promhttp created
rule.config.istio.io/promtcp created
kubernetesenv.config.istio.io/handler created
rule.config.istio.io/kubeattrgenrulerule created
rule.config.istio.io/tcpkubeattrgenrulerule created
kubernetes.config.istio.io/attributes created
destinationrule.networking.istio.io/istio-policy created
destinationrule.networking.istio.io/istio-telemetry created
Istio is starting
[root@localhost ~]# 

# microk8s.status
microk8s is running
addons:
 jaeger: disabled
 fluentd: disabled
 gpu: disabled
 storage: enabled
 registry: enabled
 ingress: disabled
 dns: disabled
 metrics-server: disabled
 prometheus: disabled
 istio: disabled
 dashboard: enabled
For more information like URL, use:

microk8s.kubectl cluster-info
Output:
[root@localhost ~]# microk8s.kubectl cluster-info
Kubernetes master is running at https://127.0.0.1:16443
Heapster is running at https://127.0.0.1:16443/api/v1/namespaces/kube-system/services/heapster/proxy
KubeDNS is running at https://127.0.0.1:16443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
Grafana is running at https://127.0.0.1:16443/api/v1/namespaces/kube-system/services/monitoring-grafana/proxy
InfluxDB is running at https://127.0.0.1:16443/api/v1/namespaces/kube-system/services/monitoring-influxdb:http/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
[root@localhost ~]# 


Disable Addons
Use microk8s.disable command to disable addon.

# microk8s.disable istio
Disabling Istio
namespace "istio-system" deleted
Istio is terminating
Deploying Pods and Containers on MicroK8s
Deployments are done in standard Kubernetes way. See the example below which will create Nginx deployment with two containers.

root@localhost ~]# microk8s.kubectl run nginx --replicas 2 --image nginx
kubectl run --generator=deployment/apps.v1 is DEPRECATED and will be removed in a future version. Use kubectl run --generator=run-pod/v1 or kubectl create instead.
deployment.apps/nginx created

[root@localhost ~]# microk8s.kubectl get deployments
NAME    READY   UP-TO-DATE   AVAILABLE   AGE
nginx   0/2     2            0           22s
[root@localhost ~]#  microk8s.kubectl get pods
NAME                     READY   STATUS              RESTARTS   AGE
nginx-7db9fccd9b-ntcc6   0/1     ContainerCreating   0          27s
nginx-7db9fccd9b-vznrw   0/1     ContainerCreating   0          29s


[root@localhost ~]#  microk8s.kubectl expose deployment nginx --port 80 --target-port 80 \

service/nginx exposed



[root@localhost ~]# microk8s.kubectl get services
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.152.183.1     <none>        443/TCP   17m
nginx        ClusterIP   10.152.183.199   <none>        80/TCP    75s
[root@localhost ~]# 

Delete Deployment

# microk8s.kubectl delete deployment nginx
deployment.extensions "nginx" deleted

# microk8s.kubectl delete service nginx
service "nginx" deleted
Stopping and Restarting MicroK8s
You can easily shutdown MicroK8s when not in use without un-installing it.

# microk8s.stop
Stopped.
Start MicroK8s using:

# microk8s.start
Started.
Removing MicroK8s
If you wish to completely remove MicroK8s, first stop all running pods.

microk8s.reset
Then remove MicroK8s snap.

snap remove microk8s

Comments