How to install Minikube in Ubuntu 20.04

Today is a raining day in the cost zone in the Argentine South.

Talking with some friends in India, appeared some doubts about some questions in a CKA revision meeting to pass the CKA certification.

The idea was to test some labs to answer some questions about the deployments of the applications and HA. But the lab of my dear friend Askay was only one node with minkube.

So I remembered a tweet from Carlos Santana that an I read a few weeks ago and the result was to deploy a new node with minikube using minikube commands.

The first step was reproducing the same scenario, so I decided to install minikube on my laptop and share with you a brief explanation:

Installing Minikube for ubuntu 20.04

Download the minikube, please.

wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

Now, copied the files and given some necessary permissions:

sudo cp minikube-linux-amd64 /usr/local/bin/minikube
sudo chmod 755 /usr/local/bin/minikube
minikube version

After obtaining our minikube software, remember to check if you have VirtualBox or KVM on your machine. If you prefer Windows, It’s necessary to activate Hyper-V.

It’s important to know that this is a review of the problem of my friend and I who was step by step through your installation and startup as he did.

Startup the minikube cluster

Now, when we tried the Carlos’s recommendation, this solution did not found.
Let’s go and see what happened.

Minikube start

juanandres@prometheus:~$ minikube start
😄  minikube v1.25.1 on Ubuntu 20.04
✨  Automatically selected the virtualbox driver
💿  Downloading VM boot image ...
    > minikube-v1.25.0.iso.sha256: 65 B / 65 B [-------------] 100.00% ? p/s 0s
    > minikube-v1.25.0.iso: 226.25 MiB / 226.25 MiB  100.00% 2.78 MiB p/s 1m22s
👍  Starting control plane node minikube in cluster minikube
💾  Downloading Kubernetes v1.23.1 preload ...
    > preloaded-images-k8s-v16-v1...: 504.42 MiB / 504.42 MiB  100.00% 2.96 MiB
🔥  Creating virtualbox VM (CPUs=2, Memory=2900MB, Disk=20000MB) ...
🐳  Preparing Kubernetes v1.23.1 on Docker 20.10.12 ...
    ▪ kubelet.housekeeping-interval=5m
    ▪ Generating certificates and keys ...
    ▪ Booting up control plane ...
    ▪ Configuring RBAC rules ...
🔎  Verifying Kubernetes components...
    ▪ Using image gcr.io/k8s-minikube/storage-provisioner:v5
🌟  Enabled addons: default-storageclass, storage-provisioner
🏄  Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default

Run kubectl command and check nodes and pods running:

❯ kubectl get nodes                                                                                                                                                                         
NAME       STATUS   ROLES                  AGE   VERSION
minikube   Ready    control-plane,master   18m   v1.23.1

❯ kubectl get ns                                                                                                                                                                            
NAME              STATUS   AGE
default           Active   18m
kube-node-lease   Active   18m
kube-public       Active   18m
kube-system       Active   18m

Attach new node on minikube

At this moment , we decide to attach the new node with the :

minikube add node 

See below please, to review the implemented command:

juanandres@prometheus:~$ minikube node add
😄  Adding node m02 to cluster minikube
❗  Cluster was created without any CNI, adding a node to it might cause broken networking.
👍  Starting worker node minikube-m02 in cluster minikube
🔥  Creating virtualbox VM (CPUs=2, Memory=2200MB, Disk=20000MB) ...
🐳  Preparing Kubernetes v1.23.1 on Docker 20.10.12 ...
🔎  Verifying Kubernetes components...
🏄  Successfully added m02 to minikube!

Check the new node

With kubectl commands we can check the new worker instance running fine:

❯ kubectl get nodes 
                                                                                                                                                                        
NAME           STATUS   ROLES                  AGE   VERSION
minikube       Ready    control-plane,master   20m   v1.23.1
minikube-m02   Ready    <none>                 41s   v1.23.1

Remember, Askay did start a minikube with one node, so was necessary only add a new node. If my friend did not start the service, the correct choice was this one:

minikube start --nodes=2 --cpus=2 --memory=2g

Have a nice week and enjoy your Kubernets mini lab!

How to install Anaconda in fedora 33

Hi Frends ! Many time transcurred from the last post and I’m here again and some news.

Anaconda Navigator

Yeah, and many things such as «Oracle Company Close my Facebook fan page» because I had a great community of friends from all world, shared knowledge and friendly solutions.

Obviously, at the «oracle style», without previous notification and a legal letter.

Today, I start with a list of many pendants, that we shared in my old community.

As How to migrate Oracle database to Postgres, solutions, tools about Kubernetes , docker or Terraforms plans, AWS, terragrount, openshift, many lots of tools and examples, troubleshooting and more about those technologies.

