Skip to content

Instantly share code, notes, and snippets.

@max6cn
Last active November 3, 2017 00:49
Show Gist options
  • Save max6cn/7ae4b150cf7293c86cbfc9fe530855fe to your computer and use it in GitHub Desktop.
Save max6cn/7ae4b150cf7293c86cbfc9fe530855fe to your computer and use it in GitHub Desktop.
Fabric8 Installation

Pre-requisites

Verify nip.io DNS service works

$ host 192.168.99.100.nip.io
192.168.99.100.nip.io has address 192.168.99.100

If ip not resolved, then use google DNS IP.

MiniKube

Create Cluster

$ minikube start --vm-driver=kvm --disk-size=60g --memory=8192
Starting local Kubernetes v1.8.0 cluster...
Starting VM...
Downloading Minikube ISO
 140.01 MB / 140.01 MB [============================================] 100.00% 0s
Setting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
Kubectl is now configured to use the cluster.

Check Kube Status

$ kubectl cluster-info 
Kubernetes master is running at https://192.168.42.36:8443

To further debug and diagnose cluster problems:

$ kubectl cluster-info dump
...

Useful commands to debug minikube

  • Show IP

      $ minikube ip
      192.168.42.36
    
  • Enable ingress

      $ minikube addons enable ingress
      ingress was successfully enabled
    
  • Get Docker enviroment

      $ minikube docker-env
    
  • Open Dashboard in browser

      $ minikube dashboard
    
  • Check Pod Status

      kubectl get pods -n default
    

## oc cluster (Optional)

