{"id":67,"date":"2015-06-28T13:10:00","date_gmt":"2015-06-28T16:10:00","guid":{"rendered":"http:\/\/maxoracle.com\/2015\/06\/28\/flex-asm\/"},"modified":"2015-06-28T13:10:00","modified_gmt":"2015-06-28T16:10:00","slug":"flex-asm","status":"publish","type":"post","link":"https:\/\/www.soudba.com.br\/?p=67","title":{"rendered":"Flex ASM"},"content":{"rendered":"<p>Um dos problemas que temos ao utilizar o ASM e que, nas versoes anteriores a versao 12c, temos que instalar a instancia ASM em cada local onde sera consumido dos diskgroups.<br \/>\nTemos entao o Flex ASM e para a clusterizacao temos que utilizar o Flex Clusters.<br \/>\nCaracteristicas:<br \/>\nFlex ASM nao requer Flex Cluster<br \/>\nFlex ASM roda como um servico para cluster padrao para atender clientes atraves do cluster.<br \/>\nFlex ASM pode rodar como um hub de conexao para atender aos servicos de Flex Cluster atraves de nos de HUBs de Flex Cluster.<br \/>\nO Flex ASM tem menor gastos de recursos ja que o mesmo nao precisa da instancia ASM<br \/>\nFlex ASM introduz uma nova rede para que os clientes e as instancias ASM possam se comunicar nessa rede<br \/>\nComo ocorre a conexao:<br \/>\nCada servidor contendo o banco de dados oracle ira configurar o local_listener apontando para o listener existente no servidor que roda a instancia ASM com seu devido Listener, sendo que o parametro local_listener do banco pode ser configurado para ate 3 listener.<\/p>\n<div style=\"clear:both;text-align:center;\"><a style=\"margin-left:1em;margin-right:1em;\" href=\"http:\/\/168.138.141.47\/wp-content\/uploads\/2018\/09\/asm_flex1.jpg\"><img fetchpriority=\"high\" decoding=\"async\" src=\"http:\/\/www.soudba.com.br\/wp-content\/uploads\/2015\/06\/ASM_FLEX1-300x156.jpg\" width=\"640\" height=\"331\" border=\"0\" \/><\/a><\/div>\n<div style=\"clear:both;text-align:center;\"><\/div>\n<div style=\"clear:both;text-align:center;\"><\/div>\n<div style=\"clear:both;text-align:left;\">As instancias ASM sao desenvolvidas para que tenhamos o minimo de monitoramento o possivel. Portanto sempre que possivel a recomentacao e utilizar o parametro memory_target. O calculo e feito na hora da criacao da instancia ASM baseando-se no numero de cores dos processadores e a quantidade de memoria disponivel. Atualmente o valor minimo e de 1076M para o memory_target.<\/div>\n<div style=\"clear:both;text-align:left;\"><\/div>\n<div style=\"clear:both;text-align:left;\">Gerenciamento<\/div>\n<div style=\"clear:both;text-align:left;\"><\/div>\n<div style=\"clear:both;text-align:left;\"><\/div>\n<div title=\"Page 88\">\n<div style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);\">\n<div>\n<div>\n<pre><span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">$ srvctl status asm -detail\n<\/span><\/pre>\n<p><span style=\"font-family:'Courier';font-size:11pt;\">ASM is running on host03,host02,host01 ASM is enabled.<br \/>\n<\/span><span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">$ srvctl stop asm -node host03 -f<br \/>\n$ srvctl start asm -node host04 <\/span><\/p>\n<pre><span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">$ srvctl status asm -detail\n<\/span><\/pre>\n<p><span style=\"font-family:'Courier';font-size:11pt;\">ASM is running on host04,host02,host01<br \/>\nASM is enabled.<br \/>\n<\/span><span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">$ srvctl relocate asm -currentnode host04 -targetnode host03 $ srvctl status asm -detail<br \/>\n<\/span><span style=\"font-family:'Courier';font-size:11pt;\">ASM is running on host03,host02,host01<br \/>\nASM is enabled.\u00a0<\/span>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div title=\"Page 88\">\n<div style=\"background-color:rgb(100.000000%,100.000000%,100.000000%);\">\n<div>\n<div><span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">$ srvctl stop asm -proxy -node host03\u00a0<\/span><br \/>\n<span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">$ srvctl start asm -proxy -node host04<\/span><br \/>\n<span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\"><br \/>\n<\/span><span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\">Cardinalidade<\/span><br \/>\n<span style=\"font-family:'Courier';font-size:11pt;font-weight:bold;\"><br \/>\n<\/span><span style=\"font-family:Courier;\"><span style=\"font-size:14.666666984558px;\">A cardinalidade para as instancias ASM, informa qual e a quantidade de instancias ASM servindo o cluster ASM.<\/span><\/span><br \/>\n<span style=\"font-family:Courier;\"><span style=\"font-size:14.666666984558px;\"><br \/>\n<\/span><\/span><\/p>\n<div title=\"Page 89\">\n<div>\n<div>\n<div><span style=\"font-family:'Courier';font-size:12pt;\">$ srvctl config asm<br \/>\nASM home: \/u01\/app\/12.1.0\/grid <\/span><br \/>\n<span style=\"font-family:'Courier';font-size:12pt;\">Password file: +DATA\/orapwASM<br \/>\nASM listener: LISTENER<br \/>\n<\/span><span style=\"font-family:'Courier';font-size:12pt;font-weight:bold;\">ASM instance count: 3<br \/>\n<\/span><span style=\"font-family:'Courier';font-size:12pt;\">Cluster ASM listener: ASMNET1LSNR_ASM<\/span><br \/>\n<span style=\"font-family:'Courier';font-size:12pt;\"><br \/>\n<\/span><span style=\"font-family:'Courier';font-size:12pt;\">Para consultar quais sao os clientes que estao consumindo as instancias, utilizamos a gv$asm_client.<\/span><br \/>\n<span style=\"font-family:'Courier';font-size:12pt;\"><br \/>\n<\/span><span style=\"font-family:'Courier';font-size:12pt;\">Para visualizar quais instancias estao fazendo o atendimento, faca a consulta abaixo:<\/span><br \/>\n<span style=\"font-family:'Courier';font-size:12pt;\"><br \/>\n<\/span><\/p>\n<div style=\"clear:both;text-align:center;\"><a style=\"margin-left:1em;margin-right:1em;\" href=\"http:\/\/168.138.141.47\/wp-content\/uploads\/2018\/09\/asm_flex2.png\"><img decoding=\"async\" src=\"http:\/\/www.soudba.com.br\/wp-content\/uploads\/2015\/06\/ASM_FLEX2-300x177.png\" width=\"640\" height=\"376\" border=\"0\" \/><\/a><\/div>\n<p>&nbsp;\n<\/p><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><span style=\"font-family:Courier;\"><span style=\"font-size:14.666666984558px;\">Os clientes podem ser realocados, isso ja ocorre automaticamente caso a instancia ASM falhe. Mas atraves do novo comando abaixo, podemos realocar o cliente. Geralmente voce executa este comando para tentar realocar os clientes para outra instancia ASM.<\/span><\/span><br \/>\n<span style=\"font-family:Courier;\"><span style=\"font-size:14.666666984558px;\"><br \/>\n<\/span><\/span><\/p>\n<div title=\"Page 91\">\n<div>\n<div>\n<div>\n<span style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);font-family:'Courier';font-size:10pt;font-weight:bold;\">SQL&gt; ALTER SYSTEM RELOCATE CLIENT &#8216;<\/span><span style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);font-family:'Courier';font-size:10pt;font-style:oblique;font-weight:bold;\">&lt;instance_name&gt;:<\/span><span style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);font-family:'Courier';font-size:10pt;font-weight:bold;\">&lt;db_name<\/span><span style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);font-family:'Courier';font-size:10pt;font-style:oblique;font-weight:bold;\">&gt;<\/span><span style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);font-family:'Courier';font-size:10pt;font-weight:bold;\">&#8216;;<\/span><br \/>\nO cliente sera desconectado e provavelmente ao se conectar novamente, ira se conectar na instancia ASM que ja estava conectado. Para evitar que isso ocorra, derrube a instancia ASM logo apos realocar todos clientes.<\/p>\n<div style=\"clear:both;text-align:center;\"><a style=\"margin-left:1em;margin-right:1em;\" href=\"http:\/\/168.138.141.47\/wp-content\/uploads\/2018\/09\/asm_flex3.jpg\"><img decoding=\"async\" src=\"http:\/\/www.soudba.com.br\/wp-content\/uploads\/2015\/06\/ASM_FLEX3-300x212.jpg\" width=\"640\" height=\"450\" border=\"0\" \/><\/a><\/div>\n<p>Quando os discos estao entregues para serem consumidos pelos diskgroups temos os seguintes status:<br \/>\nCANDIDATE &#8211; Disco recentemente criado, este disco nunca foi usado ainda.<br \/>\nFORMER &#8211; Disco que ja foi usado e removido do diskgroup, esta disponivel novamente para uso.<br \/>\nPROVISIONED &#8211; E similar ao candidate exceto porque o provisionado ainda necessita alguma acao por parte do administrador para disponibilizar este disco.<br \/>\nPara criar um diskgroup siga o exemplo:<br \/>\n&nbsp;<\/p>\n<div title=\"Page 107\">\n<div style=\"background-color:rgb(0.000000%,0.000000%,0.000000%);\">\n<div>\n<div>\n<span style=\"font-family:'Courier';font-size:11pt;\">CREATE DISKGROUP FRA NORMAL REDUNDANCY<br \/>\nDISK &#8216;ORCL:SDD11&#8217; NAME &#8216;FRA_DISK1&#8217; SIZE 977 M, &#8216;ORCL:SDD12&#8217; NAME &#8216;FRA_DISK2&#8217; SIZE 977 M;<\/span>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>Cada diskgroup criado, mesmo que nao contenha a clausula failure group, cada disco pertencendo a um diskgroup com redundancia normal ou redundancia high, \u00a0cada disco contem uma redundancia, ou seja se eu tiver 10 discos em um diskgroup vamos ter automaticamente 10 failgroups.<br \/>\nRedundancia<br \/>\nNORMAL &#8211; requer no minimo dois failure groups. No exemplo de criacao acima sao dois failure groups criados. Permite a falha de um failure group. Controlfiles armazenados neste tipo de diskgroup espelhado 3 vezes.<br \/>\nHIGH REDUNDANCY &#8211; requer a existencia de tres grupos de falha. Tolerante a perda de dois grupos de falhas.<br \/>\nEXTERNAL REDUNDANCY &#8211; nao tolera falhas, necessita redundancia externa.\n<\/p><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Um dos problemas que temos ao utilizar o ASM e que, nas versoes anteriores a versao 12c, temos que instalar a instancia ASM em cada local onde sera consumido dos diskgroups. Temos entao o Flex ASM e para a clusterizacao &hellip; <a href=\"https:\/\/www.soudba.com.br\/?p=67\">Continue lendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-67","post","type-post","status-publish","format-standard","hentry","category-sem-categoria"],"_links":{"self":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/posts\/67","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=67"}],"version-history":[{"count":0,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=\/wp\/v2\/posts\/67\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=67"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=67"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.soudba.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=67"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}