Today I start with, how to install Anaconda in Linux to start with building some solutions such as creating dashboards, analysing information and some work from each day as big data analytics.

Installing Anaconda

You could choose to install it on some platforms such as windows, mac and Linux.

On this, I will explain the process to install in Linux fedora, but is the same process to install on other Linux distributions.

Seguir leyendo «How to install Anaconda in fedora 33»

How to move online tablespace in Oracle 19c

A few days ago, when the team performed some application deployment tasks, we noticed that the different schemas created in the datafiles, which belong to a TBS, were created at the destination of the CDB or PDBs.

We start with the first task of verifying that the db_create_file_dest parameter was configured.

This parameter which differs in container paths from PDB is the one that guarantees that, through the OMF utility, the datafiles are created in the correct paths.

A demo was made, to understand the problem with developers, DevOps and dbas.
So that the importance of setting these values and the impact of not having their configuration is understood.

Likewise, we proceeded to move the data files, from the wrong paths to the correct paths where the data files should be created.

Hands-on

Check and configure the db_create_file_dest.

Check the default configuration

show parameter db_create_file_dest
SQL> show parameter db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string
SQL>

It’s empty.

Set the configuration for Container Database (CDB)

ALTER SYSTEM SET db_create_file_dest='/opt/oracle/oradata/ORCLCDB';
Seguir leyendo «How to move online tablespace in Oracle 19c»

How to find Hidden Parameters in Oracle

The oracle database has hundreds of hidden parameters, and a lot of those parameters are not documented.

Knowing about those parameters is important for dbas involved in database migrations and upgrades.

Many parameters have a high-performance improvement on different systems.

Here, I share how to query and change the oracle hidden parameters.

Query to find hidden parameters in oracle 12c , 18c and 19c

 set line 150
 col PARAMETER format a30
 col DESCRIPTION format a60
 col SESSION_VALUE format a10
 col INSTANCE_VALUE format a10
 spool HIDDEN_parameter_database.log


 SELECT a.ksppinm AS parameter,
        a.ksppdesc AS description,
        b.ksppstvl AS session_value,
        c.ksppstvl AS instance_value
 FROM   x$ksppi a,
        x$ksppcv b,
        x$ksppsv c
 WHERE  a.indx = b.indx
 AND    a.indx = c.indx
 AND    a.ksppinm LIKE '/_%' ESCAPE '/'
 ORDER BY a.ksppinm;

spool off

Now, after we save this list, is possible that we need to start with a pontificated change.

Hidden ParameHow can I set the value of a hidden parameter?

alter system set "_report_capture_cycle_time"=0 scope=spfile sid='*';

Remember, the importance that these parameters must be recommendations of the oracle support, because it can change the behavior of the engine and can leave us in the situation of not having support.

How to identified issues with ADRCI

In oracle 19 the previously version ADRCI (Automatic Diagnostic Repository Command Interpreter) is a great tool to solve issues and deal with Oracle Errors and Trace files

We could verify in the alert the oracle error :

Here, we will review quickly and easily and introduction to know the most basic commands to start.

I will start, as common with an alert log file:

tail -f /u01/app/oracle/diag/rdbms/orcl/ORCL/trace/alert_ORCL.log
Alert log evidence

For years, Oracle has provided us with the possibility of reviewing in the alert log, the most critical movements such as the behaviour of database engine processes.

Hands-on

Now, we start how to ADRCI we help us to understand our issue.

oracle@DSORA02:~/JuanAndresMercado $ adrci

Seguir leyendo «How to identified issues with ADRCI»

How to Start , Stop and Restart database easy in Oracle 19.

Hello friends, here again.

It’s a minimal post to share this option to start, stop and restart the oracle databases as Linux services.

If you remember in my last article oracle installation, we used the file oracledb_ORCLCDB-19c to configure and install the databases and containers, we will use the same script as the operating system service.

We must run this script as a root user ever because will appear error as follow:

You must be root user to run the configurations script. Login as root user and try again.
Seguir leyendo «How to Start , Stop and Restart database easy in Oracle 19.»

Delete archivelog until time

Many, but many times people have problems with the archive logs. And call our team to save you…. The FRA is full.

So… we discovered that they did not take policies and controls about the databases when they have 100 o more databases to admin.

Here… the script to clean… but remember… this is not the solution.

The solution is planning and automatization. Happy delete!

All:

delete archivelog all;

The Last Day:

delete archivelog until time 'SYSDATE-1';

Specific Sequence or Between Sequence:

delete archivelog until sequence 456;

delete archivelog from sequence 456 until sequence 1000;

Specific Time:

delete archivelog until time "to_date('SEP 21 2018 20:00:00','Mon DD YYYY HH24:MI:SS')";