1. Install [Docker for Mac](https://docs.docker.com/docker-for-mac/) making sure you meet the [prerequisites](https://docs.docker.com/docker-for-mac/#/what-to-know-before-you-install).
2. Once Docker is running, add an insecure registry of `172.30.0.0/16`:
   - From the Docker menu in the toolbar, select `Preferences...`
   - Click on `Daemon` in the preferences dialog (note: on some older versions of Docker for Mac this is under `Advanced`)
   - Under `Insecure registries:`, click on the `+` icon to add a new entry
   - Enter `172.30.0.0/16` and press `return`
   - Click on `Apply and Restart`
3. Install `socat`
   - If not already installed, install [Homebrew for Mac](http://brew.sh/)
   - Install socat
     Open Terminal and run:
     ```
     $ brew install socat
     ```
2. Install the oc binary using homebrew with: `brew install openshift-cli`

   OR

   Download the Mac OS `oc` binary from [openshift-origin-client-tools-VERSION-mac.zip](https://github.com/openshift/origin/releases) and place it in your path.

   > Please be aware that the 'oc cluster' set of commands are only available in the 1.3+ or newer releases.

3. Open Terminal and run

$ oc cluster up Starting OpenShift using openshift/origin:v3.6.1 ... Pulling image openshift/origin:v3.6.1 Pulled 1/4 layers, 26% complete Pulled 1/4 layers, 44% complete Pulled 1/4 layers, 63% complete Pulled 1/4 layers, 82% complete Pulled 2/4 layers, 86% complete Pulled 3/4 layers, 91% complete Pulled 4/4 layers, 100% complete Extracting Image pull complete OpenShift server started.

The server is accessible via web console at: https://127.0.0.1:8443

You are logged in as: User: developer Password:

To login as administrator:

oc login -u system:admin

To stop your cluster, run:

$ oc cluster down

gofabric8 console -n fabric8

mark@ubuntu  ~/Projects/ess-spring-test  gofabric8 deploy --package system -n fabric8
            ▄▄▄▄▄▄▄         
            ███████         
    ▄▄▄▄▄▄▄ ▄▄▄▄▄▄█         
    ███████ ▀▀▀▀▀▀▀ ▄▄▄▄▄▄  
    ▄▄▄▄▄▄▄         ██████  
  ▄▄▄▄▄             ▄▄▄▄▄▄  
  ▀▄▄▄▄▄      ▄▄▄       ▄▄▄ 
   ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄   ▄▄▄▄▄▀
     ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█▄▄▀ 
       ▀▀▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▀   
         ▄█▄▄▄█▄▄▄█▄▄▄      
         ▄█▄▄▄▄▄▄▄▄▄▄▄      
          ▄▄█▄▄▄▄▄▄▄▄       
           ▄▄▄▄▀▀▄█▄        
        ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄     
        ▀▀▀▀▀▀▀▀▀▀▀▀▀▀      
Deploying fabric8 to your Kubernetes installation at https://192.168.42.36:8443 for domain  in namespace fabric8

Loading fabric8 releases from maven repository:https://repo1.maven.org/maven2/
Continue? [Y/n] 
Creating new Namespace: fabric8
Kubernetes server version is: 1.8

Waiting for the default storageclass
Deploying package: system version: 4.0.208

Template APISERVER_HOSTPORT = 192.168.42.36:8443
Template NODE_IP = 192.168.42.36
Template EXPOSER = Ingress
Template DOMAIN = 192.168.42.36.nip.io
Template GITHUB_OAUTH_CLIENT_SECRET = c60af0c3374743605383e299cf3529103f88a3df
Template GITHUB_OAUTH_CLIENT_ID = d32633d8b234fda53ccf
Template HTTP = true
Template TLS_ACME = false
Template APISERVER = 192.168.42.36
Template OAUTH_AUTHORIZE_PORT = 8443
Template RECOMMENDER_API_TOKEN = 
Template NAMESPACE = fabric8
Creating system template resources in namespace fabric8 from 53 objects
Processing resource kind: Secret in namespace fabric8 name auth
Processing resource kind: Secret in namespace fabric8 name f8tenant
Processing resource kind: Secret in namespace fabric8 name keycloak
Processing resource kind: Secret in namespace fabric8 name wit
Processing resource kind: ServiceAccount in namespace fabric8 name configmapcontroller
Processing resource kind: ServiceAccount in namespace fabric8 name exposecontroller
Processing resource kind: ServiceAccount in namespace fabric8 name init-tenant
Processing resource kind: Service in namespace fabric8 name api
Processing resource kind: Service in namespace fabric8 name auth
Processing resource kind: Service in namespace fabric8 name auth-db
Processing resource kind: Service in namespace fabric8 name che-starter
Processing resource kind: Service in namespace fabric8 name f8tenant
Processing resource kind: Service in namespace fabric8 name fabric8
Processing resource kind: Service in namespace fabric8 name fabric8-docker-registry
Processing resource kind: Service in namespace fabric8 name forge
Processing resource kind: Service in namespace fabric8 name init-tenant-db
Processing resource kind: Service in namespace fabric8 name keycloak
Processing resource kind: Service in namespace fabric8 name keycloak-db
Processing resource kind: Service in namespace fabric8 name sso
Processing resource kind: Service in namespace fabric8 name wit
Processing resource kind: Service in namespace fabric8 name wit-db
Processing resource kind: PersistentVolumeClaim in namespace fabric8 name auth-db-postgresql-data
Processing resource kind: PersistentVolumeClaim in namespace fabric8 name fabric8-docker-registry-storage
Processing resource kind: PersistentVolumeClaim in namespace fabric8 name init-tenant-postgresql-data
Processing resource kind: PersistentVolumeClaim in namespace fabric8 name keycloak-db-postgresql-data
Processing resource kind: PersistentVolumeClaim in namespace fabric8 name wit-postgresql-data
Processing resource kind: ConfigMap in namespace fabric8 name auth
Processing resource kind: ConfigMap in namespace fabric8 name che-starter
Processing resource kind: ConfigMap in namespace fabric8 name exposecontroller
Processing resource kind: ConfigMap in namespace fabric8 name f8tenant
Processing resource kind: ConfigMap in namespace fabric8 name fabric8
Processing resource kind: ConfigMap in namespace fabric8 name fabric8-system
Processing resource kind: ConfigMap in namespace fabric8 name forge
Processing resource kind: ConfigMap in namespace fabric8 name keycloak
Processing resource kind: ConfigMap in namespace fabric8 name sso
Processing resource kind: ConfigMap in namespace fabric8 name wit
Processing resource kind: CustomResourceDefinition in namespace fabric8 name buildconfigs.build.openshift.io
Processing resource kind: CustomResourceDefinition in namespace fabric8 name builds.build.openshift.io
Processing resource kind: CustomResourceDefinition in namespace fabric8 name templates.template.openshift.io
Processing resource kind: Deployment in namespace fabric8 name auth
Processing resource kind: Deployment in namespace fabric8 name auth-db
Processing resource kind: Deployment in namespace fabric8 name che-starter
Processing resource kind: Deployment in namespace fabric8 name configmapcontroller
Processing resource kind: Deployment in namespace fabric8 name docker-registry
Processing resource kind: Deployment in namespace fabric8 name exposecontroller
Processing resource kind: Deployment in namespace fabric8 name fabric8
Processing resource kind: Deployment in namespace fabric8 name forge
Processing resource kind: Deployment in namespace fabric8 name init-tenant
Processing resource kind: Deployment in namespace fabric8 name init-tenant-db
Processing resource kind: Deployment in namespace fabric8 name keycloak
Processing resource kind: Deployment in namespace fabric8 name keycloak-db
Processing resource kind: Deployment in namespace fabric8 name wit
Processing resource kind: Deployment in namespace fabric8 name wit-db
system........................................................................✔ 
If this your first deployment then it may take a while to download the docker images, please be patient.
To track progress run the following command in a new terminal session:
watch kubectl get pods -n fabric8
..........
Please make sure your github OAuth Application Client ID: d32633d8b234fda53ccf points to the
Authorization callback URL: http://keycloak.fabric8.192.168.42.36.nip.io/auth/realms/fabric8/broker/github/endpoint

.................Waiting, endpoint for service is not ready yet...
Waiting, endpoint for service is not ready yet...
Waiting, endpoint for service is not ready yet...

Opening URL http://fabric8.fabric8.192.168.42.36.nip.io

@max6cn
Copy link
Author

max6cn commented Oct 29, 2017

gofabric8 deploy --package system --http=true --legacy=false -n fabric8

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment